diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..13566b81b018ad684f3a35fee301741b2734c8f4 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/antragraum-proxy.iml b/.idea/antragraum-proxy.iml new file mode 100644 index 0000000000000000000000000000000000000000..d6ebd4805981b8400db3e3291c74a743fef9a824 --- /dev/null +++ b/.idea/antragraum-proxy.iml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<module type="JAVA_MODULE" version="4"> + <component name="NewModuleRootManager" inherit-compiler-output="true"> + <exclude-output /> + <content url="file://$MODULE_DIR$" /> + <orderEntry type="inheritedJdk" /> + <orderEntry type="sourceFolder" forTests="false" /> + </component> +</module> \ No newline at end of file diff --git a/.idea/copyright/Eupl1_2.xml b/.idea/copyright/Eupl1_2.xml new file mode 100644 index 0000000000000000000000000000000000000000..a6ac5451d15827c36038351f24b7d1d6ad33102d --- /dev/null +++ b/.idea/copyright/Eupl1_2.xml @@ -0,0 +1,6 @@ +<component name="CopyrightManager"> + <copyright> + <option name="notice" value="Copyright (c) &#36;originalComment.match("Copyright \(c\) (\d+)", 1, "-", "&#36;today.year")&#36;today.year. Lizenziert unter der EUPL, Version 1.2 oder - sobald diese von der Europäischen Kommission genehmigt wurden - Folgeversionen der EUPL ("Lizenz"); Sie dürfen dieses Werk ausschließlich gemäß dieser Lizenz nutzen. Eine Kopie der Lizenz finden Sie hier: https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 Sofern nicht durch anwendbare Rechtsvorschriften gefordert oder in schriftlicher Form vereinbart, wird die unter der Lizenz verbreitete Software "so wie sie ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - ausdrücklich oder stillschweigend - verbreitet. Die sprachspezifischen Genehmigungen und Beschränkungen unter der Lizenz sind dem Lizenztext zu entnehmen. " /> + <option name="myName" value="Eupl1.2" /> + </copyright> +</component> \ No newline at end of file diff --git a/.idea/copyright/profiles_settings.xml b/.idea/copyright/profiles_settings.xml new file mode 100644 index 0000000000000000000000000000000000000000..4c8996918f5c5ce3236fb74f10a56f1ba8bf84fa --- /dev/null +++ b/.idea/copyright/profiles_settings.xml @@ -0,0 +1,7 @@ +<component name="CopyrightManager"> + <settings> + <module2copyright> + <element module="Project Files" copyright="Eupl1.2" /> + </module2copyright> + </settings> +</component> \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000000000000000000000000000000000000..d8fa43a0712d2d0440630662bcd6c53bf22faa9f --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="FormatOnSaveOptions"> + <option name="myRunOnSave" value="true" /> + </component> + <component name="OptimizeOnSaveOptions"> + <option name="myRunOnSave" value="true" /> + </component> + <component name="ProjectInspectionProfilesVisibleTreeState"> + <entry key="Project Default"> + <profile-state> + <expanded-state> + <State /> + </expanded-state> + <selected-state> + <State> + <id>Angular</id> + </State> + </selected-state> + </profile-state> + </entry> + </component> + <component name="ProjectRootManager" version="2" languageLevel="JDK_21" default="true" project-jdk-name="21" project-jdk-type="JavaSDK"> + <output url="file://$PROJECT_DIR$/out" /> + </component> +</project> \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000000000000000000000000000000000000..9730283442093fe6a311c59aa5cad7f3e5e2417e --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="ProjectModuleManager"> + <modules> + <module fileurl="file://$PROJECT_DIR$/.idea/antragraum-proxy.iml" filepath="$PROJECT_DIR$/.idea/antragraum-proxy.iml" /> + </modules> + </component> +</project> \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000000000000000000000000000000000000..35eb1ddfbbc029bcab630581847471d7f238ec53 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="VcsDirectoryMappings"> + <mapping directory="" vcs="Git" /> + </component> +</project> \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..334b6d42e77781ba2a56fc998010c432ce29c33b --- /dev/null +++ b/Dockerfile @@ -0,0 +1,7 @@ + +FROM scratch + +WORKDIR / +COPY main / +ADD config /config +CMD ["/main"] \ No newline at end of file diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000000000000000000000000000000000000..267253895348d82fd90742da6e79e145bb5b05fc --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,336 @@ +pipeline { + agent { + node { + label 'ozgcloud-jenkins-build-agent' + } + } + +tools { go 'go-1.22.0' } + environment { + RELEASE_REGEX = /v\d+.\d+.\d+/ + BETA_REGEX = /v\d+.\d+.\d+-beta.\d/ + FAILED_STAGE = "" + SH_SUCCESS_STATUS_CODE = 0 + } + + options { + timeout(time: 1, unit: 'HOURS') + disableConcurrentBuilds() + buildDiscarder(logRotator(numToKeepStr: '5')) + } + + stages { + stage('Get and Check Version') { + steps { + script { + FAILED_STAGE = env.STAGE_NAME + + // Read the file content + def fileContent = readFile('cmd/antragstraum-proxy/main.go') + + // Define the regex pattern to match "version= <version>" + def versionPattern = /var version = \"(.*?)\"/ + + // Find the line that matches the pattern + def matcher = fileContent =~ versionPattern + if (matcher.find()) { + env.APP_VERSION = matcher[0][1].trim() + echo "Version found: ${env.APP_VERSION}" + } else { + error("Version not found in main.go") + } + + if(isReleaseBranch()){ + if ( !(env.APP_VERSION ==~ RELEASE_REGEX) ) { + error("Keine Release Version für Branch ${env.BRANCH_NAME}.") + } + } else { + if ( !(env.APP_VERSION ==~ BETA_REGEX) ) { + error("Keine Beta Version für Branch ${env.BRANCH_NAME}.") + } + } + } + } + } + + stage('Build Antragsraum-Proxy') { + steps { + script { + FAILED_STAGE=env.STAGE_NAME + + sh ''' + #export GOPATH so that installed dependencies could be found + export GOPATH=$GOROOT + + go mod download + go install \ + github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway \ + github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2 \ + google.golang.org/protobuf/cmd/protoc-gen-go \ + google.golang.org/grpc/cmd/protoc-gen-go-grpc + ''' + + sh ''' + curl -sSL "https://github.com/bufbuild/buf/releases/download/v1.34.0/buf-$(uname -s)-$(uname -m)" -o ./buf + chmod +x ./buf + ./buf generate + #to compile go statically with these tags, so that the binary is not dynamically linked and from scratch in Dockerfile will work + go build -tags osusergo,netgo cmd/antragsraum-proxy/main.go + + ''' + } + } + } + + stage ('OWASP Dependency-Check Vulnerabilities') { + steps { + dependencyCheck additionalArguments: ''' + -o "./" + -s "./" + -f "ALL" + -d /dependency-check-data + --suppression dependency-check-supressions.xml + --disableKnownExploited + --noupdate + --disableArchive + --prettyPrint''', odcInstallation: 'dependency-check-owasp' + + dependencyCheckPublisher pattern: 'dependency-check-report.xml' + } + } + + stage('Build and publish Docker image') { + steps { + script { + FAILED_STAGE=env.STAGE_NAME + + sh "docker build -t docker.ozg-sh.de/antragsraum-proxy:${env.APP_VERSION} ." + + IMAGE_TAG = generateImageTag() + + tagAndPushDockerImage('antragsraum-proxy', IMAGE_TAG) + + if (env.BRANCH_NAME == 'dev') { + tagAndPushDockerImage('antragsraum-proxy', 'snapshot-latest') + } + else if (env.BRANCH_NAME == 'release') { + tagAndPushDockerImage('antragsraum-proxy', 'latest') + } + } + } + } + + stage('Test, build and deploy Helm Chart') { + steps { + script { + FAILED_STAGE=env.STAGE_NAME + HELM_CHART_VERSION = generateHelmChartVersion() + + dir('src/main/helm') { + sh "helm lint -f ../../test/helm-linter-values.yaml" + + sh "helm unittest -f '../../test/helm/*.yaml' ." + + sh "helm package --version=${HELM_CHART_VERSION} ." + + deployHelmChart(HELM_CHART_VERSION) + } + } + } + } + + stage('Trigger Dev rollout') { + when { + branch 'dev' + } + steps { + script { + FAILED_STAGE = env.STAGE_NAME + + cloneGitopsRepo() + + setNewDevAntragsraumProxyVersion() + + pushDevGitopsRepo() + } + } + } + + stage('Trigger Test rollout') { + when { + branch 'release' + } + steps { + script { + FAILED_STAGE = env.STAGE_NAME + + cloneGitopsRepo() + + setNewTestAntragsraumProxyVersion() + + pushTestGitopsRepo() + } + } + } + } + +} + + +Void deployHelmChart(String helmChartVersion) { + withCredentials([usernamePassword(credentialsId: 'jenkins-nexus-login', usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD')]){ + String fileName = '@antragsraum-proxy-' + helmChartVersion + '.tgz' + result = sh script: '''curl -u $USERNAME:$PASSWORD https://nexus.ozg-sh.de/service/rest/v1/components?repository=''' + getHelmRepository() + ''' -F file=''' + fileName, returnStdout: true + + if (result != '') { + error(result) + } + } +} + +String getHelmRepository(){ + if (isReleaseBranch()) { + return 'ozg-base-apps'; + } + return 'ozg-base-apps-snapshot'; +} + +String generateImageTag() { + return "${env.APP_VERSION}-${env.BRANCH_NAME}" +} + + + +String getBuildProfile() { + if (isDevBranch()) { + return "-P dev" + } else if (isReleaseBranch()) { + return "-P release" + } else { + return "" + } +} + + +Void sendFailureMessage() { + def room = getRoom() + def data = getFailureData() + + sh "curl -XPOST -H 'authorization: Bearer ${getElementAccessToken()}' -d '${data}' https://matrix.ozg-sh.de/_matrix/client/v3/rooms/$room/send/m.room.message" +} + +String getElementAccessToken() { + withCredentials([string(credentialsId: 'element-login-json', variable: 'LOGIN_JSON')]) { + return readJSON ( text: sh (script: '''curl -XPOST -d \"$LOGIN_JSON\" https://matrix.ozg-sh.de/_matrix/client/v3/login''', returnStdout: true)).access_token + } +} + +String getFailureData() { + return """{"msgtype":"m.text", \ + "body":"Antragsraum-Proxy: Build Failed. Stage: ${FAILED_STAGE} Build-ID: ${env.BUILD_NUMBER}", \ + "format": "org.matrix.custom.html", \ + "formatted_body":"Antragsraum-Proxy: Build Failed. Stage: ${FAILED_STAGE} Build-ID: ${env.BUILD_NUMBER}"}""" +} + +String getRoom() { + if (isReleaseBranch()) { + return "!oWZpUGTFsxkJIYNfYg:matrix.ozg-sh.de" + } else { + return "!iQPAvQIiRwRpNOszjw:matrix.ozg-sh.de" + } +} + +Void configureGit() { + def email = "jenkins@ozg-sh.de" + def name = "jenkins" + + dir("gitops") { + sh "git config user.email '${email}'" + sh "git config user.name '${name}'" + } +} + +Void cloneGitopsRepo() { + withCredentials([usernamePassword(credentialsId: 'jenkins-gitea-access-token', passwordVariable: 'TOKEN', usernameVariable: 'USER')]) { + sh 'git clone https://${USER}:${TOKEN}@git.ozg-sh.de/ozgcloud-devops/gitops.git' + } + + configureGit() +} + +Void setNewDevAntragsraumProxyVersion() { + setNewAntragsraumProxyGitopsVersion("dev") +} + +Void setNewTestAntragsraumProxyVersion() { + setNewAntragsraumProxyGitopsVersion("test") +} + +Void setNewAntragsraumProxyGitopsVersion(String environment) { + dir("gitops") { + def envFile = "${environment}/application/values/antragsraum-proxy-values.yaml" + + def envVersions = readYaml file: envFile + + envVersions.antragsraum_proxy.image.tag = IMAGE_TAG + envVersions.antragsraum_proxy.helm.version = HELM_CHART_VERSION + + writeYaml file: envFile, data: envVersions, overwrite: true + } +} + + +Void pushDevGitopsRepo() { + pushNewGitopsVersion('dev') +} + +Void pushTestGitopsRepo() { + pushNewGitopsVersion('test') +} + +Void pushNewGitopsVersion(String environment) { + dir('gitops') { + if (!hasAntragsraumProxyValuesFileChanged(environment)) { + return + } + + withCredentials([usernamePassword(credentialsId: 'jenkins-gitea-access-token', passwordVariable: 'TOKEN', usernameVariable: 'USER')]) { + sh "git add ${environment}/application/values/antragsraum-proxy-values.yaml" + + sh "git commit -m 'jenkins rollout ${environment} antragsraum-proxy version ${IMAGE_TAG}'" + sh 'git push https://${USER}:${TOKEN}@git.ozg-sh.de/ozgcloud-devops/gitops.git' + } + } +} + +Boolean hasAntragsraumProxyValuesFileChanged(String environment) { + return sh (script: "git status | grep '${environment}/application/values/antragsraum-proxy-values.yaml'", returnStatus: true) == env.SH_SUCCESS_STATUS_CODE as Integer +} + +Boolean isDevBranch() { + return env.BRANCH_NAME == 'dev' +} + +Boolean isReleaseBranch() { + return env.BRANCH_NAME == 'release' +} + +String generateHelmChartVersion() { + def chartVersion = "${env.APP_VERSION}" + + if (isDevBranch()) { + chartVersion += "-${env.GIT_COMMIT.take(7)}" + } + else if (!isReleaseBranch()) { + chartVersion += "-${env.BRANCH_NAME}" + } + + return chartVersion.replaceAll("_", "-") +} +Void tagAndPushDockerImage(String imageName, String newTag){ + withCredentials([usernamePassword(credentialsId: 'jenkins-nexus-login', usernameVariable: 'USER', passwordVariable: 'PASSWORD')]) { + sh 'docker login docker.ozg-sh.de -u ${USER} -p ${PASSWORD}' + sh "docker tag docker.ozg-sh.de/${imageName}:${env.APP_VERSION} docker.ozg-sh.de/${imageName}:${newTag}" + sh "docker push docker.ozg-sh.de/${imageName}:${newTag}" + } +} \ No newline at end of file diff --git a/README.md b/README.md index a93272e5f31fd0764d10cd75f78bbebb5ea77056..79d25eb7286225161890b9bfb3a3894fc2f763ea 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,47 @@ -# antragsraum-proxy +# Antragsraum-Proxy -Repository for the REST to gRPC Proxy of the ANtragsraum \ No newline at end of file +## Getting Started + +### Dependencies installieren + +``` +go mod download +``` + +``` +go install \ + github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway \ + github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2 \ + google.golang.org/protobuf/cmd/protoc-gen-go \ + google.golang.org/grpc/cmd/protoc-gen-go-grpc +``` + +### Buf installieren + +https://github.com/bufbuild/buf?tab=readme-ov-file + +### Protobuf-Code generieren + +``` +buf generate +``` + +### Anwendung starten + +``` +go run cmd/antragsraum-proxy/main.go +``` + +## Config + +[Config-Datei](./config/config.yml) + +``` +server: + port: Port des HTTP Servers (int) +grpc: + mock: lokalen gRPC Server mocken (bool) + url: URL des Ziel-gRPC-Servers im host:port Format (string) +logging: + level: "ERROR" | "WARN" | "INFO" | "DEBUG" +``` \ No newline at end of file diff --git a/api/gateway-config.yml b/api/gateway-config.yml new file mode 100644 index 0000000000000000000000000000000000000000..1eeec0d9ea4a06ad2f8803fe5812a225e30b0966 --- /dev/null +++ b/api/gateway-config.yml @@ -0,0 +1,18 @@ +type: google.api.Service +config_version: 3 + +http: + rules: + - selector: de.ozgcloud.nachrichten.antragraum.AntragraumService.GetRueckfrage + get: "/api/rueckfrage/{id}/{samlToken}" + - selector: de.ozgcloud.nachrichten.antragraum.AntragraumService.SendRueckfrageAnswer + post: "/api/antworten" + body: "*" + - selector: de.ozgcloud.nachrichten.antragraum.AntragraumService.FindRueckfragen + get: "/api/rueckfragen/{postfachId}/{samlToken}" + - selector: de.ozgcloud.vorgang.grpc.command.CommandService.GetCommand + get: "/api/command/{id}" + - selector: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.GetBinaryFileContent + get: "/api/filecontent/{fileId}" + - selector: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.FindBinaryFilesMetaData + get: "/api/filemetadata/{fileId}" \ No newline at end of file diff --git a/api/openapi-config.yml b/api/openapi-config.yml new file mode 100644 index 0000000000000000000000000000000000000000..b60cce9b4b71b12f7b29805414f7eed8c7bef75f --- /dev/null +++ b/api/openapi-config.yml @@ -0,0 +1,143 @@ +openapiOptions: + file: + - file: "antragraum.proto" + option: + info: + title: Antragraum Proxy API + license: + name: EUPL 1.2 + url: https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + version: "1.0" + schemes: + - HTTP + - HTTPS + consumes: + - application/json + produces: + - application/json + responses: + "403": + description: Returned when the user does not have permission to access the resource. + "404": + description: Returned when the resource does not exist. + schema: + jsonSchema: + type: + - STRING + - file: "binaryfile.proto" + option: + info: + title: File Proxy API + license: + name: EUPL 1.2 + url: https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + version: "1.0" + schemes: + - HTTP + - HTTPS + responses: + "403": + description: Returned when the user does not have permission to access the resource. + "404": + description: Returned when the resource does not exist. + schema: + jsonSchema: + type: + - STRING + - file: "command.proto" + option: + info: + title: COmmand Proxy API + license: + name: EUPL 1.2 + url: https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + version: "1.0" + schemes: + - HTTP + - HTTPS + responses: + "403": + description: Returned when the user does not have permission to access the resource. + "404": + description: Returned when the resource does not exist. + schema: + jsonSchema: + type: + - STRING + service: + - service: de.ozgcloud.nachrichten.antragraum.AntragraumService + option: + description: "Service to proxy between Antragraum Backend and NachrichtenManager in OZG-Cloud" + - service: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService + option: + description: "Service to proxy between Antragraum Backend and VorgangManager File Api in OZG-Cloud" + - service: de.ozgcloud.vorgang.grpc.command.CommandService + option: + description: "Service to proxy between Antragraum Backend and VorgangManager Command Api in OZG-Cloud" + method: + - method: de.ozgcloud.nachrichten.antragraum.AntragraumService.GetRueckfrage + option: + description: "Get the Rueckfrage by id" + summary: "Summary: GetRueckfrage rpc" + responses: + "200": + description: Returns the Rueckfrage + "503": + description: Returned when the resource is temporarily unavailable. + "404": + description: Returned when the resource does not exist. + - method: de.ozgcloud.nachrichten.antragraum.AntragraumService.SendRueckfrageAnswer + option: + description: "Send a reply to a Rueckfrage" + summary: "Summary: SendRueckfrageAnswer rpc" + responses: + "200": + description: Returns the id of the command created for the send order + "503": + description: Returned when the resource is temporarily unavailable. + "404": + description: Returned when the resource does not exist. + - method: de.ozgcloud.nachrichten.antragraum.AntragraumService.FindRueckfragen + option: + description: "Find all Rueckfragen of a postfach" + summary: "Summary: FindRueckfragen rpc" + responses: + "200": + description: Returns the list of Rueckfragen Headers found. + "503": + description: Returned when the resource is temporarily unavailable. + "404": + description: Returned when the resource does not exist. + - method: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.GetBinaryFileContent + option: + description: "Get the content of a file" + summary: "Summary: GetBinaryFileContent rpc" + responses: + "200": + description: Returns file content as binary stream. + "503": + description: Returned when the resource is temporarily unavailable. + "404": + description: Returned when the resource does not exist. + - method: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.FindBinaryFilesMetaData + option: + description: "Get the metadata of a file" + summary: "Summary: FindBinaryFilesMetaData rpc" + responses: + "200": + description: Returns file metadata as json. + "503": + description: Returned when the resource is temporarily unavailable. + "404": + description: Returned when the resource does not exist. + - method: de.ozgcloud.vorgang.grpc.command.CommandService.GetCommand + option: + description: "Get the command by id" + summary: "Summary: GetCommand rpc" + responses: + "200": + description: Returns command as json. + "503": + description: Returned when the resource is temporarily unavailable. + "404": + description: Returned when the resource does not exist. \ No newline at end of file diff --git a/api/proto/antragraum.model.proto b/api/proto/antragraum.model.proto new file mode 100644 index 0000000000000000000000000000000000000000..a88117f9b4124266b73de2077c0cea5e1fd360a4 --- /dev/null +++ b/api/proto/antragraum.model.proto @@ -0,0 +1,93 @@ +/* + * Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +syntax = "proto3"; + +package de.ozgcloud.nachrichten.antragraum; + +import "postfach.model.proto"; + +option go_package = "de.ozgcloud.nachrichten.antragraum"; + +message GrpcFindRueckfragenRequest { + string samlToken = 1; + string postfachId = 2; +} + +message GrpcFindRueckfragenResponse { + repeated GrpcRueckfrageHead rueckfrageHead = 1; +} + +message GrpcRueckfrageHead { + string id = 1; + string vorgangId = 2; + string vorgangName = 3; + string vorgangNummer = 4; + string sentAt = 5; + string answeredAt = 6; + string status = 7; + string trustLevel = 8; + bool accessible = 9; +} + +message GrpcRueckfrage { + string id = 1; + string vorgangId = 2; + string vorgangName = 3; + string vorgangNummer = 4; + string sentAt = 5; + string answeredAt = 6; + string status = 7; + string trustLevel = 8; + bool accessible = 9; + + string text = 10; + + repeated string attachmentFileId = 11; + repeated GrpcRueckfrageAnswer answers = 12; +} + +message GrpcSendRueckfrageAnswerRequest { + string samlToken = 1; + GrpcRueckfrageAnswer answer = 2; +} + +message GrpcRueckfrageAnswer { + string rueckfrageId = 1; + string answerText = 2; + repeated string attachmentFileId = 3; + string sentAt = 4; +} + +message GrpcSendRueckfrageAnswerResponse { + string commandId = 1; +} + +message GrpcGetRueckfrageRequest { + string samlToken = 1; + string id = 2; +} + +message GrpcGetRueckfrageResponse { + GrpcRueckfrage rueckfrage = 1; +} \ No newline at end of file diff --git a/api/proto/antragraum.proto b/api/proto/antragraum.proto new file mode 100644 index 0000000000000000000000000000000000000000..b23d1877562ad34bc3a71a4f9260f77c0f76a958 --- /dev/null +++ b/api/proto/antragraum.proto @@ -0,0 +1,39 @@ +/* + * Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +syntax = "proto3"; + +package de.ozgcloud.nachrichten.antragraum; + +import "antragraum.model.proto"; +import "command.model.proto"; + +option go_package = "de.ozgcloud.nachrichten.antragraum"; + +service AntragraumService { + rpc FindRueckfragen(GrpcFindRueckfragenRequest) returns (GrpcFindRueckfragenResponse); + + rpc SendRueckfrageAnswer(GrpcSendRueckfrageAnswerRequest) returns (GrpcSendRueckfrageAnswerResponse); + + rpc GetRueckfrage(GrpcGetRueckfrageRequest) returns (GrpcGetRueckfrageResponse); +} \ No newline at end of file diff --git a/api/proto/binaryfile.proto b/api/proto/binaryfile.proto new file mode 100644 index 0000000000000000000000000000000000000000..91cde87ba125abb38a63fbd2c56eafc99b1b551c --- /dev/null +++ b/api/proto/binaryfile.proto @@ -0,0 +1,115 @@ +/* + * Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +syntax = "proto3"; + +package de.ozgcloud.vorgang.grpc.binaryFile; + +import "callcontext.proto"; +import "filemodel.proto"; + +option go_package = "de.ozgcloud.vorgang.grpc.binaryFile"; + +service BinaryFileService { + + rpc UploadBinaryFileAsStream(stream GrpcUploadBinaryFileRequest) returns (GrpcUploadBinaryFileResponse) { + } + + rpc GetBinaryFileContent(GrpcGetBinaryFileDataRequest) returns (stream GrpcGetBinaryFileDataResponse) { + } + + rpc FindBinaryFilesMetaData(GrpcBinaryFilesRequest) returns (GrpcFindFilesResponse) { + } + + rpc GetAttachments(GrpcGetAttachmentsRequest) returns (GrpcGetAttachmentsResponse) { + } + + rpc GetRepresentations(GrpcGetRepresentationsRequest) returns (GrpcGetRepresentationsResponse) { + } +} + +message GrpcBinaryFilesRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + repeated string fileId = 2; +} + +message GrpcFindFilesResponse { + repeated de.ozgcloud.vorgang.grpc.file.GrpcOzgFile file = 1; +} + +message GrpcBinaryFileDataRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string fileId = 2; +} + +message GrpcUploadBinaryFileRequest { + oneof request { + GrpcUploadBinaryFileMetaData metadata = 1; + bytes fileContent = 2; + } +} + +message GrpcUploadBinaryFileMetaData { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string vorgangId = 2; + string field = 3; + string fileName = 4; + string contentType = 5; + int64 size = 6 [deprecated = true]; +} + +message GrpcUploadBinaryFileResponse { + string fileId = 2; +} + +message GrpcGetBinaryFileDataRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string fileId = 2; +} + +message GrpcGetBinaryFileDataResponse { + bytes fileContent = 1; +} + +message GrpcGetAttachmentsRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string eingangId = 2; +} +message GrpcGetAttachmentsResponse { + repeated GrpcBinaryFile file = 1; +} + +message GrpcGetRepresentationsRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string eingangId = 2; +} +message GrpcGetRepresentationsResponse { + repeated GrpcBinaryFile file = 1; +} + +message GrpcBinaryFile { + string id = 1; + string name = 2; + int64 size = 3; + string contentType = 4; +} \ No newline at end of file diff --git a/api/proto/callcontext.proto b/api/proto/callcontext.proto new file mode 100644 index 0000000000000000000000000000000000000000..16bf5063a5ef34f0e28d382ac444130b18e595a2 --- /dev/null +++ b/api/proto/callcontext.proto @@ -0,0 +1,40 @@ +/* + * Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +syntax = "proto3"; + +package de.ozgcloud.vorgang.grpc.command; + +option go_package = "de.ozgcloud.vorgang.grpc.command"; + +message GrpcCallContext { + string client = 1; + GrpcUser user = 2; + string requestId = 3; +} + +message GrpcUser { + string id = 1; + string name = 2; + repeated string roles = 3 [deprecated = true]; +} \ No newline at end of file diff --git a/api/proto/clientattribute.model.proto b/api/proto/clientattribute.model.proto new file mode 100644 index 0000000000000000000000000000000000000000..50ee5d7e2cd3749cd314c452dc49ecc517309c9f --- /dev/null +++ b/api/proto/clientattribute.model.proto @@ -0,0 +1,50 @@ +/* + * Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +syntax = "proto3"; + +package de.ozgcloud.vorgang.grpc.clientAttribute; + +option go_package = "de.ozgcloud.vorgang.grpc.clientAttribute"; + +message GrpcClientAttribute { + string clientName = 1; + string attributeName = 2; + GrpcAccessPermission access = 3; + GrpcClientAttributeValue value = 4; +} + +enum GrpcAccessPermission { + PRIVATE = 0; + READ_ONLY = 1; + READ_WRITE = 2; +} + +message GrpcClientAttributeValue { + oneof value { + string stringValue = 1; + int64 intValue = 2; + double doubleValue = 3; + bool boolValue = 4; + } +} \ No newline at end of file diff --git a/api/proto/command.model.proto b/api/proto/command.model.proto new file mode 100644 index 0000000000000000000000000000000000000000..5ca4bab4c76d477a62cd674ac1d66d95f83a079c --- /dev/null +++ b/api/proto/command.model.proto @@ -0,0 +1,149 @@ +/* + * Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +syntax = "proto3"; + +package de.ozgcloud.vorgang.grpc.command; + +import "callcontext.proto"; +import "common.model.proto"; + +option go_package = "de.ozgcloud.vorgang.grpc.command"; + +message GrpcCreateCommandRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext callContext = 1; + string vorgangId = 2; + string relationId = 4; + int64 relationVersion = 5; + GrpcRedirectRequest redirectRequest = 12; + repeated GrpcCommandBodyField body = 15; + de.ozgcloud.vorgang.common.GrpcObject bodyObj = 17; + string orderString = 21; +} + +message GrpcCommandResponse { + enum GrpcResponseCode { + OK = 0; + PENDING = 1; + ERROR = 2; + CONFLICT = 3; + } + GrpcResponseCode responseCode = 1; + string messageCode = 2; + repeated string messageParameters = 3; + GrpcCommand command = 4; +} + +message GrpcRevokeCommandRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string id = 2; +} + +message GrpcGetCommandRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string id = 2; +} + +message GrpcSetCommandExecutedRequest { + string commandId = 1; + string createdResource = 2; +} + +message GrpcCommand { + string id = 1; + string vorgangId = 2; + string createdAt = 3; + string finishedAt = 4; + string createdBy = 10; + string createdByName = 11; + string status = 12; + string errorMessage = 13; + string relationId = 14; + GrpcCommandBody body = 16; + de.ozgcloud.vorgang.common.GrpcObject bodyObj = 17; + GrpcRedirectRequest redirectRequest = 20; + string orderString = 21; + string createdResource = 22; +} + +message GrpcExistsPendingCommandsRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string vorgangId = 2; +} + +message GrpcExistsPendingCommandsResponse { + bool existsPendingCommands = 1; +} + +message GrpcRedirectRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string email = 2; + string password = 3; +} + + +message GrpcGetPendingCommandsRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string vorgangId = 2; +} + +message GrpcFindCommandsRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string vorgangId = 2; + repeated string status = 3; + string orderString = 5; +} + + +message GrpcGetPendingCommandsResponse { + repeated GrpcCommand command = 1; +} +message GrpcCommandsResponse { + repeated GrpcCommand command = 1; +} + +message GrpcCommandBody { + repeated GrpcCommandBodyField field = 1; +} + +message GrpcCommandBodyField { + string name = 1; + string value = 2; +} + +message GrpcEmpty { +} + +message GrpcAddSubCommandsRequest { + string parentId = 1; + string executionMode = 2; + bool completedIfSubsCompleted = 3; + repeated GrpcCreateCommand subCommands = 4; +} + +message GrpcCreateCommand { + string order = 1; + string relationId = 2; + int64 relationVersion = 3; + de.ozgcloud.vorgang.common.GrpcObject bodyObj = 4; +} \ No newline at end of file diff --git a/api/proto/command.proto b/api/proto/command.proto new file mode 100644 index 0000000000000000000000000000000000000000..b15efd17aa0dc09756c0c7ac6cf0b60fc3f2dd66 --- /dev/null +++ b/api/proto/command.proto @@ -0,0 +1,36 @@ +/* + * Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +syntax = "proto3"; + +package de.ozgcloud.vorgang.grpc.command; + +import "command.model.proto"; + +option go_package = "de.ozgcloud.vorgang.grpc.command"; + +service CommandService { + + rpc GetCommand(GrpcGetCommandRequest) returns (GrpcCommand) { + } +} \ No newline at end of file diff --git a/api/proto/common.model.proto b/api/proto/common.model.proto new file mode 100644 index 0000000000000000000000000000000000000000..7e97bc87bb81c4ece1216372cbb2bf70f47250e7 --- /dev/null +++ b/api/proto/common.model.proto @@ -0,0 +1,57 @@ +/* + * Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +syntax = "proto3"; + +package de.ozgcloud.vorgang.common; + +option go_package = "de.ozgcloud.vorgang.common"; + +message GrpcObject { + repeated GrpcProperty property = 1; + repeated GrpcSubObject subObject = 2; +} + +message GrpcProperty { + string name = 1; + repeated string value = 2; +} + +message GrpcSubObject { + string name = 1; + repeated GrpcProperty property = 2; + repeated GrpcSubObject subObject = 3; +} + +enum GrpcQueryOperator { + GREATER_THEN = 0; // > + GREATER_THEN_OR_EQUAL_TO = 1; // >= + LESS_THEN = 2; // < + LESS_THEN_OR_EQUAL_TO = 3; // <= + EQUAL = 4; // = + UNEQUAL = 5; // <> + IS_NULL = 6; + IS_EMPTY = 7; + EXISTS = 8; + NOT_EXIST = 9; +} \ No newline at end of file diff --git a/api/proto/filemodel.proto b/api/proto/filemodel.proto new file mode 100644 index 0000000000000000000000000000000000000000..6c273dc9b7c83761ebf83041c97ad20292e54739 --- /dev/null +++ b/api/proto/filemodel.proto @@ -0,0 +1,53 @@ +/* + * Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +syntax = "proto3"; + +package de.ozgcloud.vorgang.grpc.file; + +import "callcontext.proto"; + +option go_package = "de.ozgcloud.vorgang.grpc.file"; + +message GrpcGetAttachmentsRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string eingangId = 2; +} +message GrpcGetAttachmentsResponse { + repeated GrpcOzgFile file = 1; +} + +message GrpcGetRepresentationsRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string eingangId = 2; +} +message GrpcGetRepresentationsResponse { + repeated GrpcOzgFile file = 1; +} + +message GrpcOzgFile { + string id = 1; + string name = 2; + int64 size = 3; + string contentType = 4; +} \ No newline at end of file diff --git a/api/proto/postfach.model.proto b/api/proto/postfach.model.proto new file mode 100644 index 0000000000000000000000000000000000000000..a47bb640515141beb866f8f7f13dc933115ca222 --- /dev/null +++ b/api/proto/postfach.model.proto @@ -0,0 +1,139 @@ +/* + * Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +syntax = "proto3"; + +package de.ozgcloud.nachrichten.postfach; + +import "callcontext.proto"; +import "vorgang.model.proto"; +import "common.model.proto"; + +option go_package = "de.ozgcloud.nachrichten.postfach"; + +message GrpcSendPostfachMailRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string commandId = 2; + GrpcPostfachMail mail = 5; +} + +message GrpcSaveNachrichtDraftRequest { + string vorgangId = 1; + GrpcPostfachNachricht nachricht = 2; +} + +message GrpcSaveNachrichtDraftResponse { +} + +message GrpcSendPostfachMailResponse { +} + +message GrpcFindPostfachMailRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string nachrichtId = 2; +} + +message GrpcFindPostfachMailResponse { + GrpcPostfachMail nachricht = 1; +} + +message GrpcFindPostfachMailsRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string vorgangId = 2; +} + +message GrpcFindPostfachMailsResponse { + repeated GrpcPostfachMail mails = 1; +} + +enum GrpcDirection { + UNDEFINED = 0; + IN = 1; + OUT = 2; +} + +message GrpcPostfachNachricht { + string id = 1; + string createdAt = 2; + de.ozgcloud.vorgang.vorgang.GrpcPostfachAddress postfachAddress = 3; + string subject = 4; + string mailBody = 5; + string replyOption = 6; + repeated string attachment = 7; +} + +message GrpcPostfachMail { + string id = 1; + string vorgangId = 2; + string postfachId = 3 [deprecated = true]; + GrpcPostfachAddress postfachAddress = 14; + string createdAt = 4; + string createdBy = 5; + string sentAt = 6; + bool sentSuccessful = 7; + string messageCode = 8; + GrpcDirection direction = 9; + string subject = 10; + string mailBody = 11; + string replyOption = 12; + repeated string attachment = 13; + GrpcPostfachAddress address = 15; + string referencedNachricht = 16; +} + +message GrpcPostfachAddress { + string version = 1; + de.ozgcloud.vorgang.common.GrpcObject identifier = 2; + int32 type = 3; + string serviceKontoType = 4; +} + +message GrpcResendPostfachMailRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; + string commandId = 2; + string postfachMailId = 3; +} + +message GrpcResendPostfachMailResponse { +} + +message GrpcIsPostfachConfiguredRequest { + de.ozgcloud.vorgang.grpc.command.GrpcCallContext context = 1; +} + +message GrpcIsPostfachConfiguredResponse { + bool isConfigured = 1; +} + +message GrpcGetPostfachConfigRequest { +} + +message GrpcGetPostfachConfigResponse { + bool configured = 1; + repeated GrpcPostfach postfach = 2; +} + +message GrpcPostfach { + string type = 1; + bool replyAllowed = 2; +} \ No newline at end of file diff --git a/api/proto/vorgang.model.proto b/api/proto/vorgang.model.proto new file mode 100644 index 0000000000000000000000000000000000000000..87815b07a810c229afde09c8d177ccf640dbad29 --- /dev/null +++ b/api/proto/vorgang.model.proto @@ -0,0 +1,212 @@ +/* + * Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +syntax = "proto3"; + +package de.ozgcloud.vorgang.vorgang; + +import "clientattribute.model.proto"; +import "common.model.proto"; + +option go_package = "de.ozgcloud.vorgang.vorgang"; + +message GrpcVorgangHeader { + string id = 1; + int64 version = 2; + string status = 3; + string name = 4; + string createdAt = 5; + string aktenzeichen = 6; + string assignedTo = 7; + string nummer = 8; + repeated de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttribute clientAttributes = 9; + string formEngineName = 15; +} + +message GrpcVorgangWithEingang { + string id = 1; + int64 version = 2; + string status = 3; + string name = 4; + string createdAt = 5; + string aktenzeichen = 6; + string assignedTo = 7; + string nummer = 8; + repeated de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttribute clientAttributes = 9; + + GrpcEingang eingang = 10; + string formEngineName = 15; + GrpcVorgangHead header = 16; +} + +message GrpcVorgangHead { + GrpcServiceKonto serviceKonto = 1; +} + +message GrpcEingang { + string id = 1; + + GrpcEingangHeader header = 2; + GrpcAntragsteller antragsteller = 3; + GrpcZustaendigeStelle zustaendigeStelle = 4; + + GrpcFormData formData = 10; + + int32 numberOfAttachments = 11; + int32 numberOfRepresentations = 12; + + repeated GrpcIncomingFileGroup attachments = 20; + repeated GrpcIncomingFile representations = 21; +} + +message GrpcIncomingFileGroup { + string name = 1; + repeated GrpcIncomingFile files = 2; +} + +message GrpcIncomingFile { + string id = 1; + string vendorId = 2; + string name = 3; + string contentType = 4; + int64 size = 5; + bytes content = 6; +} + +message GrpcEingangHeader { + string requestId = 1; + string createdAt = 2; + string formId = 3; + string formName = 4; + string sender = 5; + string customer = 6 [deprecated = true]; + string customerId = 7 [deprecated = true]; + string client = 8 [deprecated = true]; + string clientId = 9 [deprecated = true]; + string formEngineName = 10; + GrpcServiceKonto serviceKonto = 11; + string vorgangNummer = 12; +} + +message GrpcServiceKonto { + string type = 1; + repeated GrpcPostfachAddress postfachAddresses = 2; + string trustLevel = 3; +} + +message GrpcPostfachAddress { + string version = 1; + de.ozgcloud.vorgang.common.GrpcObject identifier = 2; + int32 type = 3; +} + +message GrpcAntragsteller { + string anrede = 1; + string nachname = 2; + string vorname = 3; + string geburtsdatum = 4; + string geburtsort = 5; + string geburtsname = 6; + string email = 7; + string telefon = 8; + string strasse = 9; + string hausnummer = 10; + string plz = 11; + string ort = 12; + string postfachId = 13 [deprecated = true]; + + GrpcFormData otherData = 30; + string firmaName = 31; +} + +message GrpcFormData { + repeated GrpcFormField field = 1; + repeated GrpcSubForm form = 2; +} + +message GrpcFormField { + string name = 1; + string value = 2; + string label = 3; +} + +message GrpcSubForm { + string title = 1; + repeated GrpcFormField field = 2; + repeated GrpcSubForm subForm = 3; + string label = 4; + GrpcControlData controlData = 5; +} + +message GrpcControlData { + bool metadata = 1; +} + +message GrpcZustaendigeStelle { + string organisationseinheitenId = 1; + string email = 2; + string bezeichnung = 3; + string gemeindeSchluessel = 4; + string amtlicherRegionalSchluessel = 5; + string hausanschriftStrasse = 6; + string hausanschriftPlz = 7; + string hausanschriftOrt = 8; + string telefon = 9; +} + +message GrpcQuery { + GrpcLogicalOperator logicalOperator = 1; + repeated GrpcVorgangQueryExpression expressions = 2; + GrpcQuery nestedQuery = 3; +} + +enum GrpcLogicalOperator { + AND = 0; + OR = 1; +} + +message GrpcVorgangQueryExpression { + string path = 1; + de.ozgcloud.vorgang.common.GrpcQueryOperator operator = 2; + oneof operand { + int32 operandIntValue = 3; + bool operandBoolValue = 4; + string operandStringValue = 5; + } +} + +message GrpcCreateCollaborationVorgangRequest { + oneof request { + GrpcCollaborationRequest collaborationRequest = 1; + } +} + +message GrpcCollaborationRequest { + string vorgangId = 1; + int32 collaborationLevel = 2; + string zustaendigeStelle = 3; +} + +message GrpcCreateCollaborationVorgangResponse { + string vorgangId = 1; +} \ No newline at end of file diff --git a/buf.gen.yaml b/buf.gen.yaml new file mode 100644 index 0000000000000000000000000000000000000000..e18132f572789797723497bed5cd8d141848b99a --- /dev/null +++ b/buf.gen.yaml @@ -0,0 +1,20 @@ +version: v1 +plugins: + - plugin: go + out: gen/go + opt: + - paths=source_relative + - plugin: go-grpc + out: gen/go + opt: + - paths=source_relative + - plugin: grpc-gateway + out: gen/go + opt: + - paths=source_relative + - grpc_api_configuration=api/gateway-config.yml + - plugin: openapiv2 + out: gen/openapiv2 + opt: + - grpc_api_configuration=api/gateway-config.yml + - openapi_configuration=api/openapi-config.yml \ No newline at end of file diff --git a/buf.lock b/buf.lock new file mode 100644 index 0000000000000000000000000000000000000000..f446f52ce6898925ad377769fb6632a99f742f6b --- /dev/null +++ b/buf.lock @@ -0,0 +1,13 @@ +# Generated by buf. DO NOT EDIT. +version: v1beta1 +deps: + - remote: buf.build + owner: googleapis + repository: googleapis + commit: f0e53af8f2fc4556b94f482688b57223 + digest: shake256:de26a277fc28b8b411ecf58729d78d32fcf15090ffd998a4469225b17889bfb51442eaab04bb7a8d88d203ecdf0a9febd4ffd52c18ed1c2229160c7bd353ca95 + - remote: buf.build + owner: grpc-ecosystem + repository: grpc-gateway + commit: a48fcebcf8f140dd9d09359b9bb185a4 + digest: shake256:a926173f0ec3e1a929462c350acda846e546134b5ce2bb83fe44f02f9330a42b1c9b292f64b951b06a4d2c47e2ce4d477d6a2cb31502a15637ada35ecedefcf6 diff --git a/buf.yaml b/buf.yaml new file mode 100644 index 0000000000000000000000000000000000000000..ee350234c83408d0b2f11bc08c62e17e20344909 --- /dev/null +++ b/buf.yaml @@ -0,0 +1,7 @@ +version: v1beta1 +build: + roots: + - api/proto +deps: + - buf.build/googleapis/googleapis + - buf.build/grpc-ecosystem/grpc-gateway \ No newline at end of file diff --git a/cmd/antragsraum-proxy/main.go b/cmd/antragsraum-proxy/main.go new file mode 100644 index 0000000000000000000000000000000000000000..a4f8f8503462a0394af5bcb703f083cd02e891d9 --- /dev/null +++ b/cmd/antragsraum-proxy/main.go @@ -0,0 +1,44 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package main + +import ( + "antragsraum-proxy/internal/config" + "antragsraum-proxy/internal/mock" + "antragsraum-proxy/internal/server" +) + +var version = "v1.0.0-beta.1" + +func main() { + conf := config.LoadConfig() + + if conf.Grpc.Mock { + go mock.StartGrpcServer() + } + + server.StartHttpGateway(conf) +} diff --git a/config/config.yml b/config/config.yml new file mode 100755 index 0000000000000000000000000000000000000000..8605b248d11050d5a8ad3c71b3e41e20eb8993d6 --- /dev/null +++ b/config/config.yml @@ -0,0 +1,6 @@ +server: + port: 8082 +grpc: + mock: true +logging: + level: "INFO" \ No newline at end of file diff --git a/gen/go/antragraum.model.pb.go b/gen/go/antragraum.model.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..a9ecd8fd6f400513a68be7459ef554dbd2c3b514 --- /dev/null +++ b/gen/go/antragraum.model.pb.go @@ -0,0 +1,946 @@ +// +// Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc (unknown) +// source: antragraum.model.proto + +package de_ozgcloud_nachrichten_antragraum + +import ( + _ "de.ozgcloud.nachrichten.postfach" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type GrpcFindRueckfragenRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + SamlToken string `protobuf:"bytes,1,opt,name=samlToken,proto3" json:"samlToken,omitempty"` + PostfachId string `protobuf:"bytes,2,opt,name=postfachId,proto3" json:"postfachId,omitempty"` +} + +func (x *GrpcFindRueckfragenRequest) Reset() { + *x = GrpcFindRueckfragenRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_antragraum_model_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcFindRueckfragenRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcFindRueckfragenRequest) ProtoMessage() {} + +func (x *GrpcFindRueckfragenRequest) ProtoReflect() protoreflect.Message { + mi := &file_antragraum_model_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcFindRueckfragenRequest.ProtoReflect.Descriptor instead. +func (*GrpcFindRueckfragenRequest) Descriptor() ([]byte, []int) { + return file_antragraum_model_proto_rawDescGZIP(), []int{0} +} + +func (x *GrpcFindRueckfragenRequest) GetSamlToken() string { + if x != nil { + return x.SamlToken + } + return "" +} + +func (x *GrpcFindRueckfragenRequest) GetPostfachId() string { + if x != nil { + return x.PostfachId + } + return "" +} + +type GrpcFindRueckfragenResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RueckfrageHead []*GrpcRueckfrageHead `protobuf:"bytes,1,rep,name=rueckfrageHead,proto3" json:"rueckfrageHead,omitempty"` +} + +func (x *GrpcFindRueckfragenResponse) Reset() { + *x = GrpcFindRueckfragenResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_antragraum_model_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcFindRueckfragenResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcFindRueckfragenResponse) ProtoMessage() {} + +func (x *GrpcFindRueckfragenResponse) ProtoReflect() protoreflect.Message { + mi := &file_antragraum_model_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcFindRueckfragenResponse.ProtoReflect.Descriptor instead. +func (*GrpcFindRueckfragenResponse) Descriptor() ([]byte, []int) { + return file_antragraum_model_proto_rawDescGZIP(), []int{1} +} + +func (x *GrpcFindRueckfragenResponse) GetRueckfrageHead() []*GrpcRueckfrageHead { + if x != nil { + return x.RueckfrageHead + } + return nil +} + +type GrpcRueckfrageHead struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + VorgangId string `protobuf:"bytes,2,opt,name=vorgangId,proto3" json:"vorgangId,omitempty"` + VorgangName string `protobuf:"bytes,3,opt,name=vorgangName,proto3" json:"vorgangName,omitempty"` + VorgangNummer string `protobuf:"bytes,4,opt,name=vorgangNummer,proto3" json:"vorgangNummer,omitempty"` + SentAt string `protobuf:"bytes,5,opt,name=sentAt,proto3" json:"sentAt,omitempty"` + AnsweredAt string `protobuf:"bytes,6,opt,name=answeredAt,proto3" json:"answeredAt,omitempty"` + Status string `protobuf:"bytes,7,opt,name=status,proto3" json:"status,omitempty"` + TrustLevel string `protobuf:"bytes,8,opt,name=trustLevel,proto3" json:"trustLevel,omitempty"` + Accessible bool `protobuf:"varint,9,opt,name=accessible,proto3" json:"accessible,omitempty"` +} + +func (x *GrpcRueckfrageHead) Reset() { + *x = GrpcRueckfrageHead{} + if protoimpl.UnsafeEnabled { + mi := &file_antragraum_model_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcRueckfrageHead) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcRueckfrageHead) ProtoMessage() {} + +func (x *GrpcRueckfrageHead) ProtoReflect() protoreflect.Message { + mi := &file_antragraum_model_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcRueckfrageHead.ProtoReflect.Descriptor instead. +func (*GrpcRueckfrageHead) Descriptor() ([]byte, []int) { + return file_antragraum_model_proto_rawDescGZIP(), []int{2} +} + +func (x *GrpcRueckfrageHead) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GrpcRueckfrageHead) GetVorgangId() string { + if x != nil { + return x.VorgangId + } + return "" +} + +func (x *GrpcRueckfrageHead) GetVorgangName() string { + if x != nil { + return x.VorgangName + } + return "" +} + +func (x *GrpcRueckfrageHead) GetVorgangNummer() string { + if x != nil { + return x.VorgangNummer + } + return "" +} + +func (x *GrpcRueckfrageHead) GetSentAt() string { + if x != nil { + return x.SentAt + } + return "" +} + +func (x *GrpcRueckfrageHead) GetAnsweredAt() string { + if x != nil { + return x.AnsweredAt + } + return "" +} + +func (x *GrpcRueckfrageHead) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *GrpcRueckfrageHead) GetTrustLevel() string { + if x != nil { + return x.TrustLevel + } + return "" +} + +func (x *GrpcRueckfrageHead) GetAccessible() bool { + if x != nil { + return x.Accessible + } + return false +} + +type GrpcRueckfrage struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + VorgangId string `protobuf:"bytes,2,opt,name=vorgangId,proto3" json:"vorgangId,omitempty"` + VorgangName string `protobuf:"bytes,3,opt,name=vorgangName,proto3" json:"vorgangName,omitempty"` + VorgangNummer string `protobuf:"bytes,4,opt,name=vorgangNummer,proto3" json:"vorgangNummer,omitempty"` + SentAt string `protobuf:"bytes,5,opt,name=sentAt,proto3" json:"sentAt,omitempty"` + AnsweredAt string `protobuf:"bytes,6,opt,name=answeredAt,proto3" json:"answeredAt,omitempty"` + Status string `protobuf:"bytes,7,opt,name=status,proto3" json:"status,omitempty"` + TrustLevel string `protobuf:"bytes,8,opt,name=trustLevel,proto3" json:"trustLevel,omitempty"` + Accessible bool `protobuf:"varint,9,opt,name=accessible,proto3" json:"accessible,omitempty"` + Text string `protobuf:"bytes,10,opt,name=text,proto3" json:"text,omitempty"` + AttachmentFileId []string `protobuf:"bytes,11,rep,name=attachmentFileId,proto3" json:"attachmentFileId,omitempty"` + Answers []*GrpcRueckfrageAnswer `protobuf:"bytes,12,rep,name=answers,proto3" json:"answers,omitempty"` +} + +func (x *GrpcRueckfrage) Reset() { + *x = GrpcRueckfrage{} + if protoimpl.UnsafeEnabled { + mi := &file_antragraum_model_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcRueckfrage) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcRueckfrage) ProtoMessage() {} + +func (x *GrpcRueckfrage) ProtoReflect() protoreflect.Message { + mi := &file_antragraum_model_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcRueckfrage.ProtoReflect.Descriptor instead. +func (*GrpcRueckfrage) Descriptor() ([]byte, []int) { + return file_antragraum_model_proto_rawDescGZIP(), []int{3} +} + +func (x *GrpcRueckfrage) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GrpcRueckfrage) GetVorgangId() string { + if x != nil { + return x.VorgangId + } + return "" +} + +func (x *GrpcRueckfrage) GetVorgangName() string { + if x != nil { + return x.VorgangName + } + return "" +} + +func (x *GrpcRueckfrage) GetVorgangNummer() string { + if x != nil { + return x.VorgangNummer + } + return "" +} + +func (x *GrpcRueckfrage) GetSentAt() string { + if x != nil { + return x.SentAt + } + return "" +} + +func (x *GrpcRueckfrage) GetAnsweredAt() string { + if x != nil { + return x.AnsweredAt + } + return "" +} + +func (x *GrpcRueckfrage) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *GrpcRueckfrage) GetTrustLevel() string { + if x != nil { + return x.TrustLevel + } + return "" +} + +func (x *GrpcRueckfrage) GetAccessible() bool { + if x != nil { + return x.Accessible + } + return false +} + +func (x *GrpcRueckfrage) GetText() string { + if x != nil { + return x.Text + } + return "" +} + +func (x *GrpcRueckfrage) GetAttachmentFileId() []string { + if x != nil { + return x.AttachmentFileId + } + return nil +} + +func (x *GrpcRueckfrage) GetAnswers() []*GrpcRueckfrageAnswer { + if x != nil { + return x.Answers + } + return nil +} + +type GrpcSendRueckfrageAnswerRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + SamlToken string `protobuf:"bytes,1,opt,name=samlToken,proto3" json:"samlToken,omitempty"` + Answer *GrpcRueckfrageAnswer `protobuf:"bytes,2,opt,name=answer,proto3" json:"answer,omitempty"` +} + +func (x *GrpcSendRueckfrageAnswerRequest) Reset() { + *x = GrpcSendRueckfrageAnswerRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_antragraum_model_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcSendRueckfrageAnswerRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcSendRueckfrageAnswerRequest) ProtoMessage() {} + +func (x *GrpcSendRueckfrageAnswerRequest) ProtoReflect() protoreflect.Message { + mi := &file_antragraum_model_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcSendRueckfrageAnswerRequest.ProtoReflect.Descriptor instead. +func (*GrpcSendRueckfrageAnswerRequest) Descriptor() ([]byte, []int) { + return file_antragraum_model_proto_rawDescGZIP(), []int{4} +} + +func (x *GrpcSendRueckfrageAnswerRequest) GetSamlToken() string { + if x != nil { + return x.SamlToken + } + return "" +} + +func (x *GrpcSendRueckfrageAnswerRequest) GetAnswer() *GrpcRueckfrageAnswer { + if x != nil { + return x.Answer + } + return nil +} + +type GrpcRueckfrageAnswer struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RueckfrageId string `protobuf:"bytes,1,opt,name=rueckfrageId,proto3" json:"rueckfrageId,omitempty"` + AnswerText string `protobuf:"bytes,2,opt,name=answerText,proto3" json:"answerText,omitempty"` + AttachmentFileId []string `protobuf:"bytes,3,rep,name=attachmentFileId,proto3" json:"attachmentFileId,omitempty"` + SentAt string `protobuf:"bytes,4,opt,name=sentAt,proto3" json:"sentAt,omitempty"` +} + +func (x *GrpcRueckfrageAnswer) Reset() { + *x = GrpcRueckfrageAnswer{} + if protoimpl.UnsafeEnabled { + mi := &file_antragraum_model_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcRueckfrageAnswer) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcRueckfrageAnswer) ProtoMessage() {} + +func (x *GrpcRueckfrageAnswer) ProtoReflect() protoreflect.Message { + mi := &file_antragraum_model_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcRueckfrageAnswer.ProtoReflect.Descriptor instead. +func (*GrpcRueckfrageAnswer) Descriptor() ([]byte, []int) { + return file_antragraum_model_proto_rawDescGZIP(), []int{5} +} + +func (x *GrpcRueckfrageAnswer) GetRueckfrageId() string { + if x != nil { + return x.RueckfrageId + } + return "" +} + +func (x *GrpcRueckfrageAnswer) GetAnswerText() string { + if x != nil { + return x.AnswerText + } + return "" +} + +func (x *GrpcRueckfrageAnswer) GetAttachmentFileId() []string { + if x != nil { + return x.AttachmentFileId + } + return nil +} + +func (x *GrpcRueckfrageAnswer) GetSentAt() string { + if x != nil { + return x.SentAt + } + return "" +} + +type GrpcSendRueckfrageAnswerResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CommandId string `protobuf:"bytes,1,opt,name=commandId,proto3" json:"commandId,omitempty"` +} + +func (x *GrpcSendRueckfrageAnswerResponse) Reset() { + *x = GrpcSendRueckfrageAnswerResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_antragraum_model_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcSendRueckfrageAnswerResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcSendRueckfrageAnswerResponse) ProtoMessage() {} + +func (x *GrpcSendRueckfrageAnswerResponse) ProtoReflect() protoreflect.Message { + mi := &file_antragraum_model_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcSendRueckfrageAnswerResponse.ProtoReflect.Descriptor instead. +func (*GrpcSendRueckfrageAnswerResponse) Descriptor() ([]byte, []int) { + return file_antragraum_model_proto_rawDescGZIP(), []int{6} +} + +func (x *GrpcSendRueckfrageAnswerResponse) GetCommandId() string { + if x != nil { + return x.CommandId + } + return "" +} + +type GrpcGetRueckfrageRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + SamlToken string `protobuf:"bytes,1,opt,name=samlToken,proto3" json:"samlToken,omitempty"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` +} + +func (x *GrpcGetRueckfrageRequest) Reset() { + *x = GrpcGetRueckfrageRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_antragraum_model_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetRueckfrageRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetRueckfrageRequest) ProtoMessage() {} + +func (x *GrpcGetRueckfrageRequest) ProtoReflect() protoreflect.Message { + mi := &file_antragraum_model_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetRueckfrageRequest.ProtoReflect.Descriptor instead. +func (*GrpcGetRueckfrageRequest) Descriptor() ([]byte, []int) { + return file_antragraum_model_proto_rawDescGZIP(), []int{7} +} + +func (x *GrpcGetRueckfrageRequest) GetSamlToken() string { + if x != nil { + return x.SamlToken + } + return "" +} + +func (x *GrpcGetRueckfrageRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +type GrpcGetRueckfrageResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Rueckfrage *GrpcRueckfrage `protobuf:"bytes,1,opt,name=rueckfrage,proto3" json:"rueckfrage,omitempty"` +} + +func (x *GrpcGetRueckfrageResponse) Reset() { + *x = GrpcGetRueckfrageResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_antragraum_model_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetRueckfrageResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetRueckfrageResponse) ProtoMessage() {} + +func (x *GrpcGetRueckfrageResponse) ProtoReflect() protoreflect.Message { + mi := &file_antragraum_model_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetRueckfrageResponse.ProtoReflect.Descriptor instead. +func (*GrpcGetRueckfrageResponse) Descriptor() ([]byte, []int) { + return file_antragraum_model_proto_rawDescGZIP(), []int{8} +} + +func (x *GrpcGetRueckfrageResponse) GetRueckfrage() *GrpcRueckfrage { + if x != nil { + return x.Rueckfrage + } + return nil +} + +var File_antragraum_model_proto protoreflect.FileDescriptor + +var file_antragraum_model_proto_rawDesc = []byte{ + 0x0a, 0x16, 0x61, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, 0x75, 0x6d, 0x2e, 0x6d, 0x6f, 0x64, + 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x22, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, + 0x6e, 0x2e, 0x61, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, 0x75, 0x6d, 0x1a, 0x14, 0x70, 0x6f, + 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x22, 0x5a, 0x0a, 0x1a, 0x47, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x75, + 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x61, 0x6d, 0x6c, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x61, 0x6d, 0x6c, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1e, + 0x0a, 0x0a, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x49, 0x64, 0x22, 0x7d, + 0x0a, 0x1b, 0x47, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, + 0x72, 0x61, 0x67, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, + 0x0e, 0x72, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x48, 0x65, 0x61, 0x64, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, + 0x61, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, 0x75, 0x6d, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x52, + 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x48, 0x65, 0x61, 0x64, 0x52, 0x0e, 0x72, + 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x48, 0x65, 0x61, 0x64, 0x22, 0x9a, 0x02, + 0x0a, 0x12, 0x47, 0x72, 0x70, 0x63, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, + 0x48, 0x65, 0x61, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, + 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x4e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x4e, + 0x75, 0x6d, 0x6d, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x76, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x67, 0x4e, 0x75, 0x6d, 0x6d, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, + 0x6e, 0x74, 0x41, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x74, + 0x41, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x65, 0x64, 0x41, 0x74, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x65, 0x64, + 0x41, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x72, + 0x75, 0x73, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x74, 0x72, 0x75, 0x73, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, + 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x22, 0xaa, 0x03, 0x0a, 0x0e, 0x47, + 0x72, 0x70, 0x63, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, + 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x76, + 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, + 0x0d, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x4e, 0x75, 0x6d, 0x6d, 0x65, 0x72, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x4e, 0x75, 0x6d, + 0x6d, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x6e, 0x73, 0x77, 0x65, 0x72, 0x65, 0x64, 0x41, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x65, 0x64, 0x41, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x72, 0x75, 0x73, 0x74, 0x4c, 0x65, 0x76, 0x65, + 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x72, 0x75, 0x73, 0x74, 0x4c, 0x65, + 0x76, 0x65, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x69, 0x62, 0x6c, + 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x69, + 0x62, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x61, 0x74, 0x74, 0x61, 0x63, + 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x64, 0x18, 0x0b, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x10, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x69, 0x6c, + 0x65, 0x49, 0x64, 0x12, 0x52, 0x0a, 0x07, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x18, 0x0c, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x61, + 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, 0x75, 0x6d, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x52, 0x75, + 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x07, + 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x22, 0x91, 0x01, 0x0a, 0x1f, 0x47, 0x72, 0x70, 0x63, + 0x53, 0x65, 0x6e, 0x64, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, + 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, + 0x61, 0x6d, 0x6c, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x73, 0x61, 0x6d, 0x6c, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x50, 0x0a, 0x06, 0x61, 0x6e, 0x73, + 0x77, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x65, 0x2e, 0x6f, + 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, + 0x74, 0x65, 0x6e, 0x2e, 0x61, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, 0x75, 0x6d, 0x2e, 0x47, + 0x72, 0x70, 0x63, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x73, + 0x77, 0x65, 0x72, 0x52, 0x06, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x22, 0x9e, 0x01, 0x0a, 0x14, + 0x47, 0x72, 0x70, 0x63, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, + 0x73, 0x77, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, + 0x67, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x75, 0x65, 0x63, + 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x6e, 0x73, 0x77, + 0x65, 0x72, 0x54, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x6e, + 0x73, 0x77, 0x65, 0x72, 0x54, 0x65, 0x78, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x61, 0x74, 0x74, 0x61, + 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x10, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x69, + 0x6c, 0x65, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x22, 0x40, 0x0a, 0x20, + 0x47, 0x72, 0x70, 0x63, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, + 0x67, 0x65, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x49, 0x64, 0x22, 0x48, + 0x0a, 0x18, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, + 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x61, + 0x6d, 0x6c, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, + 0x61, 0x6d, 0x6c, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x6f, 0x0a, 0x19, 0x47, 0x72, 0x70, 0x63, + 0x47, 0x65, 0x74, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, 0x0a, 0x72, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, + 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x65, 0x2e, 0x6f, + 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, + 0x74, 0x65, 0x6e, 0x2e, 0x61, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, 0x75, 0x6d, 0x2e, 0x47, + 0x72, 0x70, 0x63, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x52, 0x0a, 0x72, + 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x42, 0x24, 0x5a, 0x22, 0x64, 0x65, 0x2e, + 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, + 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x61, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, 0x75, 0x6d, 0x62, + 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_antragraum_model_proto_rawDescOnce sync.Once + file_antragraum_model_proto_rawDescData = file_antragraum_model_proto_rawDesc +) + +func file_antragraum_model_proto_rawDescGZIP() []byte { + file_antragraum_model_proto_rawDescOnce.Do(func() { + file_antragraum_model_proto_rawDescData = protoimpl.X.CompressGZIP(file_antragraum_model_proto_rawDescData) + }) + return file_antragraum_model_proto_rawDescData +} + +var file_antragraum_model_proto_msgTypes = make([]protoimpl.MessageInfo, 9) +var file_antragraum_model_proto_goTypes = []any{ + (*GrpcFindRueckfragenRequest)(nil), // 0: de.ozgcloud.nachrichten.antragraum.GrpcFindRueckfragenRequest + (*GrpcFindRueckfragenResponse)(nil), // 1: de.ozgcloud.nachrichten.antragraum.GrpcFindRueckfragenResponse + (*GrpcRueckfrageHead)(nil), // 2: de.ozgcloud.nachrichten.antragraum.GrpcRueckfrageHead + (*GrpcRueckfrage)(nil), // 3: de.ozgcloud.nachrichten.antragraum.GrpcRueckfrage + (*GrpcSendRueckfrageAnswerRequest)(nil), // 4: de.ozgcloud.nachrichten.antragraum.GrpcSendRueckfrageAnswerRequest + (*GrpcRueckfrageAnswer)(nil), // 5: de.ozgcloud.nachrichten.antragraum.GrpcRueckfrageAnswer + (*GrpcSendRueckfrageAnswerResponse)(nil), // 6: de.ozgcloud.nachrichten.antragraum.GrpcSendRueckfrageAnswerResponse + (*GrpcGetRueckfrageRequest)(nil), // 7: de.ozgcloud.nachrichten.antragraum.GrpcGetRueckfrageRequest + (*GrpcGetRueckfrageResponse)(nil), // 8: de.ozgcloud.nachrichten.antragraum.GrpcGetRueckfrageResponse +} +var file_antragraum_model_proto_depIdxs = []int32{ + 2, // 0: de.ozgcloud.nachrichten.antragraum.GrpcFindRueckfragenResponse.rueckfrageHead:type_name -> de.ozgcloud.nachrichten.antragraum.GrpcRueckfrageHead + 5, // 1: de.ozgcloud.nachrichten.antragraum.GrpcRueckfrage.answers:type_name -> de.ozgcloud.nachrichten.antragraum.GrpcRueckfrageAnswer + 5, // 2: de.ozgcloud.nachrichten.antragraum.GrpcSendRueckfrageAnswerRequest.answer:type_name -> de.ozgcloud.nachrichten.antragraum.GrpcRueckfrageAnswer + 3, // 3: de.ozgcloud.nachrichten.antragraum.GrpcGetRueckfrageResponse.rueckfrage:type_name -> de.ozgcloud.nachrichten.antragraum.GrpcRueckfrage + 4, // [4:4] is the sub-list for method output_type + 4, // [4:4] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name +} + +func init() { file_antragraum_model_proto_init() } +func file_antragraum_model_proto_init() { + if File_antragraum_model_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_antragraum_model_proto_msgTypes[0].Exporter = func(v any, i int) any { + switch v := v.(*GrpcFindRueckfragenRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_antragraum_model_proto_msgTypes[1].Exporter = func(v any, i int) any { + switch v := v.(*GrpcFindRueckfragenResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_antragraum_model_proto_msgTypes[2].Exporter = func(v any, i int) any { + switch v := v.(*GrpcRueckfrageHead); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_antragraum_model_proto_msgTypes[3].Exporter = func(v any, i int) any { + switch v := v.(*GrpcRueckfrage); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_antragraum_model_proto_msgTypes[4].Exporter = func(v any, i int) any { + switch v := v.(*GrpcSendRueckfrageAnswerRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_antragraum_model_proto_msgTypes[5].Exporter = func(v any, i int) any { + switch v := v.(*GrpcRueckfrageAnswer); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_antragraum_model_proto_msgTypes[6].Exporter = func(v any, i int) any { + switch v := v.(*GrpcSendRueckfrageAnswerResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_antragraum_model_proto_msgTypes[7].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetRueckfrageRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_antragraum_model_proto_msgTypes[8].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetRueckfrageResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_antragraum_model_proto_rawDesc, + NumEnums: 0, + NumMessages: 9, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_antragraum_model_proto_goTypes, + DependencyIndexes: file_antragraum_model_proto_depIdxs, + MessageInfos: file_antragraum_model_proto_msgTypes, + }.Build() + File_antragraum_model_proto = out.File + file_antragraum_model_proto_rawDesc = nil + file_antragraum_model_proto_goTypes = nil + file_antragraum_model_proto_depIdxs = nil +} diff --git a/gen/go/antragraum.pb.go b/gen/go/antragraum.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..f5760920ac778f80786863f53464c9d8e316ec08 --- /dev/null +++ b/gen/go/antragraum.pb.go @@ -0,0 +1,135 @@ +// +// Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc (unknown) +// source: antragraum.proto + +package de_ozgcloud_nachrichten_antragraum + +import ( + _ "de.ozgcloud.vorgang.grpc.command" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +var File_antragraum_proto protoreflect.FileDescriptor + +var file_antragraum_proto_rawDesc = []byte{ + 0x0a, 0x10, 0x61, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, 0x75, 0x6d, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x12, 0x22, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x61, 0x6e, 0x74, 0x72, + 0x61, 0x67, 0x72, 0x61, 0x75, 0x6d, 0x1a, 0x16, 0x61, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, + 0x75, 0x6d, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x13, + 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0xdb, 0x03, 0x0a, 0x11, 0x41, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, + 0x75, 0x6d, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x92, 0x01, 0x0a, 0x0f, 0x46, 0x69, + 0x6e, 0x64, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x6e, 0x12, 0x3e, 0x2e, + 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, + 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x61, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, + 0x75, 0x6d, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x75, 0x65, 0x63, 0x6b, + 0x66, 0x72, 0x61, 0x67, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, + 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, + 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x61, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, + 0x75, 0x6d, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x75, 0x65, 0x63, 0x6b, + 0x66, 0x72, 0x61, 0x67, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa1, + 0x01, 0x0a, 0x14, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, + 0x65, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x12, 0x43, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, + 0x6e, 0x2e, 0x61, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, 0x75, 0x6d, 0x2e, 0x47, 0x72, 0x70, + 0x63, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x41, + 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x44, 0x2e, 0x64, + 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, + 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x61, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, 0x75, + 0x6d, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, + 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, + 0x72, 0x61, 0x67, 0x65, 0x12, 0x3c, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x61, + 0x6e, 0x74, 0x72, 0x61, 0x67, 0x72, 0x61, 0x75, 0x6d, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, + 0x74, 0x52, 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x3d, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x61, 0x6e, 0x74, + 0x72, 0x61, 0x67, 0x72, 0x61, 0x75, 0x6d, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x52, + 0x75, 0x65, 0x63, 0x6b, 0x66, 0x72, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x42, 0x24, 0x5a, 0x22, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x61, 0x6e, 0x74, + 0x72, 0x61, 0x67, 0x72, 0x61, 0x75, 0x6d, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var file_antragraum_proto_goTypes = []any{ + (*GrpcFindRueckfragenRequest)(nil), // 0: de.ozgcloud.nachrichten.antragraum.GrpcFindRueckfragenRequest + (*GrpcSendRueckfrageAnswerRequest)(nil), // 1: de.ozgcloud.nachrichten.antragraum.GrpcSendRueckfrageAnswerRequest + (*GrpcGetRueckfrageRequest)(nil), // 2: de.ozgcloud.nachrichten.antragraum.GrpcGetRueckfrageRequest + (*GrpcFindRueckfragenResponse)(nil), // 3: de.ozgcloud.nachrichten.antragraum.GrpcFindRueckfragenResponse + (*GrpcSendRueckfrageAnswerResponse)(nil), // 4: de.ozgcloud.nachrichten.antragraum.GrpcSendRueckfrageAnswerResponse + (*GrpcGetRueckfrageResponse)(nil), // 5: de.ozgcloud.nachrichten.antragraum.GrpcGetRueckfrageResponse +} +var file_antragraum_proto_depIdxs = []int32{ + 0, // 0: de.ozgcloud.nachrichten.antragraum.AntragraumService.FindRueckfragen:input_type -> de.ozgcloud.nachrichten.antragraum.GrpcFindRueckfragenRequest + 1, // 1: de.ozgcloud.nachrichten.antragraum.AntragraumService.SendRueckfrageAnswer:input_type -> de.ozgcloud.nachrichten.antragraum.GrpcSendRueckfrageAnswerRequest + 2, // 2: de.ozgcloud.nachrichten.antragraum.AntragraumService.GetRueckfrage:input_type -> de.ozgcloud.nachrichten.antragraum.GrpcGetRueckfrageRequest + 3, // 3: de.ozgcloud.nachrichten.antragraum.AntragraumService.FindRueckfragen:output_type -> de.ozgcloud.nachrichten.antragraum.GrpcFindRueckfragenResponse + 4, // 4: de.ozgcloud.nachrichten.antragraum.AntragraumService.SendRueckfrageAnswer:output_type -> de.ozgcloud.nachrichten.antragraum.GrpcSendRueckfrageAnswerResponse + 5, // 5: de.ozgcloud.nachrichten.antragraum.AntragraumService.GetRueckfrage:output_type -> de.ozgcloud.nachrichten.antragraum.GrpcGetRueckfrageResponse + 3, // [3:6] is the sub-list for method output_type + 0, // [0:3] is the sub-list for method input_type + 0, // [0:0] is the sub-list for extension type_name + 0, // [0:0] is the sub-list for extension extendee + 0, // [0:0] is the sub-list for field type_name +} + +func init() { file_antragraum_proto_init() } +func file_antragraum_proto_init() { + if File_antragraum_proto != nil { + return + } + file_antragraum_model_proto_init() + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_antragraum_proto_rawDesc, + NumEnums: 0, + NumMessages: 0, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_antragraum_proto_goTypes, + DependencyIndexes: file_antragraum_proto_depIdxs, + }.Build() + File_antragraum_proto = out.File + file_antragraum_proto_rawDesc = nil + file_antragraum_proto_goTypes = nil + file_antragraum_proto_depIdxs = nil +} diff --git a/gen/go/antragraum.pb.gw.go b/gen/go/antragraum.pb.gw.go new file mode 100644 index 0000000000000000000000000000000000000000..14e29f802f283194ceab2c508aa3edc8cad78ca6 --- /dev/null +++ b/gen/go/antragraum.pb.gw.go @@ -0,0 +1,409 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: antragraum.proto + +/* +Package de_ozgcloud_nachrichten_antragraum is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package de_ozgcloud_nachrichten_antragraum + +import ( + "context" + "io" + "net/http" + + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/metadata" + "google.golang.org/grpc/status" + "google.golang.org/protobuf/proto" +) + +// Suppress "imported and not used" errors +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray +var _ = metadata.Join + +func request_AntragraumService_FindRueckfragen_0(ctx context.Context, marshaler runtime.Marshaler, client AntragraumServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GrpcFindRueckfragenRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["postfachId"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "postfachId") + } + + protoReq.PostfachId, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "postfachId", err) + } + + val, ok = pathParams["samlToken"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "samlToken") + } + + protoReq.SamlToken, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "samlToken", err) + } + + msg, err := client.FindRueckfragen(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_AntragraumService_FindRueckfragen_0(ctx context.Context, marshaler runtime.Marshaler, server AntragraumServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GrpcFindRueckfragenRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["postfachId"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "postfachId") + } + + protoReq.PostfachId, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "postfachId", err) + } + + val, ok = pathParams["samlToken"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "samlToken") + } + + protoReq.SamlToken, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "samlToken", err) + } + + msg, err := server.FindRueckfragen(ctx, &protoReq) + return msg, metadata, err + +} + +func request_AntragraumService_SendRueckfrageAnswer_0(ctx context.Context, marshaler runtime.Marshaler, client AntragraumServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GrpcSendRueckfrageAnswerRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.SendRueckfrageAnswer(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_AntragraumService_SendRueckfrageAnswer_0(ctx context.Context, marshaler runtime.Marshaler, server AntragraumServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GrpcSendRueckfrageAnswerRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.SendRueckfrageAnswer(ctx, &protoReq) + return msg, metadata, err + +} + +func request_AntragraumService_GetRueckfrage_0(ctx context.Context, marshaler runtime.Marshaler, client AntragraumServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GrpcGetRueckfrageRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") + } + + protoReq.Id, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) + } + + val, ok = pathParams["samlToken"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "samlToken") + } + + protoReq.SamlToken, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "samlToken", err) + } + + msg, err := client.GetRueckfrage(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_AntragraumService_GetRueckfrage_0(ctx context.Context, marshaler runtime.Marshaler, server AntragraumServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GrpcGetRueckfrageRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") + } + + protoReq.Id, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) + } + + val, ok = pathParams["samlToken"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "samlToken") + } + + protoReq.SamlToken, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "samlToken", err) + } + + msg, err := server.GetRueckfrage(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterAntragraumServiceHandlerServer registers the http handlers for service AntragraumService to "mux". +// UnaryRPC :call AntragraumServiceServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterAntragraumServiceHandlerFromEndpoint instead. +func RegisterAntragraumServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server AntragraumServiceServer) error { + + mux.Handle("GET", pattern_AntragraumService_FindRueckfragen_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/de.ozgcloud.nachrichten.antragraum.AntragraumService/FindRueckfragen", runtime.WithHTTPPathPattern("/api/rueckfragen/{postfachId}/{samlToken}")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_AntragraumService_FindRueckfragen_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AntragraumService_FindRueckfragen_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_AntragraumService_SendRueckfrageAnswer_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/de.ozgcloud.nachrichten.antragraum.AntragraumService/SendRueckfrageAnswer", runtime.WithHTTPPathPattern("/api/antworten")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_AntragraumService_SendRueckfrageAnswer_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AntragraumService_SendRueckfrageAnswer_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_AntragraumService_GetRueckfrage_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/de.ozgcloud.nachrichten.antragraum.AntragraumService/GetRueckfrage", runtime.WithHTTPPathPattern("/api/rueckfrage/{id}/{samlToken}")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_AntragraumService_GetRueckfrage_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AntragraumService_GetRueckfrage_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterAntragraumServiceHandlerFromEndpoint is same as RegisterAntragraumServiceHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterAntragraumServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.NewClient(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterAntragraumServiceHandler(ctx, mux, conn) +} + +// RegisterAntragraumServiceHandler registers the http handlers for service AntragraumService to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterAntragraumServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterAntragraumServiceHandlerClient(ctx, mux, NewAntragraumServiceClient(conn)) +} + +// RegisterAntragraumServiceHandlerClient registers the http handlers for service AntragraumService +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "AntragraumServiceClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "AntragraumServiceClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "AntragraumServiceClient" to call the correct interceptors. +func RegisterAntragraumServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client AntragraumServiceClient) error { + + mux.Handle("GET", pattern_AntragraumService_FindRueckfragen_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/de.ozgcloud.nachrichten.antragraum.AntragraumService/FindRueckfragen", runtime.WithHTTPPathPattern("/api/rueckfragen/{postfachId}/{samlToken}")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_AntragraumService_FindRueckfragen_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AntragraumService_FindRueckfragen_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_AntragraumService_SendRueckfrageAnswer_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/de.ozgcloud.nachrichten.antragraum.AntragraumService/SendRueckfrageAnswer", runtime.WithHTTPPathPattern("/api/antworten")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_AntragraumService_SendRueckfrageAnswer_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AntragraumService_SendRueckfrageAnswer_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_AntragraumService_GetRueckfrage_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/de.ozgcloud.nachrichten.antragraum.AntragraumService/GetRueckfrage", runtime.WithHTTPPathPattern("/api/rueckfrage/{id}/{samlToken}")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_AntragraumService_GetRueckfrage_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AntragraumService_GetRueckfrage_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_AntragraumService_FindRueckfragen_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 1, 0, 4, 1, 5, 3}, []string{"api", "rueckfragen", "postfachId", "samlToken"}, "")) + + pattern_AntragraumService_SendRueckfrageAnswer_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"api", "antworten"}, "")) + + pattern_AntragraumService_GetRueckfrage_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 1, 0, 4, 1, 5, 3}, []string{"api", "rueckfrage", "id", "samlToken"}, "")) +) + +var ( + forward_AntragraumService_FindRueckfragen_0 = runtime.ForwardResponseMessage + + forward_AntragraumService_SendRueckfrageAnswer_0 = runtime.ForwardResponseMessage + + forward_AntragraumService_GetRueckfrage_0 = runtime.ForwardResponseMessage +) diff --git a/gen/go/antragraum_grpc.pb.go b/gen/go/antragraum_grpc.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..ead6957e6a567c09363d2e9a5b75102af9334038 --- /dev/null +++ b/gen/go/antragraum_grpc.pb.go @@ -0,0 +1,209 @@ +// +// Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.4.0 +// - protoc (unknown) +// source: antragraum.proto + +package de_ozgcloud_nachrichten_antragraum + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.62.0 or later. +const _ = grpc.SupportPackageIsVersion8 + +const ( + AntragraumService_FindRueckfragen_FullMethodName = "/de.ozgcloud.nachrichten.antragraum.AntragraumService/FindRueckfragen" + AntragraumService_SendRueckfrageAnswer_FullMethodName = "/de.ozgcloud.nachrichten.antragraum.AntragraumService/SendRueckfrageAnswer" + AntragraumService_GetRueckfrage_FullMethodName = "/de.ozgcloud.nachrichten.antragraum.AntragraumService/GetRueckfrage" +) + +// AntragraumServiceClient is the client API for AntragraumService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type AntragraumServiceClient interface { + FindRueckfragen(ctx context.Context, in *GrpcFindRueckfragenRequest, opts ...grpc.CallOption) (*GrpcFindRueckfragenResponse, error) + SendRueckfrageAnswer(ctx context.Context, in *GrpcSendRueckfrageAnswerRequest, opts ...grpc.CallOption) (*GrpcSendRueckfrageAnswerResponse, error) + GetRueckfrage(ctx context.Context, in *GrpcGetRueckfrageRequest, opts ...grpc.CallOption) (*GrpcGetRueckfrageResponse, error) +} + +type antragraumServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewAntragraumServiceClient(cc grpc.ClientConnInterface) AntragraumServiceClient { + return &antragraumServiceClient{cc} +} + +func (c *antragraumServiceClient) FindRueckfragen(ctx context.Context, in *GrpcFindRueckfragenRequest, opts ...grpc.CallOption) (*GrpcFindRueckfragenResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GrpcFindRueckfragenResponse) + err := c.cc.Invoke(ctx, AntragraumService_FindRueckfragen_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *antragraumServiceClient) SendRueckfrageAnswer(ctx context.Context, in *GrpcSendRueckfrageAnswerRequest, opts ...grpc.CallOption) (*GrpcSendRueckfrageAnswerResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GrpcSendRueckfrageAnswerResponse) + err := c.cc.Invoke(ctx, AntragraumService_SendRueckfrageAnswer_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *antragraumServiceClient) GetRueckfrage(ctx context.Context, in *GrpcGetRueckfrageRequest, opts ...grpc.CallOption) (*GrpcGetRueckfrageResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GrpcGetRueckfrageResponse) + err := c.cc.Invoke(ctx, AntragraumService_GetRueckfrage_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// AntragraumServiceServer is the server API for AntragraumService service. +// All implementations must embed UnimplementedAntragraumServiceServer +// for forward compatibility +type AntragraumServiceServer interface { + FindRueckfragen(context.Context, *GrpcFindRueckfragenRequest) (*GrpcFindRueckfragenResponse, error) + SendRueckfrageAnswer(context.Context, *GrpcSendRueckfrageAnswerRequest) (*GrpcSendRueckfrageAnswerResponse, error) + GetRueckfrage(context.Context, *GrpcGetRueckfrageRequest) (*GrpcGetRueckfrageResponse, error) + mustEmbedUnimplementedAntragraumServiceServer() +} + +// UnimplementedAntragraumServiceServer must be embedded to have forward compatible implementations. +type UnimplementedAntragraumServiceServer struct { +} + +func (UnimplementedAntragraumServiceServer) FindRueckfragen(context.Context, *GrpcFindRueckfragenRequest) (*GrpcFindRueckfragenResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method FindRueckfragen not implemented") +} +func (UnimplementedAntragraumServiceServer) SendRueckfrageAnswer(context.Context, *GrpcSendRueckfrageAnswerRequest) (*GrpcSendRueckfrageAnswerResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SendRueckfrageAnswer not implemented") +} +func (UnimplementedAntragraumServiceServer) GetRueckfrage(context.Context, *GrpcGetRueckfrageRequest) (*GrpcGetRueckfrageResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetRueckfrage not implemented") +} +func (UnimplementedAntragraumServiceServer) mustEmbedUnimplementedAntragraumServiceServer() {} + +// UnsafeAntragraumServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to AntragraumServiceServer will +// result in compilation errors. +type UnsafeAntragraumServiceServer interface { + mustEmbedUnimplementedAntragraumServiceServer() +} + +func RegisterAntragraumServiceServer(s grpc.ServiceRegistrar, srv AntragraumServiceServer) { + s.RegisterService(&AntragraumService_ServiceDesc, srv) +} + +func _AntragraumService_FindRueckfragen_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GrpcFindRueckfragenRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(AntragraumServiceServer).FindRueckfragen(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: AntragraumService_FindRueckfragen_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(AntragraumServiceServer).FindRueckfragen(ctx, req.(*GrpcFindRueckfragenRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _AntragraumService_SendRueckfrageAnswer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GrpcSendRueckfrageAnswerRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(AntragraumServiceServer).SendRueckfrageAnswer(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: AntragraumService_SendRueckfrageAnswer_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(AntragraumServiceServer).SendRueckfrageAnswer(ctx, req.(*GrpcSendRueckfrageAnswerRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _AntragraumService_GetRueckfrage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GrpcGetRueckfrageRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(AntragraumServiceServer).GetRueckfrage(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: AntragraumService_GetRueckfrage_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(AntragraumServiceServer).GetRueckfrage(ctx, req.(*GrpcGetRueckfrageRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// AntragraumService_ServiceDesc is the grpc.ServiceDesc for AntragraumService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var AntragraumService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "de.ozgcloud.nachrichten.antragraum.AntragraumService", + HandlerType: (*AntragraumServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "FindRueckfragen", + Handler: _AntragraumService_FindRueckfragen_Handler, + }, + { + MethodName: "SendRueckfrageAnswer", + Handler: _AntragraumService_SendRueckfrageAnswer_Handler, + }, + { + MethodName: "GetRueckfrage", + Handler: _AntragraumService_GetRueckfrage_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "antragraum.proto", +} diff --git a/gen/go/binaryfile.pb.go b/gen/go/binaryfile.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..20b4d92108452880b4d93974fad5cdda81b52129 --- /dev/null +++ b/gen/go/binaryfile.pb.go @@ -0,0 +1,1209 @@ +// +// Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc (unknown) +// source: binaryfile.proto + +package de_ozgcloud_vorgang_grpc_binaryFile + +import ( + de_ozgcloud_vorgang_grpc_command "de.ozgcloud.vorgang.grpc.command" + de_ozgcloud_vorgang_grpc_file "de.ozgcloud.vorgang.grpc.file" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type GrpcBinaryFilesRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *de_ozgcloud_vorgang_grpc_command.GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + FileId []string `protobuf:"bytes,2,rep,name=fileId,proto3" json:"fileId,omitempty"` +} + +func (x *GrpcBinaryFilesRequest) Reset() { + *x = GrpcBinaryFilesRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_binaryfile_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcBinaryFilesRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcBinaryFilesRequest) ProtoMessage() {} + +func (x *GrpcBinaryFilesRequest) ProtoReflect() protoreflect.Message { + mi := &file_binaryfile_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcBinaryFilesRequest.ProtoReflect.Descriptor instead. +func (*GrpcBinaryFilesRequest) Descriptor() ([]byte, []int) { + return file_binaryfile_proto_rawDescGZIP(), []int{0} +} + +func (x *GrpcBinaryFilesRequest) GetContext() *de_ozgcloud_vorgang_grpc_command.GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcBinaryFilesRequest) GetFileId() []string { + if x != nil { + return x.FileId + } + return nil +} + +type GrpcFindFilesResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + File []*de_ozgcloud_vorgang_grpc_file.GrpcOzgFile `protobuf:"bytes,1,rep,name=file,proto3" json:"file,omitempty"` +} + +func (x *GrpcFindFilesResponse) Reset() { + *x = GrpcFindFilesResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_binaryfile_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcFindFilesResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcFindFilesResponse) ProtoMessage() {} + +func (x *GrpcFindFilesResponse) ProtoReflect() protoreflect.Message { + mi := &file_binaryfile_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcFindFilesResponse.ProtoReflect.Descriptor instead. +func (*GrpcFindFilesResponse) Descriptor() ([]byte, []int) { + return file_binaryfile_proto_rawDescGZIP(), []int{1} +} + +func (x *GrpcFindFilesResponse) GetFile() []*de_ozgcloud_vorgang_grpc_file.GrpcOzgFile { + if x != nil { + return x.File + } + return nil +} + +type GrpcBinaryFileDataRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *de_ozgcloud_vorgang_grpc_command.GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + FileId string `protobuf:"bytes,2,opt,name=fileId,proto3" json:"fileId,omitempty"` +} + +func (x *GrpcBinaryFileDataRequest) Reset() { + *x = GrpcBinaryFileDataRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_binaryfile_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcBinaryFileDataRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcBinaryFileDataRequest) ProtoMessage() {} + +func (x *GrpcBinaryFileDataRequest) ProtoReflect() protoreflect.Message { + mi := &file_binaryfile_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcBinaryFileDataRequest.ProtoReflect.Descriptor instead. +func (*GrpcBinaryFileDataRequest) Descriptor() ([]byte, []int) { + return file_binaryfile_proto_rawDescGZIP(), []int{2} +} + +func (x *GrpcBinaryFileDataRequest) GetContext() *de_ozgcloud_vorgang_grpc_command.GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcBinaryFileDataRequest) GetFileId() string { + if x != nil { + return x.FileId + } + return "" +} + +type GrpcUploadBinaryFileRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Request: + // + // *GrpcUploadBinaryFileRequest_Metadata + // *GrpcUploadBinaryFileRequest_FileContent + Request isGrpcUploadBinaryFileRequest_Request `protobuf_oneof:"request"` +} + +func (x *GrpcUploadBinaryFileRequest) Reset() { + *x = GrpcUploadBinaryFileRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_binaryfile_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcUploadBinaryFileRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcUploadBinaryFileRequest) ProtoMessage() {} + +func (x *GrpcUploadBinaryFileRequest) ProtoReflect() protoreflect.Message { + mi := &file_binaryfile_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcUploadBinaryFileRequest.ProtoReflect.Descriptor instead. +func (*GrpcUploadBinaryFileRequest) Descriptor() ([]byte, []int) { + return file_binaryfile_proto_rawDescGZIP(), []int{3} +} + +func (m *GrpcUploadBinaryFileRequest) GetRequest() isGrpcUploadBinaryFileRequest_Request { + if m != nil { + return m.Request + } + return nil +} + +func (x *GrpcUploadBinaryFileRequest) GetMetadata() *GrpcUploadBinaryFileMetaData { + if x, ok := x.GetRequest().(*GrpcUploadBinaryFileRequest_Metadata); ok { + return x.Metadata + } + return nil +} + +func (x *GrpcUploadBinaryFileRequest) GetFileContent() []byte { + if x, ok := x.GetRequest().(*GrpcUploadBinaryFileRequest_FileContent); ok { + return x.FileContent + } + return nil +} + +type isGrpcUploadBinaryFileRequest_Request interface { + isGrpcUploadBinaryFileRequest_Request() +} + +type GrpcUploadBinaryFileRequest_Metadata struct { + Metadata *GrpcUploadBinaryFileMetaData `protobuf:"bytes,1,opt,name=metadata,proto3,oneof"` +} + +type GrpcUploadBinaryFileRequest_FileContent struct { + FileContent []byte `protobuf:"bytes,2,opt,name=fileContent,proto3,oneof"` +} + +func (*GrpcUploadBinaryFileRequest_Metadata) isGrpcUploadBinaryFileRequest_Request() {} + +func (*GrpcUploadBinaryFileRequest_FileContent) isGrpcUploadBinaryFileRequest_Request() {} + +type GrpcUploadBinaryFileMetaData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *de_ozgcloud_vorgang_grpc_command.GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + VorgangId string `protobuf:"bytes,2,opt,name=vorgangId,proto3" json:"vorgangId,omitempty"` + Field string `protobuf:"bytes,3,opt,name=field,proto3" json:"field,omitempty"` + FileName string `protobuf:"bytes,4,opt,name=fileName,proto3" json:"fileName,omitempty"` + ContentType string `protobuf:"bytes,5,opt,name=contentType,proto3" json:"contentType,omitempty"` + // Deprecated: Marked as deprecated in binaryfile.proto. + Size int64 `protobuf:"varint,6,opt,name=size,proto3" json:"size,omitempty"` +} + +func (x *GrpcUploadBinaryFileMetaData) Reset() { + *x = GrpcUploadBinaryFileMetaData{} + if protoimpl.UnsafeEnabled { + mi := &file_binaryfile_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcUploadBinaryFileMetaData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcUploadBinaryFileMetaData) ProtoMessage() {} + +func (x *GrpcUploadBinaryFileMetaData) ProtoReflect() protoreflect.Message { + mi := &file_binaryfile_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcUploadBinaryFileMetaData.ProtoReflect.Descriptor instead. +func (*GrpcUploadBinaryFileMetaData) Descriptor() ([]byte, []int) { + return file_binaryfile_proto_rawDescGZIP(), []int{4} +} + +func (x *GrpcUploadBinaryFileMetaData) GetContext() *de_ozgcloud_vorgang_grpc_command.GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcUploadBinaryFileMetaData) GetVorgangId() string { + if x != nil { + return x.VorgangId + } + return "" +} + +func (x *GrpcUploadBinaryFileMetaData) GetField() string { + if x != nil { + return x.Field + } + return "" +} + +func (x *GrpcUploadBinaryFileMetaData) GetFileName() string { + if x != nil { + return x.FileName + } + return "" +} + +func (x *GrpcUploadBinaryFileMetaData) GetContentType() string { + if x != nil { + return x.ContentType + } + return "" +} + +// Deprecated: Marked as deprecated in binaryfile.proto. +func (x *GrpcUploadBinaryFileMetaData) GetSize() int64 { + if x != nil { + return x.Size + } + return 0 +} + +type GrpcUploadBinaryFileResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FileId string `protobuf:"bytes,2,opt,name=fileId,proto3" json:"fileId,omitempty"` +} + +func (x *GrpcUploadBinaryFileResponse) Reset() { + *x = GrpcUploadBinaryFileResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_binaryfile_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcUploadBinaryFileResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcUploadBinaryFileResponse) ProtoMessage() {} + +func (x *GrpcUploadBinaryFileResponse) ProtoReflect() protoreflect.Message { + mi := &file_binaryfile_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcUploadBinaryFileResponse.ProtoReflect.Descriptor instead. +func (*GrpcUploadBinaryFileResponse) Descriptor() ([]byte, []int) { + return file_binaryfile_proto_rawDescGZIP(), []int{5} +} + +func (x *GrpcUploadBinaryFileResponse) GetFileId() string { + if x != nil { + return x.FileId + } + return "" +} + +type GrpcGetBinaryFileDataRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *de_ozgcloud_vorgang_grpc_command.GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + FileId string `protobuf:"bytes,2,opt,name=fileId,proto3" json:"fileId,omitempty"` +} + +func (x *GrpcGetBinaryFileDataRequest) Reset() { + *x = GrpcGetBinaryFileDataRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_binaryfile_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetBinaryFileDataRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetBinaryFileDataRequest) ProtoMessage() {} + +func (x *GrpcGetBinaryFileDataRequest) ProtoReflect() protoreflect.Message { + mi := &file_binaryfile_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetBinaryFileDataRequest.ProtoReflect.Descriptor instead. +func (*GrpcGetBinaryFileDataRequest) Descriptor() ([]byte, []int) { + return file_binaryfile_proto_rawDescGZIP(), []int{6} +} + +func (x *GrpcGetBinaryFileDataRequest) GetContext() *de_ozgcloud_vorgang_grpc_command.GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcGetBinaryFileDataRequest) GetFileId() string { + if x != nil { + return x.FileId + } + return "" +} + +type GrpcGetBinaryFileDataResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FileContent []byte `protobuf:"bytes,1,opt,name=fileContent,proto3" json:"fileContent,omitempty"` +} + +func (x *GrpcGetBinaryFileDataResponse) Reset() { + *x = GrpcGetBinaryFileDataResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_binaryfile_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetBinaryFileDataResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetBinaryFileDataResponse) ProtoMessage() {} + +func (x *GrpcGetBinaryFileDataResponse) ProtoReflect() protoreflect.Message { + mi := &file_binaryfile_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetBinaryFileDataResponse.ProtoReflect.Descriptor instead. +func (*GrpcGetBinaryFileDataResponse) Descriptor() ([]byte, []int) { + return file_binaryfile_proto_rawDescGZIP(), []int{7} +} + +func (x *GrpcGetBinaryFileDataResponse) GetFileContent() []byte { + if x != nil { + return x.FileContent + } + return nil +} + +type GrpcGetAttachmentsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *de_ozgcloud_vorgang_grpc_command.GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + EingangId string `protobuf:"bytes,2,opt,name=eingangId,proto3" json:"eingangId,omitempty"` +} + +func (x *GrpcGetAttachmentsRequest) Reset() { + *x = GrpcGetAttachmentsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_binaryfile_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetAttachmentsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetAttachmentsRequest) ProtoMessage() {} + +func (x *GrpcGetAttachmentsRequest) ProtoReflect() protoreflect.Message { + mi := &file_binaryfile_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetAttachmentsRequest.ProtoReflect.Descriptor instead. +func (*GrpcGetAttachmentsRequest) Descriptor() ([]byte, []int) { + return file_binaryfile_proto_rawDescGZIP(), []int{8} +} + +func (x *GrpcGetAttachmentsRequest) GetContext() *de_ozgcloud_vorgang_grpc_command.GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcGetAttachmentsRequest) GetEingangId() string { + if x != nil { + return x.EingangId + } + return "" +} + +type GrpcGetAttachmentsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + File []*GrpcBinaryFile `protobuf:"bytes,1,rep,name=file,proto3" json:"file,omitempty"` +} + +func (x *GrpcGetAttachmentsResponse) Reset() { + *x = GrpcGetAttachmentsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_binaryfile_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetAttachmentsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetAttachmentsResponse) ProtoMessage() {} + +func (x *GrpcGetAttachmentsResponse) ProtoReflect() protoreflect.Message { + mi := &file_binaryfile_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetAttachmentsResponse.ProtoReflect.Descriptor instead. +func (*GrpcGetAttachmentsResponse) Descriptor() ([]byte, []int) { + return file_binaryfile_proto_rawDescGZIP(), []int{9} +} + +func (x *GrpcGetAttachmentsResponse) GetFile() []*GrpcBinaryFile { + if x != nil { + return x.File + } + return nil +} + +type GrpcGetRepresentationsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *de_ozgcloud_vorgang_grpc_command.GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + EingangId string `protobuf:"bytes,2,opt,name=eingangId,proto3" json:"eingangId,omitempty"` +} + +func (x *GrpcGetRepresentationsRequest) Reset() { + *x = GrpcGetRepresentationsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_binaryfile_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetRepresentationsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetRepresentationsRequest) ProtoMessage() {} + +func (x *GrpcGetRepresentationsRequest) ProtoReflect() protoreflect.Message { + mi := &file_binaryfile_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetRepresentationsRequest.ProtoReflect.Descriptor instead. +func (*GrpcGetRepresentationsRequest) Descriptor() ([]byte, []int) { + return file_binaryfile_proto_rawDescGZIP(), []int{10} +} + +func (x *GrpcGetRepresentationsRequest) GetContext() *de_ozgcloud_vorgang_grpc_command.GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcGetRepresentationsRequest) GetEingangId() string { + if x != nil { + return x.EingangId + } + return "" +} + +type GrpcGetRepresentationsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + File []*GrpcBinaryFile `protobuf:"bytes,1,rep,name=file,proto3" json:"file,omitempty"` +} + +func (x *GrpcGetRepresentationsResponse) Reset() { + *x = GrpcGetRepresentationsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_binaryfile_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetRepresentationsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetRepresentationsResponse) ProtoMessage() {} + +func (x *GrpcGetRepresentationsResponse) ProtoReflect() protoreflect.Message { + mi := &file_binaryfile_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetRepresentationsResponse.ProtoReflect.Descriptor instead. +func (*GrpcGetRepresentationsResponse) Descriptor() ([]byte, []int) { + return file_binaryfile_proto_rawDescGZIP(), []int{11} +} + +func (x *GrpcGetRepresentationsResponse) GetFile() []*GrpcBinaryFile { + if x != nil { + return x.File + } + return nil +} + +type GrpcBinaryFile struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Size int64 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"` + ContentType string `protobuf:"bytes,4,opt,name=contentType,proto3" json:"contentType,omitempty"` +} + +func (x *GrpcBinaryFile) Reset() { + *x = GrpcBinaryFile{} + if protoimpl.UnsafeEnabled { + mi := &file_binaryfile_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcBinaryFile) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcBinaryFile) ProtoMessage() {} + +func (x *GrpcBinaryFile) ProtoReflect() protoreflect.Message { + mi := &file_binaryfile_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcBinaryFile.ProtoReflect.Descriptor instead. +func (*GrpcBinaryFile) Descriptor() ([]byte, []int) { + return file_binaryfile_proto_rawDescGZIP(), []int{12} +} + +func (x *GrpcBinaryFile) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GrpcBinaryFile) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *GrpcBinaryFile) GetSize() int64 { + if x != nil { + return x.Size + } + return 0 +} + +func (x *GrpcBinaryFile) GetContentType() string { + if x != nil { + return x.ContentType + } + return "" +} + +var File_binaryfile_proto protoreflect.FileDescriptor + +var file_binaryfile_proto_rawDesc = []byte{ + 0x0a, 0x10, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x12, 0x23, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x62, 0x69, 0x6e, + 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x1a, 0x11, 0x63, 0x61, 0x6c, 0x6c, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0f, 0x66, 0x69, 0x6c, 0x65, + 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x7d, 0x0a, 0x16, 0x47, + 0x72, 0x70, 0x63, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, + 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, + 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x78, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x64, 0x22, 0x57, 0x0a, 0x15, 0x47, 0x72, + 0x70, 0x63, 0x46, 0x69, 0x6e, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x66, 0x69, 0x6c, + 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4f, 0x7a, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x04, 0x66, + 0x69, 0x6c, 0x65, 0x22, 0x80, 0x01, 0x0a, 0x19, 0x47, 0x72, 0x70, 0x63, 0x42, 0x69, 0x6e, 0x61, + 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, + 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x16, + 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x66, 0x69, 0x6c, 0x65, 0x49, 0x64, 0x22, 0xad, 0x01, 0x0a, 0x1b, 0x47, 0x72, 0x70, 0x63, 0x55, + 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, + 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, + 0x72, 0x70, 0x63, 0x2e, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x2e, 0x47, + 0x72, 0x70, 0x63, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, + 0x69, 0x6c, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x08, 0x6d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x22, 0x0a, 0x0b, 0x66, 0x69, 0x6c, 0x65, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, + 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xf5, 0x01, 0x0a, 0x1c, 0x47, 0x72, 0x70, 0x63, 0x55, + 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x4d, + 0x65, 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, + 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, + 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, + 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x78, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, + 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22, 0x36, + 0x0a, 0x1c, 0x47, 0x72, 0x70, 0x63, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x69, 0x6e, 0x61, + 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, + 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x66, 0x69, 0x6c, 0x65, 0x49, 0x64, 0x22, 0x83, 0x01, 0x0a, 0x1c, 0x47, 0x72, 0x70, 0x63, 0x47, + 0x65, 0x74, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, + 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, + 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, + 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x78, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x64, 0x22, 0x41, 0x0a, 0x1d, + 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, + 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, + 0x0b, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0c, 0x52, 0x0b, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0x86, 0x01, 0x0a, 0x19, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, + 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, + 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, + 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, + 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x69, + 0x6e, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, + 0x69, 0x6e, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x22, 0x65, 0x0a, 0x1a, 0x47, 0x72, 0x70, 0x63, + 0x47, 0x65, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, + 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x42, + 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x22, + 0x8a, 0x01, 0x0a, 0x1d, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x72, 0x65, + 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, + 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1c, + 0x0a, 0x09, 0x65, 0x69, 0x6e, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x65, 0x69, 0x6e, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x22, 0x69, 0x0a, 0x1e, + 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, + 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, + 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, + 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, + 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, + 0x65, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x6a, 0x0a, 0x0e, 0x47, 0x72, 0x70, 0x63, 0x42, + 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, + 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x32, 0xac, 0x06, 0x0a, 0x11, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, + 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xa3, 0x01, 0x0a, 0x18, 0x55, 0x70, + 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x41, 0x73, + 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x40, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, + 0x63, 0x2e, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x70, + 0x63, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, + 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, + 0x72, 0x70, 0x63, 0x2e, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x2e, 0x47, + 0x72, 0x70, 0x63, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, + 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x12, + 0xa1, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, + 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x41, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, + 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, + 0x72, 0x70, 0x63, 0x2e, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x2e, 0x47, + 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, + 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x42, 0x2e, 0x64, 0x65, + 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, + 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, + 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, + 0x69, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x00, 0x30, 0x01, 0x12, 0x94, 0x01, 0x0a, 0x17, 0x46, 0x69, 0x6e, 0x64, 0x42, 0x69, 0x6e, 0x61, + 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x4d, 0x65, 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x12, + 0x3b, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, + 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x62, 0x69, 0x6e, 0x61, 0x72, + 0x79, 0x46, 0x69, 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, + 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x64, + 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, + 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, + 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6e, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x93, 0x01, 0x0a, 0x0e, 0x47, + 0x65, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x3e, 0x2e, + 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, + 0x69, 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, + 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, + 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, + 0x69, 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, + 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, + 0x12, 0x9f, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x42, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, + 0x70, 0x63, 0x2e, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x2e, 0x47, 0x72, + 0x70, 0x63, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x43, 0x2e, 0x64, 0x65, + 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, + 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, + 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x42, 0x25, 0x5a, 0x23, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x62, + 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, +} + +var ( + file_binaryfile_proto_rawDescOnce sync.Once + file_binaryfile_proto_rawDescData = file_binaryfile_proto_rawDesc +) + +func file_binaryfile_proto_rawDescGZIP() []byte { + file_binaryfile_proto_rawDescOnce.Do(func() { + file_binaryfile_proto_rawDescData = protoimpl.X.CompressGZIP(file_binaryfile_proto_rawDescData) + }) + return file_binaryfile_proto_rawDescData +} + +var file_binaryfile_proto_msgTypes = make([]protoimpl.MessageInfo, 13) +var file_binaryfile_proto_goTypes = []any{ + (*GrpcBinaryFilesRequest)(nil), // 0: de.ozgcloud.vorgang.grpc.binaryFile.GrpcBinaryFilesRequest + (*GrpcFindFilesResponse)(nil), // 1: de.ozgcloud.vorgang.grpc.binaryFile.GrpcFindFilesResponse + (*GrpcBinaryFileDataRequest)(nil), // 2: de.ozgcloud.vorgang.grpc.binaryFile.GrpcBinaryFileDataRequest + (*GrpcUploadBinaryFileRequest)(nil), // 3: de.ozgcloud.vorgang.grpc.binaryFile.GrpcUploadBinaryFileRequest + (*GrpcUploadBinaryFileMetaData)(nil), // 4: de.ozgcloud.vorgang.grpc.binaryFile.GrpcUploadBinaryFileMetaData + (*GrpcUploadBinaryFileResponse)(nil), // 5: de.ozgcloud.vorgang.grpc.binaryFile.GrpcUploadBinaryFileResponse + (*GrpcGetBinaryFileDataRequest)(nil), // 6: de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetBinaryFileDataRequest + (*GrpcGetBinaryFileDataResponse)(nil), // 7: de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetBinaryFileDataResponse + (*GrpcGetAttachmentsRequest)(nil), // 8: de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetAttachmentsRequest + (*GrpcGetAttachmentsResponse)(nil), // 9: de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetAttachmentsResponse + (*GrpcGetRepresentationsRequest)(nil), // 10: de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetRepresentationsRequest + (*GrpcGetRepresentationsResponse)(nil), // 11: de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetRepresentationsResponse + (*GrpcBinaryFile)(nil), // 12: de.ozgcloud.vorgang.grpc.binaryFile.GrpcBinaryFile + (*de_ozgcloud_vorgang_grpc_command.GrpcCallContext)(nil), // 13: de.ozgcloud.vorgang.grpc.command.GrpcCallContext + (*de_ozgcloud_vorgang_grpc_file.GrpcOzgFile)(nil), // 14: de.ozgcloud.vorgang.grpc.file.GrpcOzgFile +} +var file_binaryfile_proto_depIdxs = []int32{ + 13, // 0: de.ozgcloud.vorgang.grpc.binaryFile.GrpcBinaryFilesRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 14, // 1: de.ozgcloud.vorgang.grpc.binaryFile.GrpcFindFilesResponse.file:type_name -> de.ozgcloud.vorgang.grpc.file.GrpcOzgFile + 13, // 2: de.ozgcloud.vorgang.grpc.binaryFile.GrpcBinaryFileDataRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 4, // 3: de.ozgcloud.vorgang.grpc.binaryFile.GrpcUploadBinaryFileRequest.metadata:type_name -> de.ozgcloud.vorgang.grpc.binaryFile.GrpcUploadBinaryFileMetaData + 13, // 4: de.ozgcloud.vorgang.grpc.binaryFile.GrpcUploadBinaryFileMetaData.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 13, // 5: de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetBinaryFileDataRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 13, // 6: de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetAttachmentsRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 12, // 7: de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetAttachmentsResponse.file:type_name -> de.ozgcloud.vorgang.grpc.binaryFile.GrpcBinaryFile + 13, // 8: de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetRepresentationsRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 12, // 9: de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetRepresentationsResponse.file:type_name -> de.ozgcloud.vorgang.grpc.binaryFile.GrpcBinaryFile + 3, // 10: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.UploadBinaryFileAsStream:input_type -> de.ozgcloud.vorgang.grpc.binaryFile.GrpcUploadBinaryFileRequest + 6, // 11: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.GetBinaryFileContent:input_type -> de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetBinaryFileDataRequest + 0, // 12: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.FindBinaryFilesMetaData:input_type -> de.ozgcloud.vorgang.grpc.binaryFile.GrpcBinaryFilesRequest + 8, // 13: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.GetAttachments:input_type -> de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetAttachmentsRequest + 10, // 14: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.GetRepresentations:input_type -> de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetRepresentationsRequest + 5, // 15: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.UploadBinaryFileAsStream:output_type -> de.ozgcloud.vorgang.grpc.binaryFile.GrpcUploadBinaryFileResponse + 7, // 16: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.GetBinaryFileContent:output_type -> de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetBinaryFileDataResponse + 1, // 17: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.FindBinaryFilesMetaData:output_type -> de.ozgcloud.vorgang.grpc.binaryFile.GrpcFindFilesResponse + 9, // 18: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.GetAttachments:output_type -> de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetAttachmentsResponse + 11, // 19: de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService.GetRepresentations:output_type -> de.ozgcloud.vorgang.grpc.binaryFile.GrpcGetRepresentationsResponse + 15, // [15:20] is the sub-list for method output_type + 10, // [10:15] is the sub-list for method input_type + 10, // [10:10] is the sub-list for extension type_name + 10, // [10:10] is the sub-list for extension extendee + 0, // [0:10] is the sub-list for field type_name +} + +func init() { file_binaryfile_proto_init() } +func file_binaryfile_proto_init() { + if File_binaryfile_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_binaryfile_proto_msgTypes[0].Exporter = func(v any, i int) any { + switch v := v.(*GrpcBinaryFilesRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_binaryfile_proto_msgTypes[1].Exporter = func(v any, i int) any { + switch v := v.(*GrpcFindFilesResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_binaryfile_proto_msgTypes[2].Exporter = func(v any, i int) any { + switch v := v.(*GrpcBinaryFileDataRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_binaryfile_proto_msgTypes[3].Exporter = func(v any, i int) any { + switch v := v.(*GrpcUploadBinaryFileRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_binaryfile_proto_msgTypes[4].Exporter = func(v any, i int) any { + switch v := v.(*GrpcUploadBinaryFileMetaData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_binaryfile_proto_msgTypes[5].Exporter = func(v any, i int) any { + switch v := v.(*GrpcUploadBinaryFileResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_binaryfile_proto_msgTypes[6].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetBinaryFileDataRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_binaryfile_proto_msgTypes[7].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetBinaryFileDataResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_binaryfile_proto_msgTypes[8].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetAttachmentsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_binaryfile_proto_msgTypes[9].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetAttachmentsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_binaryfile_proto_msgTypes[10].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetRepresentationsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_binaryfile_proto_msgTypes[11].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetRepresentationsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_binaryfile_proto_msgTypes[12].Exporter = func(v any, i int) any { + switch v := v.(*GrpcBinaryFile); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_binaryfile_proto_msgTypes[3].OneofWrappers = []any{ + (*GrpcUploadBinaryFileRequest_Metadata)(nil), + (*GrpcUploadBinaryFileRequest_FileContent)(nil), + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_binaryfile_proto_rawDesc, + NumEnums: 0, + NumMessages: 13, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_binaryfile_proto_goTypes, + DependencyIndexes: file_binaryfile_proto_depIdxs, + MessageInfos: file_binaryfile_proto_msgTypes, + }.Build() + File_binaryfile_proto = out.File + file_binaryfile_proto_rawDesc = nil + file_binaryfile_proto_goTypes = nil + file_binaryfile_proto_depIdxs = nil +} diff --git a/gen/go/binaryfile.pb.gw.go b/gen/go/binaryfile.pb.gw.go new file mode 100644 index 0000000000000000000000000000000000000000..75bcfd247d30c7c62009fce6a78a92e5dd91110e --- /dev/null +++ b/gen/go/binaryfile.pb.gw.go @@ -0,0 +1,285 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: binaryfile.proto + +/* +Package de_ozgcloud_vorgang_grpc_binaryFile is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package de_ozgcloud_vorgang_grpc_binaryFile + +import ( + "context" + "io" + "net/http" + + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/metadata" + "google.golang.org/grpc/status" + "google.golang.org/protobuf/proto" +) + +// Suppress "imported and not used" errors +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray +var _ = metadata.Join + +var ( + filter_BinaryFileService_GetBinaryFileContent_0 = &utilities.DoubleArray{Encoding: map[string]int{"fileId": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_BinaryFileService_GetBinaryFileContent_0(ctx context.Context, marshaler runtime.Marshaler, client BinaryFileServiceClient, req *http.Request, pathParams map[string]string) (BinaryFileService_GetBinaryFileContentClient, runtime.ServerMetadata, error) { + var protoReq GrpcGetBinaryFileDataRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["fileId"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "fileId") + } + + protoReq.FileId, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "fileId", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_BinaryFileService_GetBinaryFileContent_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + stream, err := client.GetBinaryFileContent(ctx, &protoReq) + if err != nil { + return nil, metadata, err + } + header, err := stream.Header() + if err != nil { + return nil, metadata, err + } + metadata.HeaderMD = header + return stream, metadata, nil + +} + +var ( + filter_BinaryFileService_FindBinaryFilesMetaData_0 = &utilities.DoubleArray{Encoding: map[string]int{"fileId": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_BinaryFileService_FindBinaryFilesMetaData_0(ctx context.Context, marshaler runtime.Marshaler, client BinaryFileServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GrpcBinaryFilesRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["fileId"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "fileId") + } + + protoReq.FileId, err = runtime.StringSlice(val, ",") + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "fileId", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_BinaryFileService_FindBinaryFilesMetaData_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.FindBinaryFilesMetaData(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_BinaryFileService_FindBinaryFilesMetaData_0(ctx context.Context, marshaler runtime.Marshaler, server BinaryFileServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GrpcBinaryFilesRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["fileId"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "fileId") + } + + protoReq.FileId, err = runtime.StringSlice(val, ",") + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "fileId", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_BinaryFileService_FindBinaryFilesMetaData_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.FindBinaryFilesMetaData(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterBinaryFileServiceHandlerServer registers the http handlers for service BinaryFileService to "mux". +// UnaryRPC :call BinaryFileServiceServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterBinaryFileServiceHandlerFromEndpoint instead. +func RegisterBinaryFileServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server BinaryFileServiceServer) error { + + mux.Handle("GET", pattern_BinaryFileService_GetBinaryFileContent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") + _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + }) + + mux.Handle("GET", pattern_BinaryFileService_FindBinaryFilesMetaData_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService/FindBinaryFilesMetaData", runtime.WithHTTPPathPattern("/api/filemetadata/{fileId}")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_BinaryFileService_FindBinaryFilesMetaData_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_BinaryFileService_FindBinaryFilesMetaData_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterBinaryFileServiceHandlerFromEndpoint is same as RegisterBinaryFileServiceHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterBinaryFileServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.NewClient(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterBinaryFileServiceHandler(ctx, mux, conn) +} + +// RegisterBinaryFileServiceHandler registers the http handlers for service BinaryFileService to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterBinaryFileServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterBinaryFileServiceHandlerClient(ctx, mux, NewBinaryFileServiceClient(conn)) +} + +// RegisterBinaryFileServiceHandlerClient registers the http handlers for service BinaryFileService +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "BinaryFileServiceClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "BinaryFileServiceClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "BinaryFileServiceClient" to call the correct interceptors. +func RegisterBinaryFileServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client BinaryFileServiceClient) error { + + mux.Handle("GET", pattern_BinaryFileService_GetBinaryFileContent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService/GetBinaryFileContent", runtime.WithHTTPPathPattern("/api/filecontent/{fileId}")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_BinaryFileService_GetBinaryFileContent_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_BinaryFileService_GetBinaryFileContent_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_BinaryFileService_FindBinaryFilesMetaData_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService/FindBinaryFilesMetaData", runtime.WithHTTPPathPattern("/api/filemetadata/{fileId}")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_BinaryFileService_FindBinaryFilesMetaData_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_BinaryFileService_FindBinaryFilesMetaData_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_BinaryFileService_GetBinaryFileContent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"api", "filecontent", "fileId"}, "")) + + pattern_BinaryFileService_FindBinaryFilesMetaData_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"api", "filemetadata", "fileId"}, "")) +) + +var ( + forward_BinaryFileService_GetBinaryFileContent_0 = runtime.ForwardResponseStream + + forward_BinaryFileService_FindBinaryFilesMetaData_0 = runtime.ForwardResponseMessage +) diff --git a/gen/go/binaryfile_grpc.pb.go b/gen/go/binaryfile_grpc.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..dede0a0812cb2ef34a6581238681d17387389689 --- /dev/null +++ b/gen/go/binaryfile_grpc.pb.go @@ -0,0 +1,347 @@ +// +// Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.4.0 +// - protoc (unknown) +// source: binaryfile.proto + +package de_ozgcloud_vorgang_grpc_binaryFile + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.62.0 or later. +const _ = grpc.SupportPackageIsVersion8 + +const ( + BinaryFileService_UploadBinaryFileAsStream_FullMethodName = "/de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService/UploadBinaryFileAsStream" + BinaryFileService_GetBinaryFileContent_FullMethodName = "/de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService/GetBinaryFileContent" + BinaryFileService_FindBinaryFilesMetaData_FullMethodName = "/de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService/FindBinaryFilesMetaData" + BinaryFileService_GetAttachments_FullMethodName = "/de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService/GetAttachments" + BinaryFileService_GetRepresentations_FullMethodName = "/de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService/GetRepresentations" +) + +// BinaryFileServiceClient is the client API for BinaryFileService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type BinaryFileServiceClient interface { + UploadBinaryFileAsStream(ctx context.Context, opts ...grpc.CallOption) (BinaryFileService_UploadBinaryFileAsStreamClient, error) + GetBinaryFileContent(ctx context.Context, in *GrpcGetBinaryFileDataRequest, opts ...grpc.CallOption) (BinaryFileService_GetBinaryFileContentClient, error) + FindBinaryFilesMetaData(ctx context.Context, in *GrpcBinaryFilesRequest, opts ...grpc.CallOption) (*GrpcFindFilesResponse, error) + GetAttachments(ctx context.Context, in *GrpcGetAttachmentsRequest, opts ...grpc.CallOption) (*GrpcGetAttachmentsResponse, error) + GetRepresentations(ctx context.Context, in *GrpcGetRepresentationsRequest, opts ...grpc.CallOption) (*GrpcGetRepresentationsResponse, error) +} + +type binaryFileServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewBinaryFileServiceClient(cc grpc.ClientConnInterface) BinaryFileServiceClient { + return &binaryFileServiceClient{cc} +} + +func (c *binaryFileServiceClient) UploadBinaryFileAsStream(ctx context.Context, opts ...grpc.CallOption) (BinaryFileService_UploadBinaryFileAsStreamClient, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + stream, err := c.cc.NewStream(ctx, &BinaryFileService_ServiceDesc.Streams[0], BinaryFileService_UploadBinaryFileAsStream_FullMethodName, cOpts...) + if err != nil { + return nil, err + } + x := &binaryFileServiceUploadBinaryFileAsStreamClient{ClientStream: stream} + return x, nil +} + +type BinaryFileService_UploadBinaryFileAsStreamClient interface { + Send(*GrpcUploadBinaryFileRequest) error + CloseAndRecv() (*GrpcUploadBinaryFileResponse, error) + grpc.ClientStream +} + +type binaryFileServiceUploadBinaryFileAsStreamClient struct { + grpc.ClientStream +} + +func (x *binaryFileServiceUploadBinaryFileAsStreamClient) Send(m *GrpcUploadBinaryFileRequest) error { + return x.ClientStream.SendMsg(m) +} + +func (x *binaryFileServiceUploadBinaryFileAsStreamClient) CloseAndRecv() (*GrpcUploadBinaryFileResponse, error) { + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + m := new(GrpcUploadBinaryFileResponse) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +func (c *binaryFileServiceClient) GetBinaryFileContent(ctx context.Context, in *GrpcGetBinaryFileDataRequest, opts ...grpc.CallOption) (BinaryFileService_GetBinaryFileContentClient, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + stream, err := c.cc.NewStream(ctx, &BinaryFileService_ServiceDesc.Streams[1], BinaryFileService_GetBinaryFileContent_FullMethodName, cOpts...) + if err != nil { + return nil, err + } + x := &binaryFileServiceGetBinaryFileContentClient{ClientStream: stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type BinaryFileService_GetBinaryFileContentClient interface { + Recv() (*GrpcGetBinaryFileDataResponse, error) + grpc.ClientStream +} + +type binaryFileServiceGetBinaryFileContentClient struct { + grpc.ClientStream +} + +func (x *binaryFileServiceGetBinaryFileContentClient) Recv() (*GrpcGetBinaryFileDataResponse, error) { + m := new(GrpcGetBinaryFileDataResponse) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +func (c *binaryFileServiceClient) FindBinaryFilesMetaData(ctx context.Context, in *GrpcBinaryFilesRequest, opts ...grpc.CallOption) (*GrpcFindFilesResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GrpcFindFilesResponse) + err := c.cc.Invoke(ctx, BinaryFileService_FindBinaryFilesMetaData_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *binaryFileServiceClient) GetAttachments(ctx context.Context, in *GrpcGetAttachmentsRequest, opts ...grpc.CallOption) (*GrpcGetAttachmentsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GrpcGetAttachmentsResponse) + err := c.cc.Invoke(ctx, BinaryFileService_GetAttachments_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *binaryFileServiceClient) GetRepresentations(ctx context.Context, in *GrpcGetRepresentationsRequest, opts ...grpc.CallOption) (*GrpcGetRepresentationsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GrpcGetRepresentationsResponse) + err := c.cc.Invoke(ctx, BinaryFileService_GetRepresentations_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// BinaryFileServiceServer is the server API for BinaryFileService service. +// All implementations must embed UnimplementedBinaryFileServiceServer +// for forward compatibility +type BinaryFileServiceServer interface { + UploadBinaryFileAsStream(BinaryFileService_UploadBinaryFileAsStreamServer) error + GetBinaryFileContent(*GrpcGetBinaryFileDataRequest, BinaryFileService_GetBinaryFileContentServer) error + FindBinaryFilesMetaData(context.Context, *GrpcBinaryFilesRequest) (*GrpcFindFilesResponse, error) + GetAttachments(context.Context, *GrpcGetAttachmentsRequest) (*GrpcGetAttachmentsResponse, error) + GetRepresentations(context.Context, *GrpcGetRepresentationsRequest) (*GrpcGetRepresentationsResponse, error) + mustEmbedUnimplementedBinaryFileServiceServer() +} + +// UnimplementedBinaryFileServiceServer must be embedded to have forward compatible implementations. +type UnimplementedBinaryFileServiceServer struct { +} + +func (UnimplementedBinaryFileServiceServer) UploadBinaryFileAsStream(BinaryFileService_UploadBinaryFileAsStreamServer) error { + return status.Errorf(codes.Unimplemented, "method UploadBinaryFileAsStream not implemented") +} +func (UnimplementedBinaryFileServiceServer) GetBinaryFileContent(*GrpcGetBinaryFileDataRequest, BinaryFileService_GetBinaryFileContentServer) error { + return status.Errorf(codes.Unimplemented, "method GetBinaryFileContent not implemented") +} +func (UnimplementedBinaryFileServiceServer) FindBinaryFilesMetaData(context.Context, *GrpcBinaryFilesRequest) (*GrpcFindFilesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method FindBinaryFilesMetaData not implemented") +} +func (UnimplementedBinaryFileServiceServer) GetAttachments(context.Context, *GrpcGetAttachmentsRequest) (*GrpcGetAttachmentsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetAttachments not implemented") +} +func (UnimplementedBinaryFileServiceServer) GetRepresentations(context.Context, *GrpcGetRepresentationsRequest) (*GrpcGetRepresentationsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetRepresentations not implemented") +} +func (UnimplementedBinaryFileServiceServer) mustEmbedUnimplementedBinaryFileServiceServer() {} + +// UnsafeBinaryFileServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to BinaryFileServiceServer will +// result in compilation errors. +type UnsafeBinaryFileServiceServer interface { + mustEmbedUnimplementedBinaryFileServiceServer() +} + +func RegisterBinaryFileServiceServer(s grpc.ServiceRegistrar, srv BinaryFileServiceServer) { + s.RegisterService(&BinaryFileService_ServiceDesc, srv) +} + +func _BinaryFileService_UploadBinaryFileAsStream_Handler(srv interface{}, stream grpc.ServerStream) error { + return srv.(BinaryFileServiceServer).UploadBinaryFileAsStream(&binaryFileServiceUploadBinaryFileAsStreamServer{ServerStream: stream}) +} + +type BinaryFileService_UploadBinaryFileAsStreamServer interface { + SendAndClose(*GrpcUploadBinaryFileResponse) error + Recv() (*GrpcUploadBinaryFileRequest, error) + grpc.ServerStream +} + +type binaryFileServiceUploadBinaryFileAsStreamServer struct { + grpc.ServerStream +} + +func (x *binaryFileServiceUploadBinaryFileAsStreamServer) SendAndClose(m *GrpcUploadBinaryFileResponse) error { + return x.ServerStream.SendMsg(m) +} + +func (x *binaryFileServiceUploadBinaryFileAsStreamServer) Recv() (*GrpcUploadBinaryFileRequest, error) { + m := new(GrpcUploadBinaryFileRequest) + if err := x.ServerStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +func _BinaryFileService_GetBinaryFileContent_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(GrpcGetBinaryFileDataRequest) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(BinaryFileServiceServer).GetBinaryFileContent(m, &binaryFileServiceGetBinaryFileContentServer{ServerStream: stream}) +} + +type BinaryFileService_GetBinaryFileContentServer interface { + Send(*GrpcGetBinaryFileDataResponse) error + grpc.ServerStream +} + +type binaryFileServiceGetBinaryFileContentServer struct { + grpc.ServerStream +} + +func (x *binaryFileServiceGetBinaryFileContentServer) Send(m *GrpcGetBinaryFileDataResponse) error { + return x.ServerStream.SendMsg(m) +} + +func _BinaryFileService_FindBinaryFilesMetaData_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GrpcBinaryFilesRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BinaryFileServiceServer).FindBinaryFilesMetaData(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: BinaryFileService_FindBinaryFilesMetaData_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BinaryFileServiceServer).FindBinaryFilesMetaData(ctx, req.(*GrpcBinaryFilesRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _BinaryFileService_GetAttachments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GrpcGetAttachmentsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BinaryFileServiceServer).GetAttachments(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: BinaryFileService_GetAttachments_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BinaryFileServiceServer).GetAttachments(ctx, req.(*GrpcGetAttachmentsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _BinaryFileService_GetRepresentations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GrpcGetRepresentationsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BinaryFileServiceServer).GetRepresentations(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: BinaryFileService_GetRepresentations_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BinaryFileServiceServer).GetRepresentations(ctx, req.(*GrpcGetRepresentationsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// BinaryFileService_ServiceDesc is the grpc.ServiceDesc for BinaryFileService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var BinaryFileService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileService", + HandlerType: (*BinaryFileServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "FindBinaryFilesMetaData", + Handler: _BinaryFileService_FindBinaryFilesMetaData_Handler, + }, + { + MethodName: "GetAttachments", + Handler: _BinaryFileService_GetAttachments_Handler, + }, + { + MethodName: "GetRepresentations", + Handler: _BinaryFileService_GetRepresentations_Handler, + }, + }, + Streams: []grpc.StreamDesc{ + { + StreamName: "UploadBinaryFileAsStream", + Handler: _BinaryFileService_UploadBinaryFileAsStream_Handler, + ClientStreams: true, + }, + { + StreamName: "GetBinaryFileContent", + Handler: _BinaryFileService_GetBinaryFileContent_Handler, + ServerStreams: true, + }, + }, + Metadata: "binaryfile.proto", +} diff --git a/gen/go/callcontext.pb.go b/gen/go/callcontext.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..8ab7e92d30513004a7f9cc9c9213ab6a39ac803d --- /dev/null +++ b/gen/go/callcontext.pb.go @@ -0,0 +1,274 @@ +// +// Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc (unknown) +// source: callcontext.proto + +package de_ozgcloud_vorgang_grpc_command + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type GrpcCallContext struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Client string `protobuf:"bytes,1,opt,name=client,proto3" json:"client,omitempty"` + User *GrpcUser `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"` + RequestId string `protobuf:"bytes,3,opt,name=requestId,proto3" json:"requestId,omitempty"` +} + +func (x *GrpcCallContext) Reset() { + *x = GrpcCallContext{} + if protoimpl.UnsafeEnabled { + mi := &file_callcontext_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcCallContext) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcCallContext) ProtoMessage() {} + +func (x *GrpcCallContext) ProtoReflect() protoreflect.Message { + mi := &file_callcontext_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcCallContext.ProtoReflect.Descriptor instead. +func (*GrpcCallContext) Descriptor() ([]byte, []int) { + return file_callcontext_proto_rawDescGZIP(), []int{0} +} + +func (x *GrpcCallContext) GetClient() string { + if x != nil { + return x.Client + } + return "" +} + +func (x *GrpcCallContext) GetUser() *GrpcUser { + if x != nil { + return x.User + } + return nil +} + +func (x *GrpcCallContext) GetRequestId() string { + if x != nil { + return x.RequestId + } + return "" +} + +type GrpcUser struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // Deprecated: Marked as deprecated in callcontext.proto. + Roles []string `protobuf:"bytes,3,rep,name=roles,proto3" json:"roles,omitempty"` +} + +func (x *GrpcUser) Reset() { + *x = GrpcUser{} + if protoimpl.UnsafeEnabled { + mi := &file_callcontext_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcUser) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcUser) ProtoMessage() {} + +func (x *GrpcUser) ProtoReflect() protoreflect.Message { + mi := &file_callcontext_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcUser.ProtoReflect.Descriptor instead. +func (*GrpcUser) Descriptor() ([]byte, []int) { + return file_callcontext_proto_rawDescGZIP(), []int{1} +} + +func (x *GrpcUser) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GrpcUser) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +// Deprecated: Marked as deprecated in callcontext.proto. +func (x *GrpcUser) GetRoles() []string { + if x != nil { + return x.Roles + } + return nil +} + +var File_callcontext_proto protoreflect.FileDescriptor + +var file_callcontext_proto_rawDesc = []byte{ + 0x0a, 0x11, 0x63, 0x61, 0x6c, 0x6c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x12, 0x20, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, + 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x22, 0x87, 0x01, 0x0a, 0x0f, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, + 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x12, 0x3e, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2a, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, + 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, + 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, + 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, + 0x48, 0x0a, 0x08, 0x47, 0x72, 0x70, 0x63, 0x55, 0x73, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x18, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x02, + 0x18, 0x01, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x42, 0x22, 0x5a, 0x20, 0x64, 0x65, 0x2e, + 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, + 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x62, 0x06, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_callcontext_proto_rawDescOnce sync.Once + file_callcontext_proto_rawDescData = file_callcontext_proto_rawDesc +) + +func file_callcontext_proto_rawDescGZIP() []byte { + file_callcontext_proto_rawDescOnce.Do(func() { + file_callcontext_proto_rawDescData = protoimpl.X.CompressGZIP(file_callcontext_proto_rawDescData) + }) + return file_callcontext_proto_rawDescData +} + +var file_callcontext_proto_msgTypes = make([]protoimpl.MessageInfo, 2) +var file_callcontext_proto_goTypes = []any{ + (*GrpcCallContext)(nil), // 0: de.ozgcloud.vorgang.grpc.command.GrpcCallContext + (*GrpcUser)(nil), // 1: de.ozgcloud.vorgang.grpc.command.GrpcUser +} +var file_callcontext_proto_depIdxs = []int32{ + 1, // 0: de.ozgcloud.vorgang.grpc.command.GrpcCallContext.user:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcUser + 1, // [1:1] is the sub-list for method output_type + 1, // [1:1] is the sub-list for method input_type + 1, // [1:1] is the sub-list for extension type_name + 1, // [1:1] is the sub-list for extension extendee + 0, // [0:1] is the sub-list for field type_name +} + +func init() { file_callcontext_proto_init() } +func file_callcontext_proto_init() { + if File_callcontext_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_callcontext_proto_msgTypes[0].Exporter = func(v any, i int) any { + switch v := v.(*GrpcCallContext); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_callcontext_proto_msgTypes[1].Exporter = func(v any, i int) any { + switch v := v.(*GrpcUser); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_callcontext_proto_rawDesc, + NumEnums: 0, + NumMessages: 2, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_callcontext_proto_goTypes, + DependencyIndexes: file_callcontext_proto_depIdxs, + MessageInfos: file_callcontext_proto_msgTypes, + }.Build() + File_callcontext_proto = out.File + file_callcontext_proto_rawDesc = nil + file_callcontext_proto_goTypes = nil + file_callcontext_proto_depIdxs = nil +} diff --git a/gen/go/clientattribute.model.pb.go b/gen/go/clientattribute.model.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..b2aa4f58021355b0de8c8f4ade6cb0cf943d1875 --- /dev/null +++ b/gen/go/clientattribute.model.pb.go @@ -0,0 +1,405 @@ +// +// Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc (unknown) +// source: clientattribute.model.proto + +package de_ozgcloud_vorgang_grpc_clientAttribute + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type GrpcAccessPermission int32 + +const ( + GrpcAccessPermission_PRIVATE GrpcAccessPermission = 0 + GrpcAccessPermission_READ_ONLY GrpcAccessPermission = 1 + GrpcAccessPermission_READ_WRITE GrpcAccessPermission = 2 +) + +// Enum value maps for GrpcAccessPermission. +var ( + GrpcAccessPermission_name = map[int32]string{ + 0: "PRIVATE", + 1: "READ_ONLY", + 2: "READ_WRITE", + } + GrpcAccessPermission_value = map[string]int32{ + "PRIVATE": 0, + "READ_ONLY": 1, + "READ_WRITE": 2, + } +) + +func (x GrpcAccessPermission) Enum() *GrpcAccessPermission { + p := new(GrpcAccessPermission) + *p = x + return p +} + +func (x GrpcAccessPermission) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (GrpcAccessPermission) Descriptor() protoreflect.EnumDescriptor { + return file_clientattribute_model_proto_enumTypes[0].Descriptor() +} + +func (GrpcAccessPermission) Type() protoreflect.EnumType { + return &file_clientattribute_model_proto_enumTypes[0] +} + +func (x GrpcAccessPermission) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use GrpcAccessPermission.Descriptor instead. +func (GrpcAccessPermission) EnumDescriptor() ([]byte, []int) { + return file_clientattribute_model_proto_rawDescGZIP(), []int{0} +} + +type GrpcClientAttribute struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ClientName string `protobuf:"bytes,1,opt,name=clientName,proto3" json:"clientName,omitempty"` + AttributeName string `protobuf:"bytes,2,opt,name=attributeName,proto3" json:"attributeName,omitempty"` + Access GrpcAccessPermission `protobuf:"varint,3,opt,name=access,proto3,enum=de.ozgcloud.vorgang.grpc.clientAttribute.GrpcAccessPermission" json:"access,omitempty"` + Value *GrpcClientAttributeValue `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"` +} + +func (x *GrpcClientAttribute) Reset() { + *x = GrpcClientAttribute{} + if protoimpl.UnsafeEnabled { + mi := &file_clientattribute_model_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcClientAttribute) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcClientAttribute) ProtoMessage() {} + +func (x *GrpcClientAttribute) ProtoReflect() protoreflect.Message { + mi := &file_clientattribute_model_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcClientAttribute.ProtoReflect.Descriptor instead. +func (*GrpcClientAttribute) Descriptor() ([]byte, []int) { + return file_clientattribute_model_proto_rawDescGZIP(), []int{0} +} + +func (x *GrpcClientAttribute) GetClientName() string { + if x != nil { + return x.ClientName + } + return "" +} + +func (x *GrpcClientAttribute) GetAttributeName() string { + if x != nil { + return x.AttributeName + } + return "" +} + +func (x *GrpcClientAttribute) GetAccess() GrpcAccessPermission { + if x != nil { + return x.Access + } + return GrpcAccessPermission_PRIVATE +} + +func (x *GrpcClientAttribute) GetValue() *GrpcClientAttributeValue { + if x != nil { + return x.Value + } + return nil +} + +type GrpcClientAttributeValue struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Value: + // + // *GrpcClientAttributeValue_StringValue + // *GrpcClientAttributeValue_IntValue + // *GrpcClientAttributeValue_DoubleValue + // *GrpcClientAttributeValue_BoolValue + Value isGrpcClientAttributeValue_Value `protobuf_oneof:"value"` +} + +func (x *GrpcClientAttributeValue) Reset() { + *x = GrpcClientAttributeValue{} + if protoimpl.UnsafeEnabled { + mi := &file_clientattribute_model_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcClientAttributeValue) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcClientAttributeValue) ProtoMessage() {} + +func (x *GrpcClientAttributeValue) ProtoReflect() protoreflect.Message { + mi := &file_clientattribute_model_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcClientAttributeValue.ProtoReflect.Descriptor instead. +func (*GrpcClientAttributeValue) Descriptor() ([]byte, []int) { + return file_clientattribute_model_proto_rawDescGZIP(), []int{1} +} + +func (m *GrpcClientAttributeValue) GetValue() isGrpcClientAttributeValue_Value { + if m != nil { + return m.Value + } + return nil +} + +func (x *GrpcClientAttributeValue) GetStringValue() string { + if x, ok := x.GetValue().(*GrpcClientAttributeValue_StringValue); ok { + return x.StringValue + } + return "" +} + +func (x *GrpcClientAttributeValue) GetIntValue() int64 { + if x, ok := x.GetValue().(*GrpcClientAttributeValue_IntValue); ok { + return x.IntValue + } + return 0 +} + +func (x *GrpcClientAttributeValue) GetDoubleValue() float64 { + if x, ok := x.GetValue().(*GrpcClientAttributeValue_DoubleValue); ok { + return x.DoubleValue + } + return 0 +} + +func (x *GrpcClientAttributeValue) GetBoolValue() bool { + if x, ok := x.GetValue().(*GrpcClientAttributeValue_BoolValue); ok { + return x.BoolValue + } + return false +} + +type isGrpcClientAttributeValue_Value interface { + isGrpcClientAttributeValue_Value() +} + +type GrpcClientAttributeValue_StringValue struct { + StringValue string `protobuf:"bytes,1,opt,name=stringValue,proto3,oneof"` +} + +type GrpcClientAttributeValue_IntValue struct { + IntValue int64 `protobuf:"varint,2,opt,name=intValue,proto3,oneof"` +} + +type GrpcClientAttributeValue_DoubleValue struct { + DoubleValue float64 `protobuf:"fixed64,3,opt,name=doubleValue,proto3,oneof"` +} + +type GrpcClientAttributeValue_BoolValue struct { + BoolValue bool `protobuf:"varint,4,opt,name=boolValue,proto3,oneof"` +} + +func (*GrpcClientAttributeValue_StringValue) isGrpcClientAttributeValue_Value() {} + +func (*GrpcClientAttributeValue_IntValue) isGrpcClientAttributeValue_Value() {} + +func (*GrpcClientAttributeValue_DoubleValue) isGrpcClientAttributeValue_Value() {} + +func (*GrpcClientAttributeValue_BoolValue) isGrpcClientAttributeValue_Value() {} + +var File_clientattribute_model_proto protoreflect.FileDescriptor + +var file_clientattribute_model_proto_rawDesc = []byte{ + 0x0a, 0x1b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x28, 0x64, + 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, + 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x22, 0x8d, 0x02, 0x0a, 0x13, 0x47, 0x72, 0x70, 0x63, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, + 0x1e, 0x0a, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x24, 0x0a, 0x0d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x56, 0x0a, 0x06, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3e, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, + 0x2e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x2e, 0x47, 0x72, 0x70, 0x63, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x58, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x64, + 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, + 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xa9, 0x01, 0x0a, 0x18, 0x47, 0x72, 0x70, 0x63, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x12, 0x22, 0x0a, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1c, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x08, 0x69, 0x6e, + 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x22, 0x0a, 0x0b, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52, 0x0b, 0x64, + 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1e, 0x0a, 0x09, 0x62, 0x6f, + 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, + 0x09, 0x62, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x2a, 0x42, 0x0a, 0x14, 0x47, 0x72, 0x70, 0x63, 0x41, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0b, 0x0a, 0x07, 0x50, + 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x52, 0x45, 0x41, 0x44, + 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x45, 0x41, 0x44, 0x5f, + 0x57, 0x52, 0x49, 0x54, 0x45, 0x10, 0x02, 0x42, 0x2a, 0x5a, 0x28, 0x64, 0x65, 0x2e, 0x6f, 0x7a, + 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, + 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_clientattribute_model_proto_rawDescOnce sync.Once + file_clientattribute_model_proto_rawDescData = file_clientattribute_model_proto_rawDesc +) + +func file_clientattribute_model_proto_rawDescGZIP() []byte { + file_clientattribute_model_proto_rawDescOnce.Do(func() { + file_clientattribute_model_proto_rawDescData = protoimpl.X.CompressGZIP(file_clientattribute_model_proto_rawDescData) + }) + return file_clientattribute_model_proto_rawDescData +} + +var file_clientattribute_model_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_clientattribute_model_proto_msgTypes = make([]protoimpl.MessageInfo, 2) +var file_clientattribute_model_proto_goTypes = []any{ + (GrpcAccessPermission)(0), // 0: de.ozgcloud.vorgang.grpc.clientAttribute.GrpcAccessPermission + (*GrpcClientAttribute)(nil), // 1: de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttribute + (*GrpcClientAttributeValue)(nil), // 2: de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttributeValue +} +var file_clientattribute_model_proto_depIdxs = []int32{ + 0, // 0: de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttribute.access:type_name -> de.ozgcloud.vorgang.grpc.clientAttribute.GrpcAccessPermission + 2, // 1: de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttribute.value:type_name -> de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttributeValue + 2, // [2:2] is the sub-list for method output_type + 2, // [2:2] is the sub-list for method input_type + 2, // [2:2] is the sub-list for extension type_name + 2, // [2:2] is the sub-list for extension extendee + 0, // [0:2] is the sub-list for field type_name +} + +func init() { file_clientattribute_model_proto_init() } +func file_clientattribute_model_proto_init() { + if File_clientattribute_model_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_clientattribute_model_proto_msgTypes[0].Exporter = func(v any, i int) any { + switch v := v.(*GrpcClientAttribute); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_clientattribute_model_proto_msgTypes[1].Exporter = func(v any, i int) any { + switch v := v.(*GrpcClientAttributeValue); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_clientattribute_model_proto_msgTypes[1].OneofWrappers = []any{ + (*GrpcClientAttributeValue_StringValue)(nil), + (*GrpcClientAttributeValue_IntValue)(nil), + (*GrpcClientAttributeValue_DoubleValue)(nil), + (*GrpcClientAttributeValue_BoolValue)(nil), + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_clientattribute_model_proto_rawDesc, + NumEnums: 1, + NumMessages: 2, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_clientattribute_model_proto_goTypes, + DependencyIndexes: file_clientattribute_model_proto_depIdxs, + EnumInfos: file_clientattribute_model_proto_enumTypes, + MessageInfos: file_clientattribute_model_proto_msgTypes, + }.Build() + File_clientattribute_model_proto = out.File + file_clientattribute_model_proto_rawDesc = nil + file_clientattribute_model_proto_goTypes = nil + file_clientattribute_model_proto_depIdxs = nil +} diff --git a/gen/go/command.model.pb.go b/gen/go/command.model.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..356e9c0e69c7976c7d5831a1cdb1facc4edcb4a6 --- /dev/null +++ b/gen/go/command.model.pb.go @@ -0,0 +1,1785 @@ +// +// Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc (unknown) +// source: command.model.proto + +package de_ozgcloud_vorgang_grpc_command + +import ( + de_ozgcloud_vorgang_common "de.ozgcloud.vorgang.common" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type GrpcCommandResponse_GrpcResponseCode int32 + +const ( + GrpcCommandResponse_OK GrpcCommandResponse_GrpcResponseCode = 0 + GrpcCommandResponse_PENDING GrpcCommandResponse_GrpcResponseCode = 1 + GrpcCommandResponse_ERROR GrpcCommandResponse_GrpcResponseCode = 2 + GrpcCommandResponse_CONFLICT GrpcCommandResponse_GrpcResponseCode = 3 +) + +// Enum value maps for GrpcCommandResponse_GrpcResponseCode. +var ( + GrpcCommandResponse_GrpcResponseCode_name = map[int32]string{ + 0: "OK", + 1: "PENDING", + 2: "ERROR", + 3: "CONFLICT", + } + GrpcCommandResponse_GrpcResponseCode_value = map[string]int32{ + "OK": 0, + "PENDING": 1, + "ERROR": 2, + "CONFLICT": 3, + } +) + +func (x GrpcCommandResponse_GrpcResponseCode) Enum() *GrpcCommandResponse_GrpcResponseCode { + p := new(GrpcCommandResponse_GrpcResponseCode) + *p = x + return p +} + +func (x GrpcCommandResponse_GrpcResponseCode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (GrpcCommandResponse_GrpcResponseCode) Descriptor() protoreflect.EnumDescriptor { + return file_command_model_proto_enumTypes[0].Descriptor() +} + +func (GrpcCommandResponse_GrpcResponseCode) Type() protoreflect.EnumType { + return &file_command_model_proto_enumTypes[0] +} + +func (x GrpcCommandResponse_GrpcResponseCode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use GrpcCommandResponse_GrpcResponseCode.Descriptor instead. +func (GrpcCommandResponse_GrpcResponseCode) EnumDescriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{1, 0} +} + +type GrpcCreateCommandRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CallContext *GrpcCallContext `protobuf:"bytes,1,opt,name=callContext,proto3" json:"callContext,omitempty"` + VorgangId string `protobuf:"bytes,2,opt,name=vorgangId,proto3" json:"vorgangId,omitempty"` + RelationId string `protobuf:"bytes,4,opt,name=relationId,proto3" json:"relationId,omitempty"` + RelationVersion int64 `protobuf:"varint,5,opt,name=relationVersion,proto3" json:"relationVersion,omitempty"` + RedirectRequest *GrpcRedirectRequest `protobuf:"bytes,12,opt,name=redirectRequest,proto3" json:"redirectRequest,omitempty"` + Body []*GrpcCommandBodyField `protobuf:"bytes,15,rep,name=body,proto3" json:"body,omitempty"` + BodyObj *de_ozgcloud_vorgang_common.GrpcObject `protobuf:"bytes,17,opt,name=bodyObj,proto3" json:"bodyObj,omitempty"` + OrderString string `protobuf:"bytes,21,opt,name=orderString,proto3" json:"orderString,omitempty"` +} + +func (x *GrpcCreateCommandRequest) Reset() { + *x = GrpcCreateCommandRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcCreateCommandRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcCreateCommandRequest) ProtoMessage() {} + +func (x *GrpcCreateCommandRequest) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcCreateCommandRequest.ProtoReflect.Descriptor instead. +func (*GrpcCreateCommandRequest) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{0} +} + +func (x *GrpcCreateCommandRequest) GetCallContext() *GrpcCallContext { + if x != nil { + return x.CallContext + } + return nil +} + +func (x *GrpcCreateCommandRequest) GetVorgangId() string { + if x != nil { + return x.VorgangId + } + return "" +} + +func (x *GrpcCreateCommandRequest) GetRelationId() string { + if x != nil { + return x.RelationId + } + return "" +} + +func (x *GrpcCreateCommandRequest) GetRelationVersion() int64 { + if x != nil { + return x.RelationVersion + } + return 0 +} + +func (x *GrpcCreateCommandRequest) GetRedirectRequest() *GrpcRedirectRequest { + if x != nil { + return x.RedirectRequest + } + return nil +} + +func (x *GrpcCreateCommandRequest) GetBody() []*GrpcCommandBodyField { + if x != nil { + return x.Body + } + return nil +} + +func (x *GrpcCreateCommandRequest) GetBodyObj() *de_ozgcloud_vorgang_common.GrpcObject { + if x != nil { + return x.BodyObj + } + return nil +} + +func (x *GrpcCreateCommandRequest) GetOrderString() string { + if x != nil { + return x.OrderString + } + return "" +} + +type GrpcCommandResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ResponseCode GrpcCommandResponse_GrpcResponseCode `protobuf:"varint,1,opt,name=responseCode,proto3,enum=de.ozgcloud.vorgang.grpc.command.GrpcCommandResponse_GrpcResponseCode" json:"responseCode,omitempty"` + MessageCode string `protobuf:"bytes,2,opt,name=messageCode,proto3" json:"messageCode,omitempty"` + MessageParameters []string `protobuf:"bytes,3,rep,name=messageParameters,proto3" json:"messageParameters,omitempty"` + Command *GrpcCommand `protobuf:"bytes,4,opt,name=command,proto3" json:"command,omitempty"` +} + +func (x *GrpcCommandResponse) Reset() { + *x = GrpcCommandResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcCommandResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcCommandResponse) ProtoMessage() {} + +func (x *GrpcCommandResponse) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcCommandResponse.ProtoReflect.Descriptor instead. +func (*GrpcCommandResponse) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{1} +} + +func (x *GrpcCommandResponse) GetResponseCode() GrpcCommandResponse_GrpcResponseCode { + if x != nil { + return x.ResponseCode + } + return GrpcCommandResponse_OK +} + +func (x *GrpcCommandResponse) GetMessageCode() string { + if x != nil { + return x.MessageCode + } + return "" +} + +func (x *GrpcCommandResponse) GetMessageParameters() []string { + if x != nil { + return x.MessageParameters + } + return nil +} + +func (x *GrpcCommandResponse) GetCommand() *GrpcCommand { + if x != nil { + return x.Command + } + return nil +} + +type GrpcRevokeCommandRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` +} + +func (x *GrpcRevokeCommandRequest) Reset() { + *x = GrpcRevokeCommandRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcRevokeCommandRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcRevokeCommandRequest) ProtoMessage() {} + +func (x *GrpcRevokeCommandRequest) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcRevokeCommandRequest.ProtoReflect.Descriptor instead. +func (*GrpcRevokeCommandRequest) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{2} +} + +func (x *GrpcRevokeCommandRequest) GetContext() *GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcRevokeCommandRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +type GrpcGetCommandRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` +} + +func (x *GrpcGetCommandRequest) Reset() { + *x = GrpcGetCommandRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetCommandRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetCommandRequest) ProtoMessage() {} + +func (x *GrpcGetCommandRequest) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetCommandRequest.ProtoReflect.Descriptor instead. +func (*GrpcGetCommandRequest) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{3} +} + +func (x *GrpcGetCommandRequest) GetContext() *GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcGetCommandRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +type GrpcSetCommandExecutedRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CommandId string `protobuf:"bytes,1,opt,name=commandId,proto3" json:"commandId,omitempty"` + CreatedResource string `protobuf:"bytes,2,opt,name=createdResource,proto3" json:"createdResource,omitempty"` +} + +func (x *GrpcSetCommandExecutedRequest) Reset() { + *x = GrpcSetCommandExecutedRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcSetCommandExecutedRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcSetCommandExecutedRequest) ProtoMessage() {} + +func (x *GrpcSetCommandExecutedRequest) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcSetCommandExecutedRequest.ProtoReflect.Descriptor instead. +func (*GrpcSetCommandExecutedRequest) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{4} +} + +func (x *GrpcSetCommandExecutedRequest) GetCommandId() string { + if x != nil { + return x.CommandId + } + return "" +} + +func (x *GrpcSetCommandExecutedRequest) GetCreatedResource() string { + if x != nil { + return x.CreatedResource + } + return "" +} + +type GrpcCommand struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + VorgangId string `protobuf:"bytes,2,opt,name=vorgangId,proto3" json:"vorgangId,omitempty"` + CreatedAt string `protobuf:"bytes,3,opt,name=createdAt,proto3" json:"createdAt,omitempty"` + FinishedAt string `protobuf:"bytes,4,opt,name=finishedAt,proto3" json:"finishedAt,omitempty"` + CreatedBy string `protobuf:"bytes,10,opt,name=createdBy,proto3" json:"createdBy,omitempty"` + CreatedByName string `protobuf:"bytes,11,opt,name=createdByName,proto3" json:"createdByName,omitempty"` + Status string `protobuf:"bytes,12,opt,name=status,proto3" json:"status,omitempty"` + ErrorMessage string `protobuf:"bytes,13,opt,name=errorMessage,proto3" json:"errorMessage,omitempty"` + RelationId string `protobuf:"bytes,14,opt,name=relationId,proto3" json:"relationId,omitempty"` + Body *GrpcCommandBody `protobuf:"bytes,16,opt,name=body,proto3" json:"body,omitempty"` + BodyObj *de_ozgcloud_vorgang_common.GrpcObject `protobuf:"bytes,17,opt,name=bodyObj,proto3" json:"bodyObj,omitempty"` + RedirectRequest *GrpcRedirectRequest `protobuf:"bytes,20,opt,name=redirectRequest,proto3" json:"redirectRequest,omitempty"` + OrderString string `protobuf:"bytes,21,opt,name=orderString,proto3" json:"orderString,omitempty"` + CreatedResource string `protobuf:"bytes,22,opt,name=createdResource,proto3" json:"createdResource,omitempty"` +} + +func (x *GrpcCommand) Reset() { + *x = GrpcCommand{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcCommand) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcCommand) ProtoMessage() {} + +func (x *GrpcCommand) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcCommand.ProtoReflect.Descriptor instead. +func (*GrpcCommand) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{5} +} + +func (x *GrpcCommand) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GrpcCommand) GetVorgangId() string { + if x != nil { + return x.VorgangId + } + return "" +} + +func (x *GrpcCommand) GetCreatedAt() string { + if x != nil { + return x.CreatedAt + } + return "" +} + +func (x *GrpcCommand) GetFinishedAt() string { + if x != nil { + return x.FinishedAt + } + return "" +} + +func (x *GrpcCommand) GetCreatedBy() string { + if x != nil { + return x.CreatedBy + } + return "" +} + +func (x *GrpcCommand) GetCreatedByName() string { + if x != nil { + return x.CreatedByName + } + return "" +} + +func (x *GrpcCommand) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *GrpcCommand) GetErrorMessage() string { + if x != nil { + return x.ErrorMessage + } + return "" +} + +func (x *GrpcCommand) GetRelationId() string { + if x != nil { + return x.RelationId + } + return "" +} + +func (x *GrpcCommand) GetBody() *GrpcCommandBody { + if x != nil { + return x.Body + } + return nil +} + +func (x *GrpcCommand) GetBodyObj() *de_ozgcloud_vorgang_common.GrpcObject { + if x != nil { + return x.BodyObj + } + return nil +} + +func (x *GrpcCommand) GetRedirectRequest() *GrpcRedirectRequest { + if x != nil { + return x.RedirectRequest + } + return nil +} + +func (x *GrpcCommand) GetOrderString() string { + if x != nil { + return x.OrderString + } + return "" +} + +func (x *GrpcCommand) GetCreatedResource() string { + if x != nil { + return x.CreatedResource + } + return "" +} + +type GrpcExistsPendingCommandsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + VorgangId string `protobuf:"bytes,2,opt,name=vorgangId,proto3" json:"vorgangId,omitempty"` +} + +func (x *GrpcExistsPendingCommandsRequest) Reset() { + *x = GrpcExistsPendingCommandsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcExistsPendingCommandsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcExistsPendingCommandsRequest) ProtoMessage() {} + +func (x *GrpcExistsPendingCommandsRequest) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcExistsPendingCommandsRequest.ProtoReflect.Descriptor instead. +func (*GrpcExistsPendingCommandsRequest) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{6} +} + +func (x *GrpcExistsPendingCommandsRequest) GetContext() *GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcExistsPendingCommandsRequest) GetVorgangId() string { + if x != nil { + return x.VorgangId + } + return "" +} + +type GrpcExistsPendingCommandsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ExistsPendingCommands bool `protobuf:"varint,1,opt,name=existsPendingCommands,proto3" json:"existsPendingCommands,omitempty"` +} + +func (x *GrpcExistsPendingCommandsResponse) Reset() { + *x = GrpcExistsPendingCommandsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcExistsPendingCommandsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcExistsPendingCommandsResponse) ProtoMessage() {} + +func (x *GrpcExistsPendingCommandsResponse) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcExistsPendingCommandsResponse.ProtoReflect.Descriptor instead. +func (*GrpcExistsPendingCommandsResponse) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{7} +} + +func (x *GrpcExistsPendingCommandsResponse) GetExistsPendingCommands() bool { + if x != nil { + return x.ExistsPendingCommands + } + return false +} + +type GrpcRedirectRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + Email string `protobuf:"bytes,2,opt,name=email,proto3" json:"email,omitempty"` + Password string `protobuf:"bytes,3,opt,name=password,proto3" json:"password,omitempty"` +} + +func (x *GrpcRedirectRequest) Reset() { + *x = GrpcRedirectRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcRedirectRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcRedirectRequest) ProtoMessage() {} + +func (x *GrpcRedirectRequest) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcRedirectRequest.ProtoReflect.Descriptor instead. +func (*GrpcRedirectRequest) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{8} +} + +func (x *GrpcRedirectRequest) GetContext() *GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcRedirectRequest) GetEmail() string { + if x != nil { + return x.Email + } + return "" +} + +func (x *GrpcRedirectRequest) GetPassword() string { + if x != nil { + return x.Password + } + return "" +} + +type GrpcGetPendingCommandsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + VorgangId string `protobuf:"bytes,2,opt,name=vorgangId,proto3" json:"vorgangId,omitempty"` +} + +func (x *GrpcGetPendingCommandsRequest) Reset() { + *x = GrpcGetPendingCommandsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetPendingCommandsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetPendingCommandsRequest) ProtoMessage() {} + +func (x *GrpcGetPendingCommandsRequest) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetPendingCommandsRequest.ProtoReflect.Descriptor instead. +func (*GrpcGetPendingCommandsRequest) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{9} +} + +func (x *GrpcGetPendingCommandsRequest) GetContext() *GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcGetPendingCommandsRequest) GetVorgangId() string { + if x != nil { + return x.VorgangId + } + return "" +} + +type GrpcFindCommandsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + VorgangId string `protobuf:"bytes,2,opt,name=vorgangId,proto3" json:"vorgangId,omitempty"` + Status []string `protobuf:"bytes,3,rep,name=status,proto3" json:"status,omitempty"` + OrderString string `protobuf:"bytes,5,opt,name=orderString,proto3" json:"orderString,omitempty"` +} + +func (x *GrpcFindCommandsRequest) Reset() { + *x = GrpcFindCommandsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcFindCommandsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcFindCommandsRequest) ProtoMessage() {} + +func (x *GrpcFindCommandsRequest) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcFindCommandsRequest.ProtoReflect.Descriptor instead. +func (*GrpcFindCommandsRequest) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{10} +} + +func (x *GrpcFindCommandsRequest) GetContext() *GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcFindCommandsRequest) GetVorgangId() string { + if x != nil { + return x.VorgangId + } + return "" +} + +func (x *GrpcFindCommandsRequest) GetStatus() []string { + if x != nil { + return x.Status + } + return nil +} + +func (x *GrpcFindCommandsRequest) GetOrderString() string { + if x != nil { + return x.OrderString + } + return "" +} + +type GrpcGetPendingCommandsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Command []*GrpcCommand `protobuf:"bytes,1,rep,name=command,proto3" json:"command,omitempty"` +} + +func (x *GrpcGetPendingCommandsResponse) Reset() { + *x = GrpcGetPendingCommandsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetPendingCommandsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetPendingCommandsResponse) ProtoMessage() {} + +func (x *GrpcGetPendingCommandsResponse) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetPendingCommandsResponse.ProtoReflect.Descriptor instead. +func (*GrpcGetPendingCommandsResponse) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{11} +} + +func (x *GrpcGetPendingCommandsResponse) GetCommand() []*GrpcCommand { + if x != nil { + return x.Command + } + return nil +} + +type GrpcCommandsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Command []*GrpcCommand `protobuf:"bytes,1,rep,name=command,proto3" json:"command,omitempty"` +} + +func (x *GrpcCommandsResponse) Reset() { + *x = GrpcCommandsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcCommandsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcCommandsResponse) ProtoMessage() {} + +func (x *GrpcCommandsResponse) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcCommandsResponse.ProtoReflect.Descriptor instead. +func (*GrpcCommandsResponse) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{12} +} + +func (x *GrpcCommandsResponse) GetCommand() []*GrpcCommand { + if x != nil { + return x.Command + } + return nil +} + +type GrpcCommandBody struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Field []*GrpcCommandBodyField `protobuf:"bytes,1,rep,name=field,proto3" json:"field,omitempty"` +} + +func (x *GrpcCommandBody) Reset() { + *x = GrpcCommandBody{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcCommandBody) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcCommandBody) ProtoMessage() {} + +func (x *GrpcCommandBody) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcCommandBody.ProtoReflect.Descriptor instead. +func (*GrpcCommandBody) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{13} +} + +func (x *GrpcCommandBody) GetField() []*GrpcCommandBodyField { + if x != nil { + return x.Field + } + return nil +} + +type GrpcCommandBodyField struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` +} + +func (x *GrpcCommandBodyField) Reset() { + *x = GrpcCommandBodyField{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcCommandBodyField) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcCommandBodyField) ProtoMessage() {} + +func (x *GrpcCommandBodyField) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcCommandBodyField.ProtoReflect.Descriptor instead. +func (*GrpcCommandBodyField) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{14} +} + +func (x *GrpcCommandBodyField) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *GrpcCommandBodyField) GetValue() string { + if x != nil { + return x.Value + } + return "" +} + +type GrpcEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *GrpcEmpty) Reset() { + *x = GrpcEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcEmpty) ProtoMessage() {} + +func (x *GrpcEmpty) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcEmpty.ProtoReflect.Descriptor instead. +func (*GrpcEmpty) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{15} +} + +type GrpcAddSubCommandsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ParentId string `protobuf:"bytes,1,opt,name=parentId,proto3" json:"parentId,omitempty"` + ExecutionMode string `protobuf:"bytes,2,opt,name=executionMode,proto3" json:"executionMode,omitempty"` + CompletedIfSubsCompleted bool `protobuf:"varint,3,opt,name=completedIfSubsCompleted,proto3" json:"completedIfSubsCompleted,omitempty"` + SubCommands []*GrpcCreateCommand `protobuf:"bytes,4,rep,name=subCommands,proto3" json:"subCommands,omitempty"` +} + +func (x *GrpcAddSubCommandsRequest) Reset() { + *x = GrpcAddSubCommandsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcAddSubCommandsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcAddSubCommandsRequest) ProtoMessage() {} + +func (x *GrpcAddSubCommandsRequest) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcAddSubCommandsRequest.ProtoReflect.Descriptor instead. +func (*GrpcAddSubCommandsRequest) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{16} +} + +func (x *GrpcAddSubCommandsRequest) GetParentId() string { + if x != nil { + return x.ParentId + } + return "" +} + +func (x *GrpcAddSubCommandsRequest) GetExecutionMode() string { + if x != nil { + return x.ExecutionMode + } + return "" +} + +func (x *GrpcAddSubCommandsRequest) GetCompletedIfSubsCompleted() bool { + if x != nil { + return x.CompletedIfSubsCompleted + } + return false +} + +func (x *GrpcAddSubCommandsRequest) GetSubCommands() []*GrpcCreateCommand { + if x != nil { + return x.SubCommands + } + return nil +} + +type GrpcCreateCommand struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Order string `protobuf:"bytes,1,opt,name=order,proto3" json:"order,omitempty"` + RelationId string `protobuf:"bytes,2,opt,name=relationId,proto3" json:"relationId,omitempty"` + RelationVersion int64 `protobuf:"varint,3,opt,name=relationVersion,proto3" json:"relationVersion,omitempty"` + BodyObj *de_ozgcloud_vorgang_common.GrpcObject `protobuf:"bytes,4,opt,name=bodyObj,proto3" json:"bodyObj,omitempty"` +} + +func (x *GrpcCreateCommand) Reset() { + *x = GrpcCreateCommand{} + if protoimpl.UnsafeEnabled { + mi := &file_command_model_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcCreateCommand) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcCreateCommand) ProtoMessage() {} + +func (x *GrpcCreateCommand) ProtoReflect() protoreflect.Message { + mi := &file_command_model_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcCreateCommand.ProtoReflect.Descriptor instead. +func (*GrpcCreateCommand) Descriptor() ([]byte, []int) { + return file_command_model_proto_rawDescGZIP(), []int{17} +} + +func (x *GrpcCreateCommand) GetOrder() string { + if x != nil { + return x.Order + } + return "" +} + +func (x *GrpcCreateCommand) GetRelationId() string { + if x != nil { + return x.RelationId + } + return "" +} + +func (x *GrpcCreateCommand) GetRelationVersion() int64 { + if x != nil { + return x.RelationVersion + } + return 0 +} + +func (x *GrpcCreateCommand) GetBodyObj() *de_ozgcloud_vorgang_common.GrpcObject { + if x != nil { + return x.BodyObj + } + return nil +} + +var File_command_model_proto protoreflect.FileDescriptor + +var file_command_model_proto_rawDesc = []byte{ + 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x20, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, + 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x1a, 0x11, 0x63, 0x61, 0x6c, 0x6c, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x12, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xe8, + 0x03, 0x0a, 0x18, 0x47, 0x72, 0x70, 0x63, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6d, + 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x53, 0x0a, 0x0b, 0x63, + 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, + 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, + 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x78, 0x74, 0x52, 0x0b, 0x63, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x28, + 0x0a, 0x0f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x5f, 0x0a, 0x0f, 0x72, 0x65, 0x64, 0x69, + 0x72, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, + 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0f, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, + 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4a, 0x0a, 0x04, 0x62, 0x6f, 0x64, + 0x79, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, + 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x42, 0x6f, 0x64, 0x79, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x52, + 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x40, 0x0a, 0x07, 0x62, 0x6f, 0x64, 0x79, 0x4f, 0x62, 0x6a, + 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, + 0x62, 0x6f, 0x64, 0x79, 0x4f, 0x62, 0x6a, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, + 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x72, + 0x64, 0x65, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0xdc, 0x02, 0x0a, 0x13, 0x47, 0x72, + 0x70, 0x63, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x6a, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x46, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, + 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x47, + 0x72, 0x70, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x52, + 0x0c, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, + 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, + 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x47, 0x0a, + 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, + 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x07, 0x63, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x22, 0x40, 0x0a, 0x10, 0x47, 0x72, 0x70, 0x63, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x06, 0x0a, 0x02, 0x4f, 0x4b, + 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, + 0x09, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, + 0x4e, 0x46, 0x4c, 0x49, 0x43, 0x54, 0x10, 0x03, 0x22, 0x77, 0x0a, 0x18, 0x47, 0x72, 0x70, 0x63, + 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, + 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, 0x6c, + 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, + 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x22, 0x74, 0x0a, 0x15, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, + 0x61, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, + 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, + 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, + 0x72, 0x70, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x67, 0x0a, 0x1d, 0x47, 0x72, 0x70, 0x63, 0x53, + 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, + 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, + 0x61, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, + 0x6d, 0x61, 0x6e, 0x64, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x22, 0xcf, 0x04, 0x0a, 0x0b, 0x47, 0x72, 0x70, 0x63, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, + 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x12, 0x1c, + 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1e, 0x0a, 0x0a, + 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x65, 0x72, 0x72, 0x6f, + 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, + 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x45, 0x0a, 0x04, + 0x62, 0x6f, 0x64, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, + 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, + 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, + 0x70, 0x63, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62, + 0x6f, 0x64, 0x79, 0x12, 0x40, 0x0a, 0x07, 0x62, 0x6f, 0x64, 0x79, 0x4f, 0x62, 0x6a, 0x18, 0x11, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x62, 0x6f, + 0x64, 0x79, 0x4f, 0x62, 0x6a, 0x12, 0x5f, 0x0a, 0x0f, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, + 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0f, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x53, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x22, 0x8d, 0x01, 0x0a, 0x20, 0x47, 0x72, 0x70, 0x63, 0x45, 0x78, 0x69, 0x73, 0x74, + 0x73, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, + 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, + 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, + 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x78, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, + 0x49, 0x64, 0x22, 0x59, 0x0a, 0x21, 0x47, 0x72, 0x70, 0x63, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, + 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x65, 0x78, 0x69, 0x73, 0x74, + 0x73, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x50, 0x65, + 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x22, 0x94, 0x01, + 0x0a, 0x13, 0x47, 0x72, 0x70, 0x63, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, + 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, + 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x78, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, + 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, + 0x77, 0x6f, 0x72, 0x64, 0x22, 0x8a, 0x01, 0x0a, 0x1d, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, + 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, + 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, + 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x78, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, + 0x64, 0x22, 0xbe, 0x01, 0x0a, 0x17, 0x47, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x6f, + 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, + 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, + 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, + 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x6f, + 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, + 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x22, 0x69, 0x0a, 0x1e, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, + 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, + 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x6f, 0x6d, + 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x22, 0x5f, 0x0a, + 0x14, 0x47, 0x72, 0x70, 0x63, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, + 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x6f, + 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x22, 0x5f, + 0x0a, 0x0f, 0x47, 0x72, 0x70, 0x63, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x42, 0x6f, 0x64, + 0x79, 0x12, 0x4c, 0x0a, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x36, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, + 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, + 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x42, + 0x6f, 0x64, 0x79, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x52, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, + 0x40, 0x0a, 0x14, 0x47, 0x72, 0x70, 0x63, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x42, 0x6f, + 0x64, 0x79, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x22, 0x0b, 0x0a, 0x09, 0x47, 0x72, 0x70, 0x63, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xf0, + 0x01, 0x0a, 0x19, 0x47, 0x72, 0x70, 0x63, 0x41, 0x64, 0x64, 0x53, 0x75, 0x62, 0x43, 0x6f, 0x6d, + 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, + 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x65, 0x78, 0x65, 0x63, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x3a, + 0x0a, 0x18, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x49, 0x66, 0x53, 0x75, 0x62, + 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x18, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x49, 0x66, 0x53, 0x75, 0x62, + 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x55, 0x0a, 0x0b, 0x73, 0x75, + 0x62, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x33, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, + 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, + 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6d, + 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x0b, 0x73, 0x75, 0x62, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, + 0x73, 0x22, 0xb5, 0x01, 0x0a, 0x11, 0x47, 0x72, 0x70, 0x63, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x1e, 0x0a, + 0x0a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x28, 0x0a, + 0x0f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x07, 0x62, 0x6f, 0x64, 0x79, 0x4f, + 0x62, 0x6a, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, + 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x52, 0x07, 0x62, 0x6f, 0x64, 0x79, 0x4f, 0x62, 0x6a, 0x42, 0x22, 0x5a, 0x20, 0x64, 0x65, 0x2e, + 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, + 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x62, 0x06, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_command_model_proto_rawDescOnce sync.Once + file_command_model_proto_rawDescData = file_command_model_proto_rawDesc +) + +func file_command_model_proto_rawDescGZIP() []byte { + file_command_model_proto_rawDescOnce.Do(func() { + file_command_model_proto_rawDescData = protoimpl.X.CompressGZIP(file_command_model_proto_rawDescData) + }) + return file_command_model_proto_rawDescData +} + +var file_command_model_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_command_model_proto_msgTypes = make([]protoimpl.MessageInfo, 18) +var file_command_model_proto_goTypes = []any{ + (GrpcCommandResponse_GrpcResponseCode)(0), // 0: de.ozgcloud.vorgang.grpc.command.GrpcCommandResponse.GrpcResponseCode + (*GrpcCreateCommandRequest)(nil), // 1: de.ozgcloud.vorgang.grpc.command.GrpcCreateCommandRequest + (*GrpcCommandResponse)(nil), // 2: de.ozgcloud.vorgang.grpc.command.GrpcCommandResponse + (*GrpcRevokeCommandRequest)(nil), // 3: de.ozgcloud.vorgang.grpc.command.GrpcRevokeCommandRequest + (*GrpcGetCommandRequest)(nil), // 4: de.ozgcloud.vorgang.grpc.command.GrpcGetCommandRequest + (*GrpcSetCommandExecutedRequest)(nil), // 5: de.ozgcloud.vorgang.grpc.command.GrpcSetCommandExecutedRequest + (*GrpcCommand)(nil), // 6: de.ozgcloud.vorgang.grpc.command.GrpcCommand + (*GrpcExistsPendingCommandsRequest)(nil), // 7: de.ozgcloud.vorgang.grpc.command.GrpcExistsPendingCommandsRequest + (*GrpcExistsPendingCommandsResponse)(nil), // 8: de.ozgcloud.vorgang.grpc.command.GrpcExistsPendingCommandsResponse + (*GrpcRedirectRequest)(nil), // 9: de.ozgcloud.vorgang.grpc.command.GrpcRedirectRequest + (*GrpcGetPendingCommandsRequest)(nil), // 10: de.ozgcloud.vorgang.grpc.command.GrpcGetPendingCommandsRequest + (*GrpcFindCommandsRequest)(nil), // 11: de.ozgcloud.vorgang.grpc.command.GrpcFindCommandsRequest + (*GrpcGetPendingCommandsResponse)(nil), // 12: de.ozgcloud.vorgang.grpc.command.GrpcGetPendingCommandsResponse + (*GrpcCommandsResponse)(nil), // 13: de.ozgcloud.vorgang.grpc.command.GrpcCommandsResponse + (*GrpcCommandBody)(nil), // 14: de.ozgcloud.vorgang.grpc.command.GrpcCommandBody + (*GrpcCommandBodyField)(nil), // 15: de.ozgcloud.vorgang.grpc.command.GrpcCommandBodyField + (*GrpcEmpty)(nil), // 16: de.ozgcloud.vorgang.grpc.command.GrpcEmpty + (*GrpcAddSubCommandsRequest)(nil), // 17: de.ozgcloud.vorgang.grpc.command.GrpcAddSubCommandsRequest + (*GrpcCreateCommand)(nil), // 18: de.ozgcloud.vorgang.grpc.command.GrpcCreateCommand + (*GrpcCallContext)(nil), // 19: de.ozgcloud.vorgang.grpc.command.GrpcCallContext + (*de_ozgcloud_vorgang_common.GrpcObject)(nil), // 20: de.ozgcloud.vorgang.common.GrpcObject +} +var file_command_model_proto_depIdxs = []int32{ + 19, // 0: de.ozgcloud.vorgang.grpc.command.GrpcCreateCommandRequest.callContext:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 9, // 1: de.ozgcloud.vorgang.grpc.command.GrpcCreateCommandRequest.redirectRequest:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcRedirectRequest + 15, // 2: de.ozgcloud.vorgang.grpc.command.GrpcCreateCommandRequest.body:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCommandBodyField + 20, // 3: de.ozgcloud.vorgang.grpc.command.GrpcCreateCommandRequest.bodyObj:type_name -> de.ozgcloud.vorgang.common.GrpcObject + 0, // 4: de.ozgcloud.vorgang.grpc.command.GrpcCommandResponse.responseCode:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCommandResponse.GrpcResponseCode + 6, // 5: de.ozgcloud.vorgang.grpc.command.GrpcCommandResponse.command:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCommand + 19, // 6: de.ozgcloud.vorgang.grpc.command.GrpcRevokeCommandRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 19, // 7: de.ozgcloud.vorgang.grpc.command.GrpcGetCommandRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 14, // 8: de.ozgcloud.vorgang.grpc.command.GrpcCommand.body:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCommandBody + 20, // 9: de.ozgcloud.vorgang.grpc.command.GrpcCommand.bodyObj:type_name -> de.ozgcloud.vorgang.common.GrpcObject + 9, // 10: de.ozgcloud.vorgang.grpc.command.GrpcCommand.redirectRequest:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcRedirectRequest + 19, // 11: de.ozgcloud.vorgang.grpc.command.GrpcExistsPendingCommandsRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 19, // 12: de.ozgcloud.vorgang.grpc.command.GrpcRedirectRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 19, // 13: de.ozgcloud.vorgang.grpc.command.GrpcGetPendingCommandsRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 19, // 14: de.ozgcloud.vorgang.grpc.command.GrpcFindCommandsRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 6, // 15: de.ozgcloud.vorgang.grpc.command.GrpcGetPendingCommandsResponse.command:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCommand + 6, // 16: de.ozgcloud.vorgang.grpc.command.GrpcCommandsResponse.command:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCommand + 15, // 17: de.ozgcloud.vorgang.grpc.command.GrpcCommandBody.field:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCommandBodyField + 18, // 18: de.ozgcloud.vorgang.grpc.command.GrpcAddSubCommandsRequest.subCommands:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCreateCommand + 20, // 19: de.ozgcloud.vorgang.grpc.command.GrpcCreateCommand.bodyObj:type_name -> de.ozgcloud.vorgang.common.GrpcObject + 20, // [20:20] is the sub-list for method output_type + 20, // [20:20] is the sub-list for method input_type + 20, // [20:20] is the sub-list for extension type_name + 20, // [20:20] is the sub-list for extension extendee + 0, // [0:20] is the sub-list for field type_name +} + +func init() { file_command_model_proto_init() } +func file_command_model_proto_init() { + if File_command_model_proto != nil { + return + } + file_callcontext_proto_init() + if !protoimpl.UnsafeEnabled { + file_command_model_proto_msgTypes[0].Exporter = func(v any, i int) any { + switch v := v.(*GrpcCreateCommandRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[1].Exporter = func(v any, i int) any { + switch v := v.(*GrpcCommandResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[2].Exporter = func(v any, i int) any { + switch v := v.(*GrpcRevokeCommandRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[3].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetCommandRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[4].Exporter = func(v any, i int) any { + switch v := v.(*GrpcSetCommandExecutedRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[5].Exporter = func(v any, i int) any { + switch v := v.(*GrpcCommand); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[6].Exporter = func(v any, i int) any { + switch v := v.(*GrpcExistsPendingCommandsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[7].Exporter = func(v any, i int) any { + switch v := v.(*GrpcExistsPendingCommandsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[8].Exporter = func(v any, i int) any { + switch v := v.(*GrpcRedirectRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[9].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetPendingCommandsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[10].Exporter = func(v any, i int) any { + switch v := v.(*GrpcFindCommandsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[11].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetPendingCommandsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[12].Exporter = func(v any, i int) any { + switch v := v.(*GrpcCommandsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[13].Exporter = func(v any, i int) any { + switch v := v.(*GrpcCommandBody); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[14].Exporter = func(v any, i int) any { + switch v := v.(*GrpcCommandBodyField); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[15].Exporter = func(v any, i int) any { + switch v := v.(*GrpcEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[16].Exporter = func(v any, i int) any { + switch v := v.(*GrpcAddSubCommandsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_command_model_proto_msgTypes[17].Exporter = func(v any, i int) any { + switch v := v.(*GrpcCreateCommand); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_command_model_proto_rawDesc, + NumEnums: 1, + NumMessages: 18, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_command_model_proto_goTypes, + DependencyIndexes: file_command_model_proto_depIdxs, + EnumInfos: file_command_model_proto_enumTypes, + MessageInfos: file_command_model_proto_msgTypes, + }.Build() + File_command_model_proto = out.File + file_command_model_proto_rawDesc = nil + file_command_model_proto_goTypes = nil + file_command_model_proto_depIdxs = nil +} diff --git a/gen/go/command.pb.go b/gen/go/command.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..68c7b68674fe81f62230eb2af01c20e89be69616 --- /dev/null +++ b/gen/go/command.pb.go @@ -0,0 +1,103 @@ +// +// Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc (unknown) +// source: command.proto + +package de_ozgcloud_vorgang_grpc_command + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +var File_command_proto protoreflect.FileDescriptor + +var file_command_proto_rawDesc = []byte{ + 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, + 0x20, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x1a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x88, 0x01, 0x0a, 0x0e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, + 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x76, 0x0a, 0x0a, 0x47, 0x65, 0x74, + 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x37, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, + 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x47, + 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x2d, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, + 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, + 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x22, + 0x00, 0x42, 0x22, 0x5a, 0x20, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, + 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var file_command_proto_goTypes = []any{ + (*GrpcGetCommandRequest)(nil), // 0: de.ozgcloud.vorgang.grpc.command.GrpcGetCommandRequest + (*GrpcCommand)(nil), // 1: de.ozgcloud.vorgang.grpc.command.GrpcCommand +} +var file_command_proto_depIdxs = []int32{ + 0, // 0: de.ozgcloud.vorgang.grpc.command.CommandService.GetCommand:input_type -> de.ozgcloud.vorgang.grpc.command.GrpcGetCommandRequest + 1, // 1: de.ozgcloud.vorgang.grpc.command.CommandService.GetCommand:output_type -> de.ozgcloud.vorgang.grpc.command.GrpcCommand + 1, // [1:2] is the sub-list for method output_type + 0, // [0:1] is the sub-list for method input_type + 0, // [0:0] is the sub-list for extension type_name + 0, // [0:0] is the sub-list for extension extendee + 0, // [0:0] is the sub-list for field type_name +} + +func init() { file_command_proto_init() } +func file_command_proto_init() { + if File_command_proto != nil { + return + } + file_command_model_proto_init() + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_command_proto_rawDesc, + NumEnums: 0, + NumMessages: 0, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_command_proto_goTypes, + DependencyIndexes: file_command_proto_depIdxs, + }.Build() + File_command_proto = out.File + file_command_proto_rawDesc = nil + file_command_proto_goTypes = nil + file_command_proto_depIdxs = nil +} diff --git a/gen/go/command.pb.gw.go b/gen/go/command.pb.gw.go new file mode 100644 index 0000000000000000000000000000000000000000..cf99ef206598dcdf27c1f4d4196722311d07fbb5 --- /dev/null +++ b/gen/go/command.pb.gw.go @@ -0,0 +1,207 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: command.proto + +/* +Package de_ozgcloud_vorgang_grpc_command is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package de_ozgcloud_vorgang_grpc_command + +import ( + "context" + "io" + "net/http" + + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/metadata" + "google.golang.org/grpc/status" + "google.golang.org/protobuf/proto" +) + +// Suppress "imported and not used" errors +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray +var _ = metadata.Join + +var ( + filter_CommandService_GetCommand_0 = &utilities.DoubleArray{Encoding: map[string]int{"id": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_CommandService_GetCommand_0(ctx context.Context, marshaler runtime.Marshaler, client CommandServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GrpcGetCommandRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") + } + + protoReq.Id, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_CommandService_GetCommand_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.GetCommand(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CommandService_GetCommand_0(ctx context.Context, marshaler runtime.Marshaler, server CommandServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GrpcGetCommandRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") + } + + protoReq.Id, err = runtime.String(val) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_CommandService_GetCommand_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.GetCommand(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterCommandServiceHandlerServer registers the http handlers for service CommandService to "mux". +// UnaryRPC :call CommandServiceServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterCommandServiceHandlerFromEndpoint instead. +func RegisterCommandServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server CommandServiceServer) error { + + mux.Handle("GET", pattern_CommandService_GetCommand_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/de.ozgcloud.vorgang.grpc.command.CommandService/GetCommand", runtime.WithHTTPPathPattern("/api/command/{id}")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CommandService_GetCommand_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CommandService_GetCommand_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterCommandServiceHandlerFromEndpoint is same as RegisterCommandServiceHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterCommandServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.NewClient(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterCommandServiceHandler(ctx, mux, conn) +} + +// RegisterCommandServiceHandler registers the http handlers for service CommandService to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterCommandServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterCommandServiceHandlerClient(ctx, mux, NewCommandServiceClient(conn)) +} + +// RegisterCommandServiceHandlerClient registers the http handlers for service CommandService +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "CommandServiceClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "CommandServiceClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "CommandServiceClient" to call the correct interceptors. +func RegisterCommandServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client CommandServiceClient) error { + + mux.Handle("GET", pattern_CommandService_GetCommand_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/de.ozgcloud.vorgang.grpc.command.CommandService/GetCommand", runtime.WithHTTPPathPattern("/api/command/{id}")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CommandService_GetCommand_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CommandService_GetCommand_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_CommandService_GetCommand_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"api", "command", "id"}, "")) +) + +var ( + forward_CommandService_GetCommand_0 = runtime.ForwardResponseMessage +) diff --git a/gen/go/command_grpc.pb.go b/gen/go/command_grpc.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..65d439d32189cf25aeffe26c9377a607e88efe86 --- /dev/null +++ b/gen/go/command_grpc.pb.go @@ -0,0 +1,133 @@ +// +// Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.4.0 +// - protoc (unknown) +// source: command.proto + +package de_ozgcloud_vorgang_grpc_command + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.62.0 or later. +const _ = grpc.SupportPackageIsVersion8 + +const ( + CommandService_GetCommand_FullMethodName = "/de.ozgcloud.vorgang.grpc.command.CommandService/GetCommand" +) + +// CommandServiceClient is the client API for CommandService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type CommandServiceClient interface { + GetCommand(ctx context.Context, in *GrpcGetCommandRequest, opts ...grpc.CallOption) (*GrpcCommand, error) +} + +type commandServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewCommandServiceClient(cc grpc.ClientConnInterface) CommandServiceClient { + return &commandServiceClient{cc} +} + +func (c *commandServiceClient) GetCommand(ctx context.Context, in *GrpcGetCommandRequest, opts ...grpc.CallOption) (*GrpcCommand, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GrpcCommand) + err := c.cc.Invoke(ctx, CommandService_GetCommand_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// CommandServiceServer is the server API for CommandService service. +// All implementations must embed UnimplementedCommandServiceServer +// for forward compatibility +type CommandServiceServer interface { + GetCommand(context.Context, *GrpcGetCommandRequest) (*GrpcCommand, error) + mustEmbedUnimplementedCommandServiceServer() +} + +// UnimplementedCommandServiceServer must be embedded to have forward compatible implementations. +type UnimplementedCommandServiceServer struct { +} + +func (UnimplementedCommandServiceServer) GetCommand(context.Context, *GrpcGetCommandRequest) (*GrpcCommand, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetCommand not implemented") +} +func (UnimplementedCommandServiceServer) mustEmbedUnimplementedCommandServiceServer() {} + +// UnsafeCommandServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to CommandServiceServer will +// result in compilation errors. +type UnsafeCommandServiceServer interface { + mustEmbedUnimplementedCommandServiceServer() +} + +func RegisterCommandServiceServer(s grpc.ServiceRegistrar, srv CommandServiceServer) { + s.RegisterService(&CommandService_ServiceDesc, srv) +} + +func _CommandService_GetCommand_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GrpcGetCommandRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CommandServiceServer).GetCommand(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: CommandService_GetCommand_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CommandServiceServer).GetCommand(ctx, req.(*GrpcGetCommandRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// CommandService_ServiceDesc is the grpc.ServiceDesc for CommandService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var CommandService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "de.ozgcloud.vorgang.grpc.command.CommandService", + HandlerType: (*CommandServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "GetCommand", + Handler: _CommandService_GetCommand_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "command.proto", +} diff --git a/gen/go/common.model.pb.go b/gen/go/common.model.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..7642901ad1d9a3d0069a740719923fbc45407bd0 --- /dev/null +++ b/gen/go/common.model.pb.go @@ -0,0 +1,431 @@ +// +// Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc (unknown) +// source: common.model.proto + +package de_ozgcloud_vorgang_common + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type GrpcQueryOperator int32 + +const ( + GrpcQueryOperator_GREATER_THEN GrpcQueryOperator = 0 // > + GrpcQueryOperator_GREATER_THEN_OR_EQUAL_TO GrpcQueryOperator = 1 // >= + GrpcQueryOperator_LESS_THEN GrpcQueryOperator = 2 // < + GrpcQueryOperator_LESS_THEN_OR_EQUAL_TO GrpcQueryOperator = 3 // <= + GrpcQueryOperator_EQUAL GrpcQueryOperator = 4 // = + GrpcQueryOperator_UNEQUAL GrpcQueryOperator = 5 // <> + GrpcQueryOperator_IS_NULL GrpcQueryOperator = 6 + GrpcQueryOperator_IS_EMPTY GrpcQueryOperator = 7 + GrpcQueryOperator_EXISTS GrpcQueryOperator = 8 + GrpcQueryOperator_NOT_EXIST GrpcQueryOperator = 9 +) + +// Enum value maps for GrpcQueryOperator. +var ( + GrpcQueryOperator_name = map[int32]string{ + 0: "GREATER_THEN", + 1: "GREATER_THEN_OR_EQUAL_TO", + 2: "LESS_THEN", + 3: "LESS_THEN_OR_EQUAL_TO", + 4: "EQUAL", + 5: "UNEQUAL", + 6: "IS_NULL", + 7: "IS_EMPTY", + 8: "EXISTS", + 9: "NOT_EXIST", + } + GrpcQueryOperator_value = map[string]int32{ + "GREATER_THEN": 0, + "GREATER_THEN_OR_EQUAL_TO": 1, + "LESS_THEN": 2, + "LESS_THEN_OR_EQUAL_TO": 3, + "EQUAL": 4, + "UNEQUAL": 5, + "IS_NULL": 6, + "IS_EMPTY": 7, + "EXISTS": 8, + "NOT_EXIST": 9, + } +) + +func (x GrpcQueryOperator) Enum() *GrpcQueryOperator { + p := new(GrpcQueryOperator) + *p = x + return p +} + +func (x GrpcQueryOperator) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (GrpcQueryOperator) Descriptor() protoreflect.EnumDescriptor { + return file_common_model_proto_enumTypes[0].Descriptor() +} + +func (GrpcQueryOperator) Type() protoreflect.EnumType { + return &file_common_model_proto_enumTypes[0] +} + +func (x GrpcQueryOperator) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use GrpcQueryOperator.Descriptor instead. +func (GrpcQueryOperator) EnumDescriptor() ([]byte, []int) { + return file_common_model_proto_rawDescGZIP(), []int{0} +} + +type GrpcObject struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Property []*GrpcProperty `protobuf:"bytes,1,rep,name=property,proto3" json:"property,omitempty"` + SubObject []*GrpcSubObject `protobuf:"bytes,2,rep,name=subObject,proto3" json:"subObject,omitempty"` +} + +func (x *GrpcObject) Reset() { + *x = GrpcObject{} + if protoimpl.UnsafeEnabled { + mi := &file_common_model_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcObject) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcObject) ProtoMessage() {} + +func (x *GrpcObject) ProtoReflect() protoreflect.Message { + mi := &file_common_model_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcObject.ProtoReflect.Descriptor instead. +func (*GrpcObject) Descriptor() ([]byte, []int) { + return file_common_model_proto_rawDescGZIP(), []int{0} +} + +func (x *GrpcObject) GetProperty() []*GrpcProperty { + if x != nil { + return x.Property + } + return nil +} + +func (x *GrpcObject) GetSubObject() []*GrpcSubObject { + if x != nil { + return x.SubObject + } + return nil +} + +type GrpcProperty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Value []string `protobuf:"bytes,2,rep,name=value,proto3" json:"value,omitempty"` +} + +func (x *GrpcProperty) Reset() { + *x = GrpcProperty{} + if protoimpl.UnsafeEnabled { + mi := &file_common_model_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcProperty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcProperty) ProtoMessage() {} + +func (x *GrpcProperty) ProtoReflect() protoreflect.Message { + mi := &file_common_model_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcProperty.ProtoReflect.Descriptor instead. +func (*GrpcProperty) Descriptor() ([]byte, []int) { + return file_common_model_proto_rawDescGZIP(), []int{1} +} + +func (x *GrpcProperty) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *GrpcProperty) GetValue() []string { + if x != nil { + return x.Value + } + return nil +} + +type GrpcSubObject struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Property []*GrpcProperty `protobuf:"bytes,2,rep,name=property,proto3" json:"property,omitempty"` + SubObject []*GrpcSubObject `protobuf:"bytes,3,rep,name=subObject,proto3" json:"subObject,omitempty"` +} + +func (x *GrpcSubObject) Reset() { + *x = GrpcSubObject{} + if protoimpl.UnsafeEnabled { + mi := &file_common_model_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcSubObject) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcSubObject) ProtoMessage() {} + +func (x *GrpcSubObject) ProtoReflect() protoreflect.Message { + mi := &file_common_model_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcSubObject.ProtoReflect.Descriptor instead. +func (*GrpcSubObject) Descriptor() ([]byte, []int) { + return file_common_model_proto_rawDescGZIP(), []int{2} +} + +func (x *GrpcSubObject) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *GrpcSubObject) GetProperty() []*GrpcProperty { + if x != nil { + return x.Property + } + return nil +} + +func (x *GrpcSubObject) GetSubObject() []*GrpcSubObject { + if x != nil { + return x.SubObject + } + return nil +} + +var File_common_model_proto protoreflect.FileDescriptor + +var file_common_model_proto_rawDesc = []byte{ + 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1a, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x22, 0x9b, 0x01, 0x0a, 0x0a, 0x47, 0x72, 0x70, 0x63, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, + 0x44, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x47, + 0x72, 0x70, 0x63, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x08, 0x70, 0x72, 0x6f, + 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x47, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, + 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x53, 0x75, 0x62, 0x4f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x52, 0x09, 0x73, 0x75, 0x62, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x38, + 0x0a, 0x0c, 0x47, 0x72, 0x70, 0x63, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xb2, 0x01, 0x0a, 0x0d, 0x47, 0x72, 0x70, + 0x63, 0x53, 0x75, 0x62, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x44, + 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x28, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, + 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x47, 0x72, + 0x70, 0x63, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x70, + 0x65, 0x72, 0x74, 0x79, 0x12, 0x47, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x4f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x63, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x53, 0x75, 0x62, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x52, 0x09, 0x73, 0x75, 0x62, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2a, 0xbb, 0x01, + 0x0a, 0x11, 0x47, 0x72, 0x70, 0x63, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x12, 0x10, 0x0a, 0x0c, 0x47, 0x52, 0x45, 0x41, 0x54, 0x45, 0x52, 0x5f, 0x54, + 0x48, 0x45, 0x4e, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x47, 0x52, 0x45, 0x41, 0x54, 0x45, 0x52, + 0x5f, 0x54, 0x48, 0x45, 0x4e, 0x5f, 0x4f, 0x52, 0x5f, 0x45, 0x51, 0x55, 0x41, 0x4c, 0x5f, 0x54, + 0x4f, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x4c, 0x45, 0x53, 0x53, 0x5f, 0x54, 0x48, 0x45, 0x4e, + 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x4c, 0x45, 0x53, 0x53, 0x5f, 0x54, 0x48, 0x45, 0x4e, 0x5f, + 0x4f, 0x52, 0x5f, 0x45, 0x51, 0x55, 0x41, 0x4c, 0x5f, 0x54, 0x4f, 0x10, 0x03, 0x12, 0x09, 0x0a, + 0x05, 0x45, 0x51, 0x55, 0x41, 0x4c, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x45, 0x51, + 0x55, 0x41, 0x4c, 0x10, 0x05, 0x12, 0x0b, 0x0a, 0x07, 0x49, 0x53, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, + 0x10, 0x06, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x53, 0x5f, 0x45, 0x4d, 0x50, 0x54, 0x59, 0x10, 0x07, + 0x12, 0x0a, 0x0a, 0x06, 0x45, 0x58, 0x49, 0x53, 0x54, 0x53, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, + 0x4e, 0x4f, 0x54, 0x5f, 0x45, 0x58, 0x49, 0x53, 0x54, 0x10, 0x09, 0x42, 0x1c, 0x5a, 0x1a, 0x64, + 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, + 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, +} + +var ( + file_common_model_proto_rawDescOnce sync.Once + file_common_model_proto_rawDescData = file_common_model_proto_rawDesc +) + +func file_common_model_proto_rawDescGZIP() []byte { + file_common_model_proto_rawDescOnce.Do(func() { + file_common_model_proto_rawDescData = protoimpl.X.CompressGZIP(file_common_model_proto_rawDescData) + }) + return file_common_model_proto_rawDescData +} + +var file_common_model_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_common_model_proto_msgTypes = make([]protoimpl.MessageInfo, 3) +var file_common_model_proto_goTypes = []any{ + (GrpcQueryOperator)(0), // 0: de.ozgcloud.vorgang.common.GrpcQueryOperator + (*GrpcObject)(nil), // 1: de.ozgcloud.vorgang.common.GrpcObject + (*GrpcProperty)(nil), // 2: de.ozgcloud.vorgang.common.GrpcProperty + (*GrpcSubObject)(nil), // 3: de.ozgcloud.vorgang.common.GrpcSubObject +} +var file_common_model_proto_depIdxs = []int32{ + 2, // 0: de.ozgcloud.vorgang.common.GrpcObject.property:type_name -> de.ozgcloud.vorgang.common.GrpcProperty + 3, // 1: de.ozgcloud.vorgang.common.GrpcObject.subObject:type_name -> de.ozgcloud.vorgang.common.GrpcSubObject + 2, // 2: de.ozgcloud.vorgang.common.GrpcSubObject.property:type_name -> de.ozgcloud.vorgang.common.GrpcProperty + 3, // 3: de.ozgcloud.vorgang.common.GrpcSubObject.subObject:type_name -> de.ozgcloud.vorgang.common.GrpcSubObject + 4, // [4:4] is the sub-list for method output_type + 4, // [4:4] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name +} + +func init() { file_common_model_proto_init() } +func file_common_model_proto_init() { + if File_common_model_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_common_model_proto_msgTypes[0].Exporter = func(v any, i int) any { + switch v := v.(*GrpcObject); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_common_model_proto_msgTypes[1].Exporter = func(v any, i int) any { + switch v := v.(*GrpcProperty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_common_model_proto_msgTypes[2].Exporter = func(v any, i int) any { + switch v := v.(*GrpcSubObject); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_common_model_proto_rawDesc, + NumEnums: 1, + NumMessages: 3, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_common_model_proto_goTypes, + DependencyIndexes: file_common_model_proto_depIdxs, + EnumInfos: file_common_model_proto_enumTypes, + MessageInfos: file_common_model_proto_msgTypes, + }.Build() + File_common_model_proto = out.File + file_common_model_proto_rawDesc = nil + file_common_model_proto_goTypes = nil + file_common_model_proto_depIdxs = nil +} diff --git a/gen/go/filemodel.pb.go b/gen/go/filemodel.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..e62581c0651a5b17cb63e966ba8ca8abb913befe --- /dev/null +++ b/gen/go/filemodel.pb.go @@ -0,0 +1,488 @@ +// +// Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc (unknown) +// source: filemodel.proto + +package de_ozgcloud_vorgang_grpc_file + +import ( + de_ozgcloud_vorgang_grpc_command "de.ozgcloud.vorgang.grpc.command" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type GrpcGetAttachmentsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *de_ozgcloud_vorgang_grpc_command.GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + EingangId string `protobuf:"bytes,2,opt,name=eingangId,proto3" json:"eingangId,omitempty"` +} + +func (x *GrpcGetAttachmentsRequest) Reset() { + *x = GrpcGetAttachmentsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_filemodel_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetAttachmentsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetAttachmentsRequest) ProtoMessage() {} + +func (x *GrpcGetAttachmentsRequest) ProtoReflect() protoreflect.Message { + mi := &file_filemodel_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetAttachmentsRequest.ProtoReflect.Descriptor instead. +func (*GrpcGetAttachmentsRequest) Descriptor() ([]byte, []int) { + return file_filemodel_proto_rawDescGZIP(), []int{0} +} + +func (x *GrpcGetAttachmentsRequest) GetContext() *de_ozgcloud_vorgang_grpc_command.GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcGetAttachmentsRequest) GetEingangId() string { + if x != nil { + return x.EingangId + } + return "" +} + +type GrpcGetAttachmentsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + File []*GrpcOzgFile `protobuf:"bytes,1,rep,name=file,proto3" json:"file,omitempty"` +} + +func (x *GrpcGetAttachmentsResponse) Reset() { + *x = GrpcGetAttachmentsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_filemodel_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetAttachmentsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetAttachmentsResponse) ProtoMessage() {} + +func (x *GrpcGetAttachmentsResponse) ProtoReflect() protoreflect.Message { + mi := &file_filemodel_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetAttachmentsResponse.ProtoReflect.Descriptor instead. +func (*GrpcGetAttachmentsResponse) Descriptor() ([]byte, []int) { + return file_filemodel_proto_rawDescGZIP(), []int{1} +} + +func (x *GrpcGetAttachmentsResponse) GetFile() []*GrpcOzgFile { + if x != nil { + return x.File + } + return nil +} + +type GrpcGetRepresentationsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *de_ozgcloud_vorgang_grpc_command.GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + EingangId string `protobuf:"bytes,2,opt,name=eingangId,proto3" json:"eingangId,omitempty"` +} + +func (x *GrpcGetRepresentationsRequest) Reset() { + *x = GrpcGetRepresentationsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_filemodel_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetRepresentationsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetRepresentationsRequest) ProtoMessage() {} + +func (x *GrpcGetRepresentationsRequest) ProtoReflect() protoreflect.Message { + mi := &file_filemodel_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetRepresentationsRequest.ProtoReflect.Descriptor instead. +func (*GrpcGetRepresentationsRequest) Descriptor() ([]byte, []int) { + return file_filemodel_proto_rawDescGZIP(), []int{2} +} + +func (x *GrpcGetRepresentationsRequest) GetContext() *de_ozgcloud_vorgang_grpc_command.GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcGetRepresentationsRequest) GetEingangId() string { + if x != nil { + return x.EingangId + } + return "" +} + +type GrpcGetRepresentationsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + File []*GrpcOzgFile `protobuf:"bytes,1,rep,name=file,proto3" json:"file,omitempty"` +} + +func (x *GrpcGetRepresentationsResponse) Reset() { + *x = GrpcGetRepresentationsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_filemodel_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetRepresentationsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetRepresentationsResponse) ProtoMessage() {} + +func (x *GrpcGetRepresentationsResponse) ProtoReflect() protoreflect.Message { + mi := &file_filemodel_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetRepresentationsResponse.ProtoReflect.Descriptor instead. +func (*GrpcGetRepresentationsResponse) Descriptor() ([]byte, []int) { + return file_filemodel_proto_rawDescGZIP(), []int{3} +} + +func (x *GrpcGetRepresentationsResponse) GetFile() []*GrpcOzgFile { + if x != nil { + return x.File + } + return nil +} + +type GrpcOzgFile struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Size int64 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"` + ContentType string `protobuf:"bytes,4,opt,name=contentType,proto3" json:"contentType,omitempty"` +} + +func (x *GrpcOzgFile) Reset() { + *x = GrpcOzgFile{} + if protoimpl.UnsafeEnabled { + mi := &file_filemodel_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcOzgFile) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcOzgFile) ProtoMessage() {} + +func (x *GrpcOzgFile) ProtoReflect() protoreflect.Message { + mi := &file_filemodel_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcOzgFile.ProtoReflect.Descriptor instead. +func (*GrpcOzgFile) Descriptor() ([]byte, []int) { + return file_filemodel_proto_rawDescGZIP(), []int{4} +} + +func (x *GrpcOzgFile) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GrpcOzgFile) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *GrpcOzgFile) GetSize() int64 { + if x != nil { + return x.Size + } + return 0 +} + +func (x *GrpcOzgFile) GetContentType() string { + if x != nil { + return x.ContentType + } + return "" +} + +var File_filemodel_proto protoreflect.FileDescriptor + +var file_filemodel_proto_rawDesc = []byte{ + 0x0a, 0x0f, 0x66, 0x69, 0x6c, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x12, 0x1d, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, + 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x66, 0x69, 0x6c, 0x65, + 0x1a, 0x11, 0x63, 0x61, 0x6c, 0x6c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x22, 0x86, 0x01, 0x0a, 0x19, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x41, + 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, + 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1c, + 0x0a, 0x09, 0x65, 0x69, 0x6e, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x65, 0x69, 0x6e, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x22, 0x5c, 0x0a, 0x1a, + 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x04, 0x66, 0x69, + 0x6c, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, + 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, + 0x72, 0x70, 0x63, 0x2e, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4f, 0x7a, 0x67, + 0x46, 0x69, 0x6c, 0x65, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x8a, 0x01, 0x0a, 0x1d, 0x47, + 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x07, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, + 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, + 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x69, 0x6e, + 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x69, + 0x6e, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x22, 0x60, 0x0a, 0x1e, 0x47, 0x72, 0x70, 0x63, 0x47, + 0x65, 0x74, 0x52, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x04, 0x66, 0x69, 0x6c, + 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, + 0x70, 0x63, 0x2e, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4f, 0x7a, 0x67, 0x46, + 0x69, 0x6c, 0x65, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x67, 0x0a, 0x0b, 0x47, 0x72, 0x70, + 0x63, 0x4f, 0x7a, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, + 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x42, 0x1f, 0x5a, 0x1d, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x66, + 0x69, 0x6c, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_filemodel_proto_rawDescOnce sync.Once + file_filemodel_proto_rawDescData = file_filemodel_proto_rawDesc +) + +func file_filemodel_proto_rawDescGZIP() []byte { + file_filemodel_proto_rawDescOnce.Do(func() { + file_filemodel_proto_rawDescData = protoimpl.X.CompressGZIP(file_filemodel_proto_rawDescData) + }) + return file_filemodel_proto_rawDescData +} + +var file_filemodel_proto_msgTypes = make([]protoimpl.MessageInfo, 5) +var file_filemodel_proto_goTypes = []any{ + (*GrpcGetAttachmentsRequest)(nil), // 0: de.ozgcloud.vorgang.grpc.file.GrpcGetAttachmentsRequest + (*GrpcGetAttachmentsResponse)(nil), // 1: de.ozgcloud.vorgang.grpc.file.GrpcGetAttachmentsResponse + (*GrpcGetRepresentationsRequest)(nil), // 2: de.ozgcloud.vorgang.grpc.file.GrpcGetRepresentationsRequest + (*GrpcGetRepresentationsResponse)(nil), // 3: de.ozgcloud.vorgang.grpc.file.GrpcGetRepresentationsResponse + (*GrpcOzgFile)(nil), // 4: de.ozgcloud.vorgang.grpc.file.GrpcOzgFile + (*de_ozgcloud_vorgang_grpc_command.GrpcCallContext)(nil), // 5: de.ozgcloud.vorgang.grpc.command.GrpcCallContext +} +var file_filemodel_proto_depIdxs = []int32{ + 5, // 0: de.ozgcloud.vorgang.grpc.file.GrpcGetAttachmentsRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 4, // 1: de.ozgcloud.vorgang.grpc.file.GrpcGetAttachmentsResponse.file:type_name -> de.ozgcloud.vorgang.grpc.file.GrpcOzgFile + 5, // 2: de.ozgcloud.vorgang.grpc.file.GrpcGetRepresentationsRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 4, // 3: de.ozgcloud.vorgang.grpc.file.GrpcGetRepresentationsResponse.file:type_name -> de.ozgcloud.vorgang.grpc.file.GrpcOzgFile + 4, // [4:4] is the sub-list for method output_type + 4, // [4:4] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name +} + +func init() { file_filemodel_proto_init() } +func file_filemodel_proto_init() { + if File_filemodel_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_filemodel_proto_msgTypes[0].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetAttachmentsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_filemodel_proto_msgTypes[1].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetAttachmentsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_filemodel_proto_msgTypes[2].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetRepresentationsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_filemodel_proto_msgTypes[3].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetRepresentationsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_filemodel_proto_msgTypes[4].Exporter = func(v any, i int) any { + switch v := v.(*GrpcOzgFile); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_filemodel_proto_rawDesc, + NumEnums: 0, + NumMessages: 5, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_filemodel_proto_goTypes, + DependencyIndexes: file_filemodel_proto_depIdxs, + MessageInfos: file_filemodel_proto_msgTypes, + }.Build() + File_filemodel_proto = out.File + file_filemodel_proto_rawDesc = nil + file_filemodel_proto_goTypes = nil + file_filemodel_proto_depIdxs = nil +} diff --git a/gen/go/postfach.model.pb.go b/gen/go/postfach.model.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..1a7e728504f74f43351af347db784035e79514c2 --- /dev/null +++ b/gen/go/postfach.model.pb.go @@ -0,0 +1,1666 @@ +// +// Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc (unknown) +// source: postfach.model.proto + +package de_ozgcloud_nachrichten_postfach + +import ( + de_ozgcloud_vorgang_common "de.ozgcloud.vorgang.common" + de_ozgcloud_vorgang_grpc_command "de.ozgcloud.vorgang.grpc.command" + de_ozgcloud_vorgang_vorgang "de.ozgcloud.vorgang.vorgang" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type GrpcDirection int32 + +const ( + GrpcDirection_UNDEFINED GrpcDirection = 0 + GrpcDirection_IN GrpcDirection = 1 + GrpcDirection_OUT GrpcDirection = 2 +) + +// Enum value maps for GrpcDirection. +var ( + GrpcDirection_name = map[int32]string{ + 0: "UNDEFINED", + 1: "IN", + 2: "OUT", + } + GrpcDirection_value = map[string]int32{ + "UNDEFINED": 0, + "IN": 1, + "OUT": 2, + } +) + +func (x GrpcDirection) Enum() *GrpcDirection { + p := new(GrpcDirection) + *p = x + return p +} + +func (x GrpcDirection) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (GrpcDirection) Descriptor() protoreflect.EnumDescriptor { + return file_postfach_model_proto_enumTypes[0].Descriptor() +} + +func (GrpcDirection) Type() protoreflect.EnumType { + return &file_postfach_model_proto_enumTypes[0] +} + +func (x GrpcDirection) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use GrpcDirection.Descriptor instead. +func (GrpcDirection) EnumDescriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{0} +} + +type GrpcSendPostfachMailRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *de_ozgcloud_vorgang_grpc_command.GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + CommandId string `protobuf:"bytes,2,opt,name=commandId,proto3" json:"commandId,omitempty"` + Mail *GrpcPostfachMail `protobuf:"bytes,5,opt,name=mail,proto3" json:"mail,omitempty"` +} + +func (x *GrpcSendPostfachMailRequest) Reset() { + *x = GrpcSendPostfachMailRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcSendPostfachMailRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcSendPostfachMailRequest) ProtoMessage() {} + +func (x *GrpcSendPostfachMailRequest) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcSendPostfachMailRequest.ProtoReflect.Descriptor instead. +func (*GrpcSendPostfachMailRequest) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{0} +} + +func (x *GrpcSendPostfachMailRequest) GetContext() *de_ozgcloud_vorgang_grpc_command.GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcSendPostfachMailRequest) GetCommandId() string { + if x != nil { + return x.CommandId + } + return "" +} + +func (x *GrpcSendPostfachMailRequest) GetMail() *GrpcPostfachMail { + if x != nil { + return x.Mail + } + return nil +} + +type GrpcSaveNachrichtDraftRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + VorgangId string `protobuf:"bytes,1,opt,name=vorgangId,proto3" json:"vorgangId,omitempty"` + Nachricht *GrpcPostfachNachricht `protobuf:"bytes,2,opt,name=nachricht,proto3" json:"nachricht,omitempty"` +} + +func (x *GrpcSaveNachrichtDraftRequest) Reset() { + *x = GrpcSaveNachrichtDraftRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcSaveNachrichtDraftRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcSaveNachrichtDraftRequest) ProtoMessage() {} + +func (x *GrpcSaveNachrichtDraftRequest) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcSaveNachrichtDraftRequest.ProtoReflect.Descriptor instead. +func (*GrpcSaveNachrichtDraftRequest) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{1} +} + +func (x *GrpcSaveNachrichtDraftRequest) GetVorgangId() string { + if x != nil { + return x.VorgangId + } + return "" +} + +func (x *GrpcSaveNachrichtDraftRequest) GetNachricht() *GrpcPostfachNachricht { + if x != nil { + return x.Nachricht + } + return nil +} + +type GrpcSaveNachrichtDraftResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *GrpcSaveNachrichtDraftResponse) Reset() { + *x = GrpcSaveNachrichtDraftResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcSaveNachrichtDraftResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcSaveNachrichtDraftResponse) ProtoMessage() {} + +func (x *GrpcSaveNachrichtDraftResponse) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcSaveNachrichtDraftResponse.ProtoReflect.Descriptor instead. +func (*GrpcSaveNachrichtDraftResponse) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{2} +} + +type GrpcSendPostfachMailResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *GrpcSendPostfachMailResponse) Reset() { + *x = GrpcSendPostfachMailResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcSendPostfachMailResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcSendPostfachMailResponse) ProtoMessage() {} + +func (x *GrpcSendPostfachMailResponse) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcSendPostfachMailResponse.ProtoReflect.Descriptor instead. +func (*GrpcSendPostfachMailResponse) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{3} +} + +type GrpcFindPostfachMailRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *de_ozgcloud_vorgang_grpc_command.GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + NachrichtId string `protobuf:"bytes,2,opt,name=nachrichtId,proto3" json:"nachrichtId,omitempty"` +} + +func (x *GrpcFindPostfachMailRequest) Reset() { + *x = GrpcFindPostfachMailRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcFindPostfachMailRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcFindPostfachMailRequest) ProtoMessage() {} + +func (x *GrpcFindPostfachMailRequest) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcFindPostfachMailRequest.ProtoReflect.Descriptor instead. +func (*GrpcFindPostfachMailRequest) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{4} +} + +func (x *GrpcFindPostfachMailRequest) GetContext() *de_ozgcloud_vorgang_grpc_command.GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcFindPostfachMailRequest) GetNachrichtId() string { + if x != nil { + return x.NachrichtId + } + return "" +} + +type GrpcFindPostfachMailResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Nachricht *GrpcPostfachMail `protobuf:"bytes,1,opt,name=nachricht,proto3" json:"nachricht,omitempty"` +} + +func (x *GrpcFindPostfachMailResponse) Reset() { + *x = GrpcFindPostfachMailResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcFindPostfachMailResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcFindPostfachMailResponse) ProtoMessage() {} + +func (x *GrpcFindPostfachMailResponse) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcFindPostfachMailResponse.ProtoReflect.Descriptor instead. +func (*GrpcFindPostfachMailResponse) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{5} +} + +func (x *GrpcFindPostfachMailResponse) GetNachricht() *GrpcPostfachMail { + if x != nil { + return x.Nachricht + } + return nil +} + +type GrpcFindPostfachMailsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *de_ozgcloud_vorgang_grpc_command.GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + VorgangId string `protobuf:"bytes,2,opt,name=vorgangId,proto3" json:"vorgangId,omitempty"` +} + +func (x *GrpcFindPostfachMailsRequest) Reset() { + *x = GrpcFindPostfachMailsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcFindPostfachMailsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcFindPostfachMailsRequest) ProtoMessage() {} + +func (x *GrpcFindPostfachMailsRequest) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcFindPostfachMailsRequest.ProtoReflect.Descriptor instead. +func (*GrpcFindPostfachMailsRequest) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{6} +} + +func (x *GrpcFindPostfachMailsRequest) GetContext() *de_ozgcloud_vorgang_grpc_command.GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcFindPostfachMailsRequest) GetVorgangId() string { + if x != nil { + return x.VorgangId + } + return "" +} + +type GrpcFindPostfachMailsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Mails []*GrpcPostfachMail `protobuf:"bytes,1,rep,name=mails,proto3" json:"mails,omitempty"` +} + +func (x *GrpcFindPostfachMailsResponse) Reset() { + *x = GrpcFindPostfachMailsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcFindPostfachMailsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcFindPostfachMailsResponse) ProtoMessage() {} + +func (x *GrpcFindPostfachMailsResponse) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcFindPostfachMailsResponse.ProtoReflect.Descriptor instead. +func (*GrpcFindPostfachMailsResponse) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{7} +} + +func (x *GrpcFindPostfachMailsResponse) GetMails() []*GrpcPostfachMail { + if x != nil { + return x.Mails + } + return nil +} + +type GrpcPostfachNachricht struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + CreatedAt string `protobuf:"bytes,2,opt,name=createdAt,proto3" json:"createdAt,omitempty"` + PostfachAddress *de_ozgcloud_vorgang_vorgang.GrpcPostfachAddress `protobuf:"bytes,3,opt,name=postfachAddress,proto3" json:"postfachAddress,omitempty"` + Subject string `protobuf:"bytes,4,opt,name=subject,proto3" json:"subject,omitempty"` + MailBody string `protobuf:"bytes,5,opt,name=mailBody,proto3" json:"mailBody,omitempty"` + ReplyOption string `protobuf:"bytes,6,opt,name=replyOption,proto3" json:"replyOption,omitempty"` + Attachment []string `protobuf:"bytes,7,rep,name=attachment,proto3" json:"attachment,omitempty"` +} + +func (x *GrpcPostfachNachricht) Reset() { + *x = GrpcPostfachNachricht{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcPostfachNachricht) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcPostfachNachricht) ProtoMessage() {} + +func (x *GrpcPostfachNachricht) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcPostfachNachricht.ProtoReflect.Descriptor instead. +func (*GrpcPostfachNachricht) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{8} +} + +func (x *GrpcPostfachNachricht) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GrpcPostfachNachricht) GetCreatedAt() string { + if x != nil { + return x.CreatedAt + } + return "" +} + +func (x *GrpcPostfachNachricht) GetPostfachAddress() *de_ozgcloud_vorgang_vorgang.GrpcPostfachAddress { + if x != nil { + return x.PostfachAddress + } + return nil +} + +func (x *GrpcPostfachNachricht) GetSubject() string { + if x != nil { + return x.Subject + } + return "" +} + +func (x *GrpcPostfachNachricht) GetMailBody() string { + if x != nil { + return x.MailBody + } + return "" +} + +func (x *GrpcPostfachNachricht) GetReplyOption() string { + if x != nil { + return x.ReplyOption + } + return "" +} + +func (x *GrpcPostfachNachricht) GetAttachment() []string { + if x != nil { + return x.Attachment + } + return nil +} + +type GrpcPostfachMail struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + VorgangId string `protobuf:"bytes,2,opt,name=vorgangId,proto3" json:"vorgangId,omitempty"` + // Deprecated: Marked as deprecated in postfach.model.proto. + PostfachId string `protobuf:"bytes,3,opt,name=postfachId,proto3" json:"postfachId,omitempty"` + PostfachAddress *GrpcPostfachAddress `protobuf:"bytes,14,opt,name=postfachAddress,proto3" json:"postfachAddress,omitempty"` + CreatedAt string `protobuf:"bytes,4,opt,name=createdAt,proto3" json:"createdAt,omitempty"` + CreatedBy string `protobuf:"bytes,5,opt,name=createdBy,proto3" json:"createdBy,omitempty"` + SentAt string `protobuf:"bytes,6,opt,name=sentAt,proto3" json:"sentAt,omitempty"` + SentSuccessful bool `protobuf:"varint,7,opt,name=sentSuccessful,proto3" json:"sentSuccessful,omitempty"` + MessageCode string `protobuf:"bytes,8,opt,name=messageCode,proto3" json:"messageCode,omitempty"` + Direction GrpcDirection `protobuf:"varint,9,opt,name=direction,proto3,enum=de.ozgcloud.nachrichten.postfach.GrpcDirection" json:"direction,omitempty"` + Subject string `protobuf:"bytes,10,opt,name=subject,proto3" json:"subject,omitempty"` + MailBody string `protobuf:"bytes,11,opt,name=mailBody,proto3" json:"mailBody,omitempty"` + ReplyOption string `protobuf:"bytes,12,opt,name=replyOption,proto3" json:"replyOption,omitempty"` + Attachment []string `protobuf:"bytes,13,rep,name=attachment,proto3" json:"attachment,omitempty"` + Address *GrpcPostfachAddress `protobuf:"bytes,15,opt,name=address,proto3" json:"address,omitempty"` + ReferencedNachricht string `protobuf:"bytes,16,opt,name=referencedNachricht,proto3" json:"referencedNachricht,omitempty"` +} + +func (x *GrpcPostfachMail) Reset() { + *x = GrpcPostfachMail{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcPostfachMail) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcPostfachMail) ProtoMessage() {} + +func (x *GrpcPostfachMail) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcPostfachMail.ProtoReflect.Descriptor instead. +func (*GrpcPostfachMail) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{9} +} + +func (x *GrpcPostfachMail) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GrpcPostfachMail) GetVorgangId() string { + if x != nil { + return x.VorgangId + } + return "" +} + +// Deprecated: Marked as deprecated in postfach.model.proto. +func (x *GrpcPostfachMail) GetPostfachId() string { + if x != nil { + return x.PostfachId + } + return "" +} + +func (x *GrpcPostfachMail) GetPostfachAddress() *GrpcPostfachAddress { + if x != nil { + return x.PostfachAddress + } + return nil +} + +func (x *GrpcPostfachMail) GetCreatedAt() string { + if x != nil { + return x.CreatedAt + } + return "" +} + +func (x *GrpcPostfachMail) GetCreatedBy() string { + if x != nil { + return x.CreatedBy + } + return "" +} + +func (x *GrpcPostfachMail) GetSentAt() string { + if x != nil { + return x.SentAt + } + return "" +} + +func (x *GrpcPostfachMail) GetSentSuccessful() bool { + if x != nil { + return x.SentSuccessful + } + return false +} + +func (x *GrpcPostfachMail) GetMessageCode() string { + if x != nil { + return x.MessageCode + } + return "" +} + +func (x *GrpcPostfachMail) GetDirection() GrpcDirection { + if x != nil { + return x.Direction + } + return GrpcDirection_UNDEFINED +} + +func (x *GrpcPostfachMail) GetSubject() string { + if x != nil { + return x.Subject + } + return "" +} + +func (x *GrpcPostfachMail) GetMailBody() string { + if x != nil { + return x.MailBody + } + return "" +} + +func (x *GrpcPostfachMail) GetReplyOption() string { + if x != nil { + return x.ReplyOption + } + return "" +} + +func (x *GrpcPostfachMail) GetAttachment() []string { + if x != nil { + return x.Attachment + } + return nil +} + +func (x *GrpcPostfachMail) GetAddress() *GrpcPostfachAddress { + if x != nil { + return x.Address + } + return nil +} + +func (x *GrpcPostfachMail) GetReferencedNachricht() string { + if x != nil { + return x.ReferencedNachricht + } + return "" +} + +type GrpcPostfachAddress struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` + Identifier *de_ozgcloud_vorgang_common.GrpcObject `protobuf:"bytes,2,opt,name=identifier,proto3" json:"identifier,omitempty"` + Type int32 `protobuf:"varint,3,opt,name=type,proto3" json:"type,omitempty"` + ServiceKontoType string `protobuf:"bytes,4,opt,name=serviceKontoType,proto3" json:"serviceKontoType,omitempty"` +} + +func (x *GrpcPostfachAddress) Reset() { + *x = GrpcPostfachAddress{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcPostfachAddress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcPostfachAddress) ProtoMessage() {} + +func (x *GrpcPostfachAddress) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcPostfachAddress.ProtoReflect.Descriptor instead. +func (*GrpcPostfachAddress) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{10} +} + +func (x *GrpcPostfachAddress) GetVersion() string { + if x != nil { + return x.Version + } + return "" +} + +func (x *GrpcPostfachAddress) GetIdentifier() *de_ozgcloud_vorgang_common.GrpcObject { + if x != nil { + return x.Identifier + } + return nil +} + +func (x *GrpcPostfachAddress) GetType() int32 { + if x != nil { + return x.Type + } + return 0 +} + +func (x *GrpcPostfachAddress) GetServiceKontoType() string { + if x != nil { + return x.ServiceKontoType + } + return "" +} + +type GrpcResendPostfachMailRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *de_ozgcloud_vorgang_grpc_command.GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + CommandId string `protobuf:"bytes,2,opt,name=commandId,proto3" json:"commandId,omitempty"` + PostfachMailId string `protobuf:"bytes,3,opt,name=postfachMailId,proto3" json:"postfachMailId,omitempty"` +} + +func (x *GrpcResendPostfachMailRequest) Reset() { + *x = GrpcResendPostfachMailRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcResendPostfachMailRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcResendPostfachMailRequest) ProtoMessage() {} + +func (x *GrpcResendPostfachMailRequest) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcResendPostfachMailRequest.ProtoReflect.Descriptor instead. +func (*GrpcResendPostfachMailRequest) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{11} +} + +func (x *GrpcResendPostfachMailRequest) GetContext() *de_ozgcloud_vorgang_grpc_command.GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +func (x *GrpcResendPostfachMailRequest) GetCommandId() string { + if x != nil { + return x.CommandId + } + return "" +} + +func (x *GrpcResendPostfachMailRequest) GetPostfachMailId() string { + if x != nil { + return x.PostfachMailId + } + return "" +} + +type GrpcResendPostfachMailResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *GrpcResendPostfachMailResponse) Reset() { + *x = GrpcResendPostfachMailResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcResendPostfachMailResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcResendPostfachMailResponse) ProtoMessage() {} + +func (x *GrpcResendPostfachMailResponse) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcResendPostfachMailResponse.ProtoReflect.Descriptor instead. +func (*GrpcResendPostfachMailResponse) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{12} +} + +type GrpcIsPostfachConfiguredRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Context *de_ozgcloud_vorgang_grpc_command.GrpcCallContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` +} + +func (x *GrpcIsPostfachConfiguredRequest) Reset() { + *x = GrpcIsPostfachConfiguredRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcIsPostfachConfiguredRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcIsPostfachConfiguredRequest) ProtoMessage() {} + +func (x *GrpcIsPostfachConfiguredRequest) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcIsPostfachConfiguredRequest.ProtoReflect.Descriptor instead. +func (*GrpcIsPostfachConfiguredRequest) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{13} +} + +func (x *GrpcIsPostfachConfiguredRequest) GetContext() *de_ozgcloud_vorgang_grpc_command.GrpcCallContext { + if x != nil { + return x.Context + } + return nil +} + +type GrpcIsPostfachConfiguredResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + IsConfigured bool `protobuf:"varint,1,opt,name=isConfigured,proto3" json:"isConfigured,omitempty"` +} + +func (x *GrpcIsPostfachConfiguredResponse) Reset() { + *x = GrpcIsPostfachConfiguredResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcIsPostfachConfiguredResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcIsPostfachConfiguredResponse) ProtoMessage() {} + +func (x *GrpcIsPostfachConfiguredResponse) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcIsPostfachConfiguredResponse.ProtoReflect.Descriptor instead. +func (*GrpcIsPostfachConfiguredResponse) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{14} +} + +func (x *GrpcIsPostfachConfiguredResponse) GetIsConfigured() bool { + if x != nil { + return x.IsConfigured + } + return false +} + +type GrpcGetPostfachConfigRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *GrpcGetPostfachConfigRequest) Reset() { + *x = GrpcGetPostfachConfigRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetPostfachConfigRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetPostfachConfigRequest) ProtoMessage() {} + +func (x *GrpcGetPostfachConfigRequest) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetPostfachConfigRequest.ProtoReflect.Descriptor instead. +func (*GrpcGetPostfachConfigRequest) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{15} +} + +type GrpcGetPostfachConfigResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Configured bool `protobuf:"varint,1,opt,name=configured,proto3" json:"configured,omitempty"` + Postfach []*GrpcPostfach `protobuf:"bytes,2,rep,name=postfach,proto3" json:"postfach,omitempty"` +} + +func (x *GrpcGetPostfachConfigResponse) Reset() { + *x = GrpcGetPostfachConfigResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcGetPostfachConfigResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcGetPostfachConfigResponse) ProtoMessage() {} + +func (x *GrpcGetPostfachConfigResponse) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcGetPostfachConfigResponse.ProtoReflect.Descriptor instead. +func (*GrpcGetPostfachConfigResponse) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{16} +} + +func (x *GrpcGetPostfachConfigResponse) GetConfigured() bool { + if x != nil { + return x.Configured + } + return false +} + +func (x *GrpcGetPostfachConfigResponse) GetPostfach() []*GrpcPostfach { + if x != nil { + return x.Postfach + } + return nil +} + +type GrpcPostfach struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` + ReplyAllowed bool `protobuf:"varint,2,opt,name=replyAllowed,proto3" json:"replyAllowed,omitempty"` +} + +func (x *GrpcPostfach) Reset() { + *x = GrpcPostfach{} + if protoimpl.UnsafeEnabled { + mi := &file_postfach_model_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcPostfach) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcPostfach) ProtoMessage() {} + +func (x *GrpcPostfach) ProtoReflect() protoreflect.Message { + mi := &file_postfach_model_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcPostfach.ProtoReflect.Descriptor instead. +func (*GrpcPostfach) Descriptor() ([]byte, []int) { + return file_postfach_model_proto_rawDescGZIP(), []int{17} +} + +func (x *GrpcPostfach) GetType() string { + if x != nil { + return x.Type + } + return "" +} + +func (x *GrpcPostfach) GetReplyAllowed() bool { + if x != nil { + return x.ReplyAllowed + } + return false +} + +var File_postfach_model_proto protoreflect.FileDescriptor + +var file_postfach_model_proto_rawDesc = []byte{ + 0x0a, 0x14, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x20, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, + 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x1a, 0x11, 0x63, 0x61, 0x6c, 0x6c, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x13, 0x76, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x1a, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xd0, 0x01, 0x0a, 0x1b, 0x47, 0x72, 0x70, 0x63, 0x53, 0x65, 0x6e, + 0x64, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, + 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, 0x6c, + 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, + 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x49, 0x64, 0x12, + 0x46, 0x0a, 0x04, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, + 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, + 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, + 0x2e, 0x47, 0x72, 0x70, 0x63, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x69, + 0x6c, 0x52, 0x04, 0x6d, 0x61, 0x69, 0x6c, 0x22, 0x94, 0x01, 0x0a, 0x1d, 0x47, 0x72, 0x70, 0x63, + 0x53, 0x61, 0x76, 0x65, 0x4e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x44, 0x72, 0x61, + 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x6f, + 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x12, 0x55, 0x0a, 0x09, 0x6e, 0x61, 0x63, 0x68, 0x72, + 0x69, 0x63, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x65, 0x2e, + 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, + 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x2e, 0x47, 0x72, + 0x70, 0x63, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x4e, 0x61, 0x63, 0x68, 0x72, 0x69, + 0x63, 0x68, 0x74, 0x52, 0x09, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x22, 0x20, + 0x0a, 0x1e, 0x47, 0x72, 0x70, 0x63, 0x53, 0x61, 0x76, 0x65, 0x4e, 0x61, 0x63, 0x68, 0x72, 0x69, + 0x63, 0x68, 0x74, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x1e, 0x0a, 0x1c, 0x47, 0x72, 0x70, 0x63, 0x53, 0x65, 0x6e, 0x64, 0x50, 0x6f, 0x73, 0x74, + 0x66, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x8c, 0x01, 0x0a, 0x1b, 0x47, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6e, 0x64, 0x50, 0x6f, 0x73, + 0x74, 0x66, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, + 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x20, 0x0a, + 0x0b, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x49, 0x64, 0x22, + 0x70, 0x0a, 0x1c, 0x47, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6e, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x66, + 0x61, 0x63, 0x68, 0x4d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x50, 0x0a, 0x09, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x70, 0x6f, 0x73, + 0x74, 0x66, 0x61, 0x63, 0x68, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, + 0x63, 0x68, 0x4d, 0x61, 0x69, 0x6c, 0x52, 0x09, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, + 0x74, 0x22, 0x89, 0x01, 0x0a, 0x1c, 0x47, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6e, 0x64, 0x50, 0x6f, + 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, + 0x1c, 0x0a, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x22, 0x69, 0x0a, + 0x1d, 0x47, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6e, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, + 0x68, 0x4d, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, + 0x0a, 0x05, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, + 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, + 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, + 0x2e, 0x47, 0x72, 0x70, 0x63, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x69, + 0x6c, 0x52, 0x05, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x99, 0x02, 0x0a, 0x15, 0x47, 0x72, 0x70, + 0x63, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x4e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, + 0x68, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x12, 0x5a, 0x0a, 0x0f, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x65, 0x2e, 0x6f, + 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, + 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x50, 0x6f, 0x73, 0x74, + 0x66, 0x61, 0x63, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0f, 0x70, 0x6f, 0x73, + 0x74, 0x66, 0x61, 0x63, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, + 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, + 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x69, 0x6c, 0x42, 0x6f, + 0x64, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x69, 0x6c, 0x42, 0x6f, + 0x64, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x4f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, + 0x6e, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, + 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xad, 0x05, 0x0a, 0x10, 0x47, 0x72, 0x70, 0x63, 0x50, 0x6f, 0x73, + 0x74, 0x66, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x69, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x6f, + 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x6f, 0x73, 0x74, 0x66, + 0x61, 0x63, 0x68, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, + 0x0a, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x49, 0x64, 0x12, 0x5f, 0x0a, 0x0f, 0x70, + 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0e, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x70, + 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x50, 0x6f, 0x73, 0x74, + 0x66, 0x61, 0x63, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0f, 0x70, 0x6f, 0x73, + 0x74, 0x66, 0x61, 0x63, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1c, 0x0a, 0x09, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x74, + 0x41, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x74, 0x41, 0x74, + 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x66, + 0x75, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x65, 0x6e, 0x74, 0x53, 0x75, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x66, 0x75, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x4d, 0x0a, 0x09, 0x64, 0x69, + 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, + 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, + 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, + 0x2e, 0x47, 0x72, 0x70, 0x63, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, + 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x69, 0x6c, 0x42, 0x6f, 0x64, 0x79, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x69, 0x6c, 0x42, 0x6f, 0x64, 0x79, 0x12, + 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x18, + 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, + 0x74, 0x12, 0x4f, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x70, 0x6f, 0x73, + 0x74, 0x66, 0x61, 0x63, 0x68, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, + 0x63, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, + 0x4e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x13, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x4e, 0x61, 0x63, 0x68, 0x72, + 0x69, 0x63, 0x68, 0x74, 0x22, 0xb7, 0x01, 0x0a, 0x13, 0x47, 0x72, 0x70, 0x63, 0x50, 0x6f, 0x73, + 0x74, 0x66, 0x61, 0x63, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x66, 0x69, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x65, 0x2e, + 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, + 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x52, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x12, + 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4b, 0x6f, 0x6e, + 0x74, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x4b, 0x6f, 0x6e, 0x74, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x22, 0xb2, + 0x01, 0x0a, 0x1d, 0x47, 0x72, 0x70, 0x63, 0x52, 0x65, 0x73, 0x65, 0x6e, 0x64, 0x50, 0x6f, 0x73, + 0x74, 0x66, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, + 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1c, 0x0a, + 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x70, + 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x69, 0x6c, 0x49, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x69, + 0x6c, 0x49, 0x64, 0x22, 0x20, 0x0a, 0x1e, 0x47, 0x72, 0x70, 0x63, 0x52, 0x65, 0x73, 0x65, 0x6e, + 0x64, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6e, 0x0a, 0x1f, 0x47, 0x72, 0x70, 0x63, 0x49, 0x73, 0x50, + 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, + 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x2e, 0x6f, + 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, + 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x47, 0x72, 0x70, + 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x46, 0x0a, 0x20, 0x47, 0x72, 0x70, 0x63, 0x49, 0x73, 0x50, + 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, + 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x73, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0c, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x64, 0x22, 0x1e, 0x0a, + 0x1c, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x8b, 0x01, + 0x0a, 0x1d, 0x47, 0x72, 0x70, 0x63, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, + 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x64, 0x12, + 0x4a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, 0x70, 0x6f, 0x73, 0x74, + 0x66, 0x61, 0x63, 0x68, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, + 0x68, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x22, 0x46, 0x0a, 0x0c, 0x47, + 0x72, 0x70, 0x63, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, + 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x41, 0x6c, 0x6c, 0x6f, + 0x77, 0x65, 0x64, 0x2a, 0x2f, 0x0a, 0x0d, 0x47, 0x72, 0x70, 0x63, 0x44, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, + 0x44, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x4f, + 0x55, 0x54, 0x10, 0x02, 0x42, 0x22, 0x5a, 0x20, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x61, 0x63, 0x68, 0x72, 0x69, 0x63, 0x68, 0x74, 0x65, 0x6e, 0x2e, + 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_postfach_model_proto_rawDescOnce sync.Once + file_postfach_model_proto_rawDescData = file_postfach_model_proto_rawDesc +) + +func file_postfach_model_proto_rawDescGZIP() []byte { + file_postfach_model_proto_rawDescOnce.Do(func() { + file_postfach_model_proto_rawDescData = protoimpl.X.CompressGZIP(file_postfach_model_proto_rawDescData) + }) + return file_postfach_model_proto_rawDescData +} + +var file_postfach_model_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_postfach_model_proto_msgTypes = make([]protoimpl.MessageInfo, 18) +var file_postfach_model_proto_goTypes = []any{ + (GrpcDirection)(0), // 0: de.ozgcloud.nachrichten.postfach.GrpcDirection + (*GrpcSendPostfachMailRequest)(nil), // 1: de.ozgcloud.nachrichten.postfach.GrpcSendPostfachMailRequest + (*GrpcSaveNachrichtDraftRequest)(nil), // 2: de.ozgcloud.nachrichten.postfach.GrpcSaveNachrichtDraftRequest + (*GrpcSaveNachrichtDraftResponse)(nil), // 3: de.ozgcloud.nachrichten.postfach.GrpcSaveNachrichtDraftResponse + (*GrpcSendPostfachMailResponse)(nil), // 4: de.ozgcloud.nachrichten.postfach.GrpcSendPostfachMailResponse + (*GrpcFindPostfachMailRequest)(nil), // 5: de.ozgcloud.nachrichten.postfach.GrpcFindPostfachMailRequest + (*GrpcFindPostfachMailResponse)(nil), // 6: de.ozgcloud.nachrichten.postfach.GrpcFindPostfachMailResponse + (*GrpcFindPostfachMailsRequest)(nil), // 7: de.ozgcloud.nachrichten.postfach.GrpcFindPostfachMailsRequest + (*GrpcFindPostfachMailsResponse)(nil), // 8: de.ozgcloud.nachrichten.postfach.GrpcFindPostfachMailsResponse + (*GrpcPostfachNachricht)(nil), // 9: de.ozgcloud.nachrichten.postfach.GrpcPostfachNachricht + (*GrpcPostfachMail)(nil), // 10: de.ozgcloud.nachrichten.postfach.GrpcPostfachMail + (*GrpcPostfachAddress)(nil), // 11: de.ozgcloud.nachrichten.postfach.GrpcPostfachAddress + (*GrpcResendPostfachMailRequest)(nil), // 12: de.ozgcloud.nachrichten.postfach.GrpcResendPostfachMailRequest + (*GrpcResendPostfachMailResponse)(nil), // 13: de.ozgcloud.nachrichten.postfach.GrpcResendPostfachMailResponse + (*GrpcIsPostfachConfiguredRequest)(nil), // 14: de.ozgcloud.nachrichten.postfach.GrpcIsPostfachConfiguredRequest + (*GrpcIsPostfachConfiguredResponse)(nil), // 15: de.ozgcloud.nachrichten.postfach.GrpcIsPostfachConfiguredResponse + (*GrpcGetPostfachConfigRequest)(nil), // 16: de.ozgcloud.nachrichten.postfach.GrpcGetPostfachConfigRequest + (*GrpcGetPostfachConfigResponse)(nil), // 17: de.ozgcloud.nachrichten.postfach.GrpcGetPostfachConfigResponse + (*GrpcPostfach)(nil), // 18: de.ozgcloud.nachrichten.postfach.GrpcPostfach + (*de_ozgcloud_vorgang_grpc_command.GrpcCallContext)(nil), // 19: de.ozgcloud.vorgang.grpc.command.GrpcCallContext + (*de_ozgcloud_vorgang_vorgang.GrpcPostfachAddress)(nil), // 20: de.ozgcloud.vorgang.vorgang.GrpcPostfachAddress + (*de_ozgcloud_vorgang_common.GrpcObject)(nil), // 21: de.ozgcloud.vorgang.common.GrpcObject +} +var file_postfach_model_proto_depIdxs = []int32{ + 19, // 0: de.ozgcloud.nachrichten.postfach.GrpcSendPostfachMailRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 10, // 1: de.ozgcloud.nachrichten.postfach.GrpcSendPostfachMailRequest.mail:type_name -> de.ozgcloud.nachrichten.postfach.GrpcPostfachMail + 9, // 2: de.ozgcloud.nachrichten.postfach.GrpcSaveNachrichtDraftRequest.nachricht:type_name -> de.ozgcloud.nachrichten.postfach.GrpcPostfachNachricht + 19, // 3: de.ozgcloud.nachrichten.postfach.GrpcFindPostfachMailRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 10, // 4: de.ozgcloud.nachrichten.postfach.GrpcFindPostfachMailResponse.nachricht:type_name -> de.ozgcloud.nachrichten.postfach.GrpcPostfachMail + 19, // 5: de.ozgcloud.nachrichten.postfach.GrpcFindPostfachMailsRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 10, // 6: de.ozgcloud.nachrichten.postfach.GrpcFindPostfachMailsResponse.mails:type_name -> de.ozgcloud.nachrichten.postfach.GrpcPostfachMail + 20, // 7: de.ozgcloud.nachrichten.postfach.GrpcPostfachNachricht.postfachAddress:type_name -> de.ozgcloud.vorgang.vorgang.GrpcPostfachAddress + 11, // 8: de.ozgcloud.nachrichten.postfach.GrpcPostfachMail.postfachAddress:type_name -> de.ozgcloud.nachrichten.postfach.GrpcPostfachAddress + 0, // 9: de.ozgcloud.nachrichten.postfach.GrpcPostfachMail.direction:type_name -> de.ozgcloud.nachrichten.postfach.GrpcDirection + 11, // 10: de.ozgcloud.nachrichten.postfach.GrpcPostfachMail.address:type_name -> de.ozgcloud.nachrichten.postfach.GrpcPostfachAddress + 21, // 11: de.ozgcloud.nachrichten.postfach.GrpcPostfachAddress.identifier:type_name -> de.ozgcloud.vorgang.common.GrpcObject + 19, // 12: de.ozgcloud.nachrichten.postfach.GrpcResendPostfachMailRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 19, // 13: de.ozgcloud.nachrichten.postfach.GrpcIsPostfachConfiguredRequest.context:type_name -> de.ozgcloud.vorgang.grpc.command.GrpcCallContext + 18, // 14: de.ozgcloud.nachrichten.postfach.GrpcGetPostfachConfigResponse.postfach:type_name -> de.ozgcloud.nachrichten.postfach.GrpcPostfach + 15, // [15:15] is the sub-list for method output_type + 15, // [15:15] is the sub-list for method input_type + 15, // [15:15] is the sub-list for extension type_name + 15, // [15:15] is the sub-list for extension extendee + 0, // [0:15] is the sub-list for field type_name +} + +func init() { file_postfach_model_proto_init() } +func file_postfach_model_proto_init() { + if File_postfach_model_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_postfach_model_proto_msgTypes[0].Exporter = func(v any, i int) any { + switch v := v.(*GrpcSendPostfachMailRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[1].Exporter = func(v any, i int) any { + switch v := v.(*GrpcSaveNachrichtDraftRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[2].Exporter = func(v any, i int) any { + switch v := v.(*GrpcSaveNachrichtDraftResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[3].Exporter = func(v any, i int) any { + switch v := v.(*GrpcSendPostfachMailResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[4].Exporter = func(v any, i int) any { + switch v := v.(*GrpcFindPostfachMailRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[5].Exporter = func(v any, i int) any { + switch v := v.(*GrpcFindPostfachMailResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[6].Exporter = func(v any, i int) any { + switch v := v.(*GrpcFindPostfachMailsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[7].Exporter = func(v any, i int) any { + switch v := v.(*GrpcFindPostfachMailsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[8].Exporter = func(v any, i int) any { + switch v := v.(*GrpcPostfachNachricht); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[9].Exporter = func(v any, i int) any { + switch v := v.(*GrpcPostfachMail); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[10].Exporter = func(v any, i int) any { + switch v := v.(*GrpcPostfachAddress); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[11].Exporter = func(v any, i int) any { + switch v := v.(*GrpcResendPostfachMailRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[12].Exporter = func(v any, i int) any { + switch v := v.(*GrpcResendPostfachMailResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[13].Exporter = func(v any, i int) any { + switch v := v.(*GrpcIsPostfachConfiguredRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[14].Exporter = func(v any, i int) any { + switch v := v.(*GrpcIsPostfachConfiguredResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[15].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetPostfachConfigRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[16].Exporter = func(v any, i int) any { + switch v := v.(*GrpcGetPostfachConfigResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_postfach_model_proto_msgTypes[17].Exporter = func(v any, i int) any { + switch v := v.(*GrpcPostfach); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_postfach_model_proto_rawDesc, + NumEnums: 1, + NumMessages: 18, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_postfach_model_proto_goTypes, + DependencyIndexes: file_postfach_model_proto_depIdxs, + EnumInfos: file_postfach_model_proto_enumTypes, + MessageInfos: file_postfach_model_proto_msgTypes, + }.Build() + File_postfach_model_proto = out.File + file_postfach_model_proto_rawDesc = nil + file_postfach_model_proto_goTypes = nil + file_postfach_model_proto_depIdxs = nil +} diff --git a/gen/go/vorgang.model.pb.go b/gen/go/vorgang.model.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..86dfea21c2c8b4dca33c063862e2fcbd5bb1f403 --- /dev/null +++ b/gen/go/vorgang.model.pb.go @@ -0,0 +1,2466 @@ +// +// Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +// Ministerpräsidenten des Landes Schleswig-Holstein +// Staatskanzlei +// Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +// +// Lizenziert unter der EUPL, Version 1.2 oder - sobald +// diese von der Europäischen Kommission genehmigt wurden - +// Folgeversionen der EUPL ("Lizenz"); +// Sie dürfen dieses Werk ausschließlich gemäß +// dieser Lizenz nutzen. +// Eine Kopie der Lizenz finden Sie hier: +// +// https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +// +// Sofern nicht durch anwendbare Rechtsvorschriften +// gefordert oder in schriftlicher Form vereinbart, wird +// die unter der Lizenz verbreitete Software "so wie sie +// ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +// ausdrücklich oder stillschweigend - verbreitet. +// Die sprachspezifischen Genehmigungen und Beschränkungen +// unter der Lizenz sind dem Lizenztext zu entnehmen. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc (unknown) +// source: vorgang.model.proto + +package de_ozgcloud_vorgang_vorgang + +import ( + de_ozgcloud_vorgang_common "de.ozgcloud.vorgang.common" + de_ozgcloud_vorgang_grpc_clientAttribute "de.ozgcloud.vorgang.grpc.clientAttribute" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type GrpcLogicalOperator int32 + +const ( + GrpcLogicalOperator_AND GrpcLogicalOperator = 0 + GrpcLogicalOperator_OR GrpcLogicalOperator = 1 +) + +// Enum value maps for GrpcLogicalOperator. +var ( + GrpcLogicalOperator_name = map[int32]string{ + 0: "AND", + 1: "OR", + } + GrpcLogicalOperator_value = map[string]int32{ + "AND": 0, + "OR": 1, + } +) + +func (x GrpcLogicalOperator) Enum() *GrpcLogicalOperator { + p := new(GrpcLogicalOperator) + *p = x + return p +} + +func (x GrpcLogicalOperator) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (GrpcLogicalOperator) Descriptor() protoreflect.EnumDescriptor { + return file_vorgang_model_proto_enumTypes[0].Descriptor() +} + +func (GrpcLogicalOperator) Type() protoreflect.EnumType { + return &file_vorgang_model_proto_enumTypes[0] +} + +func (x GrpcLogicalOperator) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use GrpcLogicalOperator.Descriptor instead. +func (GrpcLogicalOperator) EnumDescriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{0} +} + +type GrpcVorgangHeader struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Version int64 `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"` + Status string `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty"` + Name string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"` + CreatedAt string `protobuf:"bytes,5,opt,name=createdAt,proto3" json:"createdAt,omitempty"` + Aktenzeichen string `protobuf:"bytes,6,opt,name=aktenzeichen,proto3" json:"aktenzeichen,omitempty"` + AssignedTo string `protobuf:"bytes,7,opt,name=assignedTo,proto3" json:"assignedTo,omitempty"` + Nummer string `protobuf:"bytes,8,opt,name=nummer,proto3" json:"nummer,omitempty"` + ClientAttributes []*de_ozgcloud_vorgang_grpc_clientAttribute.GrpcClientAttribute `protobuf:"bytes,9,rep,name=clientAttributes,proto3" json:"clientAttributes,omitempty"` + FormEngineName string `protobuf:"bytes,15,opt,name=formEngineName,proto3" json:"formEngineName,omitempty"` +} + +func (x *GrpcVorgangHeader) Reset() { + *x = GrpcVorgangHeader{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcVorgangHeader) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcVorgangHeader) ProtoMessage() {} + +func (x *GrpcVorgangHeader) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcVorgangHeader.ProtoReflect.Descriptor instead. +func (*GrpcVorgangHeader) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{0} +} + +func (x *GrpcVorgangHeader) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GrpcVorgangHeader) GetVersion() int64 { + if x != nil { + return x.Version + } + return 0 +} + +func (x *GrpcVorgangHeader) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *GrpcVorgangHeader) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *GrpcVorgangHeader) GetCreatedAt() string { + if x != nil { + return x.CreatedAt + } + return "" +} + +func (x *GrpcVorgangHeader) GetAktenzeichen() string { + if x != nil { + return x.Aktenzeichen + } + return "" +} + +func (x *GrpcVorgangHeader) GetAssignedTo() string { + if x != nil { + return x.AssignedTo + } + return "" +} + +func (x *GrpcVorgangHeader) GetNummer() string { + if x != nil { + return x.Nummer + } + return "" +} + +func (x *GrpcVorgangHeader) GetClientAttributes() []*de_ozgcloud_vorgang_grpc_clientAttribute.GrpcClientAttribute { + if x != nil { + return x.ClientAttributes + } + return nil +} + +func (x *GrpcVorgangHeader) GetFormEngineName() string { + if x != nil { + return x.FormEngineName + } + return "" +} + +type GrpcVorgangWithEingang struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Version int64 `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"` + Status string `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty"` + Name string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"` + CreatedAt string `protobuf:"bytes,5,opt,name=createdAt,proto3" json:"createdAt,omitempty"` + Aktenzeichen string `protobuf:"bytes,6,opt,name=aktenzeichen,proto3" json:"aktenzeichen,omitempty"` + AssignedTo string `protobuf:"bytes,7,opt,name=assignedTo,proto3" json:"assignedTo,omitempty"` + Nummer string `protobuf:"bytes,8,opt,name=nummer,proto3" json:"nummer,omitempty"` + ClientAttributes []*de_ozgcloud_vorgang_grpc_clientAttribute.GrpcClientAttribute `protobuf:"bytes,9,rep,name=clientAttributes,proto3" json:"clientAttributes,omitempty"` + Eingang *GrpcEingang `protobuf:"bytes,10,opt,name=eingang,proto3" json:"eingang,omitempty"` + FormEngineName string `protobuf:"bytes,15,opt,name=formEngineName,proto3" json:"formEngineName,omitempty"` + Header *GrpcVorgangHead `protobuf:"bytes,16,opt,name=header,proto3" json:"header,omitempty"` +} + +func (x *GrpcVorgangWithEingang) Reset() { + *x = GrpcVorgangWithEingang{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcVorgangWithEingang) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcVorgangWithEingang) ProtoMessage() {} + +func (x *GrpcVorgangWithEingang) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcVorgangWithEingang.ProtoReflect.Descriptor instead. +func (*GrpcVorgangWithEingang) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{1} +} + +func (x *GrpcVorgangWithEingang) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GrpcVorgangWithEingang) GetVersion() int64 { + if x != nil { + return x.Version + } + return 0 +} + +func (x *GrpcVorgangWithEingang) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *GrpcVorgangWithEingang) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *GrpcVorgangWithEingang) GetCreatedAt() string { + if x != nil { + return x.CreatedAt + } + return "" +} + +func (x *GrpcVorgangWithEingang) GetAktenzeichen() string { + if x != nil { + return x.Aktenzeichen + } + return "" +} + +func (x *GrpcVorgangWithEingang) GetAssignedTo() string { + if x != nil { + return x.AssignedTo + } + return "" +} + +func (x *GrpcVorgangWithEingang) GetNummer() string { + if x != nil { + return x.Nummer + } + return "" +} + +func (x *GrpcVorgangWithEingang) GetClientAttributes() []*de_ozgcloud_vorgang_grpc_clientAttribute.GrpcClientAttribute { + if x != nil { + return x.ClientAttributes + } + return nil +} + +func (x *GrpcVorgangWithEingang) GetEingang() *GrpcEingang { + if x != nil { + return x.Eingang + } + return nil +} + +func (x *GrpcVorgangWithEingang) GetFormEngineName() string { + if x != nil { + return x.FormEngineName + } + return "" +} + +func (x *GrpcVorgangWithEingang) GetHeader() *GrpcVorgangHead { + if x != nil { + return x.Header + } + return nil +} + +type GrpcVorgangHead struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ServiceKonto *GrpcServiceKonto `protobuf:"bytes,1,opt,name=serviceKonto,proto3" json:"serviceKonto,omitempty"` +} + +func (x *GrpcVorgangHead) Reset() { + *x = GrpcVorgangHead{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcVorgangHead) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcVorgangHead) ProtoMessage() {} + +func (x *GrpcVorgangHead) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcVorgangHead.ProtoReflect.Descriptor instead. +func (*GrpcVorgangHead) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{2} +} + +func (x *GrpcVorgangHead) GetServiceKonto() *GrpcServiceKonto { + if x != nil { + return x.ServiceKonto + } + return nil +} + +type GrpcEingang struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Header *GrpcEingangHeader `protobuf:"bytes,2,opt,name=header,proto3" json:"header,omitempty"` + Antragsteller *GrpcAntragsteller `protobuf:"bytes,3,opt,name=antragsteller,proto3" json:"antragsteller,omitempty"` + ZustaendigeStelle *GrpcZustaendigeStelle `protobuf:"bytes,4,opt,name=zustaendigeStelle,proto3" json:"zustaendigeStelle,omitempty"` + FormData *GrpcFormData `protobuf:"bytes,10,opt,name=formData,proto3" json:"formData,omitempty"` + NumberOfAttachments int32 `protobuf:"varint,11,opt,name=numberOfAttachments,proto3" json:"numberOfAttachments,omitempty"` + NumberOfRepresentations int32 `protobuf:"varint,12,opt,name=numberOfRepresentations,proto3" json:"numberOfRepresentations,omitempty"` + Attachments []*GrpcIncomingFileGroup `protobuf:"bytes,20,rep,name=attachments,proto3" json:"attachments,omitempty"` + Representations []*GrpcIncomingFile `protobuf:"bytes,21,rep,name=representations,proto3" json:"representations,omitempty"` +} + +func (x *GrpcEingang) Reset() { + *x = GrpcEingang{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcEingang) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcEingang) ProtoMessage() {} + +func (x *GrpcEingang) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcEingang.ProtoReflect.Descriptor instead. +func (*GrpcEingang) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{3} +} + +func (x *GrpcEingang) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GrpcEingang) GetHeader() *GrpcEingangHeader { + if x != nil { + return x.Header + } + return nil +} + +func (x *GrpcEingang) GetAntragsteller() *GrpcAntragsteller { + if x != nil { + return x.Antragsteller + } + return nil +} + +func (x *GrpcEingang) GetZustaendigeStelle() *GrpcZustaendigeStelle { + if x != nil { + return x.ZustaendigeStelle + } + return nil +} + +func (x *GrpcEingang) GetFormData() *GrpcFormData { + if x != nil { + return x.FormData + } + return nil +} + +func (x *GrpcEingang) GetNumberOfAttachments() int32 { + if x != nil { + return x.NumberOfAttachments + } + return 0 +} + +func (x *GrpcEingang) GetNumberOfRepresentations() int32 { + if x != nil { + return x.NumberOfRepresentations + } + return 0 +} + +func (x *GrpcEingang) GetAttachments() []*GrpcIncomingFileGroup { + if x != nil { + return x.Attachments + } + return nil +} + +func (x *GrpcEingang) GetRepresentations() []*GrpcIncomingFile { + if x != nil { + return x.Representations + } + return nil +} + +type GrpcIncomingFileGroup struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Files []*GrpcIncomingFile `protobuf:"bytes,2,rep,name=files,proto3" json:"files,omitempty"` +} + +func (x *GrpcIncomingFileGroup) Reset() { + *x = GrpcIncomingFileGroup{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcIncomingFileGroup) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcIncomingFileGroup) ProtoMessage() {} + +func (x *GrpcIncomingFileGroup) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcIncomingFileGroup.ProtoReflect.Descriptor instead. +func (*GrpcIncomingFileGroup) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{4} +} + +func (x *GrpcIncomingFileGroup) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *GrpcIncomingFileGroup) GetFiles() []*GrpcIncomingFile { + if x != nil { + return x.Files + } + return nil +} + +type GrpcIncomingFile struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + VendorId string `protobuf:"bytes,2,opt,name=vendorId,proto3" json:"vendorId,omitempty"` + Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` + ContentType string `protobuf:"bytes,4,opt,name=contentType,proto3" json:"contentType,omitempty"` + Size int64 `protobuf:"varint,5,opt,name=size,proto3" json:"size,omitempty"` + Content []byte `protobuf:"bytes,6,opt,name=content,proto3" json:"content,omitempty"` +} + +func (x *GrpcIncomingFile) Reset() { + *x = GrpcIncomingFile{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcIncomingFile) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcIncomingFile) ProtoMessage() {} + +func (x *GrpcIncomingFile) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcIncomingFile.ProtoReflect.Descriptor instead. +func (*GrpcIncomingFile) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{5} +} + +func (x *GrpcIncomingFile) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GrpcIncomingFile) GetVendorId() string { + if x != nil { + return x.VendorId + } + return "" +} + +func (x *GrpcIncomingFile) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *GrpcIncomingFile) GetContentType() string { + if x != nil { + return x.ContentType + } + return "" +} + +func (x *GrpcIncomingFile) GetSize() int64 { + if x != nil { + return x.Size + } + return 0 +} + +func (x *GrpcIncomingFile) GetContent() []byte { + if x != nil { + return x.Content + } + return nil +} + +type GrpcEingangHeader struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RequestId string `protobuf:"bytes,1,opt,name=requestId,proto3" json:"requestId,omitempty"` + CreatedAt string `protobuf:"bytes,2,opt,name=createdAt,proto3" json:"createdAt,omitempty"` + FormId string `protobuf:"bytes,3,opt,name=formId,proto3" json:"formId,omitempty"` + FormName string `protobuf:"bytes,4,opt,name=formName,proto3" json:"formName,omitempty"` + Sender string `protobuf:"bytes,5,opt,name=sender,proto3" json:"sender,omitempty"` + // Deprecated: Marked as deprecated in vorgang.model.proto. + Customer string `protobuf:"bytes,6,opt,name=customer,proto3" json:"customer,omitempty"` + // Deprecated: Marked as deprecated in vorgang.model.proto. + CustomerId string `protobuf:"bytes,7,opt,name=customerId,proto3" json:"customerId,omitempty"` + // Deprecated: Marked as deprecated in vorgang.model.proto. + Client string `protobuf:"bytes,8,opt,name=client,proto3" json:"client,omitempty"` + // Deprecated: Marked as deprecated in vorgang.model.proto. + ClientId string `protobuf:"bytes,9,opt,name=clientId,proto3" json:"clientId,omitempty"` + FormEngineName string `protobuf:"bytes,10,opt,name=formEngineName,proto3" json:"formEngineName,omitempty"` + ServiceKonto *GrpcServiceKonto `protobuf:"bytes,11,opt,name=serviceKonto,proto3" json:"serviceKonto,omitempty"` + VorgangNummer string `protobuf:"bytes,12,opt,name=vorgangNummer,proto3" json:"vorgangNummer,omitempty"` +} + +func (x *GrpcEingangHeader) Reset() { + *x = GrpcEingangHeader{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcEingangHeader) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcEingangHeader) ProtoMessage() {} + +func (x *GrpcEingangHeader) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcEingangHeader.ProtoReflect.Descriptor instead. +func (*GrpcEingangHeader) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{6} +} + +func (x *GrpcEingangHeader) GetRequestId() string { + if x != nil { + return x.RequestId + } + return "" +} + +func (x *GrpcEingangHeader) GetCreatedAt() string { + if x != nil { + return x.CreatedAt + } + return "" +} + +func (x *GrpcEingangHeader) GetFormId() string { + if x != nil { + return x.FormId + } + return "" +} + +func (x *GrpcEingangHeader) GetFormName() string { + if x != nil { + return x.FormName + } + return "" +} + +func (x *GrpcEingangHeader) GetSender() string { + if x != nil { + return x.Sender + } + return "" +} + +// Deprecated: Marked as deprecated in vorgang.model.proto. +func (x *GrpcEingangHeader) GetCustomer() string { + if x != nil { + return x.Customer + } + return "" +} + +// Deprecated: Marked as deprecated in vorgang.model.proto. +func (x *GrpcEingangHeader) GetCustomerId() string { + if x != nil { + return x.CustomerId + } + return "" +} + +// Deprecated: Marked as deprecated in vorgang.model.proto. +func (x *GrpcEingangHeader) GetClient() string { + if x != nil { + return x.Client + } + return "" +} + +// Deprecated: Marked as deprecated in vorgang.model.proto. +func (x *GrpcEingangHeader) GetClientId() string { + if x != nil { + return x.ClientId + } + return "" +} + +func (x *GrpcEingangHeader) GetFormEngineName() string { + if x != nil { + return x.FormEngineName + } + return "" +} + +func (x *GrpcEingangHeader) GetServiceKonto() *GrpcServiceKonto { + if x != nil { + return x.ServiceKonto + } + return nil +} + +func (x *GrpcEingangHeader) GetVorgangNummer() string { + if x != nil { + return x.VorgangNummer + } + return "" +} + +type GrpcServiceKonto struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` + PostfachAddresses []*GrpcPostfachAddress `protobuf:"bytes,2,rep,name=postfachAddresses,proto3" json:"postfachAddresses,omitempty"` + TrustLevel string `protobuf:"bytes,3,opt,name=trustLevel,proto3" json:"trustLevel,omitempty"` +} + +func (x *GrpcServiceKonto) Reset() { + *x = GrpcServiceKonto{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcServiceKonto) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcServiceKonto) ProtoMessage() {} + +func (x *GrpcServiceKonto) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcServiceKonto.ProtoReflect.Descriptor instead. +func (*GrpcServiceKonto) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{7} +} + +func (x *GrpcServiceKonto) GetType() string { + if x != nil { + return x.Type + } + return "" +} + +func (x *GrpcServiceKonto) GetPostfachAddresses() []*GrpcPostfachAddress { + if x != nil { + return x.PostfachAddresses + } + return nil +} + +func (x *GrpcServiceKonto) GetTrustLevel() string { + if x != nil { + return x.TrustLevel + } + return "" +} + +type GrpcPostfachAddress struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` + Identifier *de_ozgcloud_vorgang_common.GrpcObject `protobuf:"bytes,2,opt,name=identifier,proto3" json:"identifier,omitempty"` + Type int32 `protobuf:"varint,3,opt,name=type,proto3" json:"type,omitempty"` +} + +func (x *GrpcPostfachAddress) Reset() { + *x = GrpcPostfachAddress{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcPostfachAddress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcPostfachAddress) ProtoMessage() {} + +func (x *GrpcPostfachAddress) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcPostfachAddress.ProtoReflect.Descriptor instead. +func (*GrpcPostfachAddress) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{8} +} + +func (x *GrpcPostfachAddress) GetVersion() string { + if x != nil { + return x.Version + } + return "" +} + +func (x *GrpcPostfachAddress) GetIdentifier() *de_ozgcloud_vorgang_common.GrpcObject { + if x != nil { + return x.Identifier + } + return nil +} + +func (x *GrpcPostfachAddress) GetType() int32 { + if x != nil { + return x.Type + } + return 0 +} + +type GrpcAntragsteller struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Anrede string `protobuf:"bytes,1,opt,name=anrede,proto3" json:"anrede,omitempty"` + Nachname string `protobuf:"bytes,2,opt,name=nachname,proto3" json:"nachname,omitempty"` + Vorname string `protobuf:"bytes,3,opt,name=vorname,proto3" json:"vorname,omitempty"` + Geburtsdatum string `protobuf:"bytes,4,opt,name=geburtsdatum,proto3" json:"geburtsdatum,omitempty"` + Geburtsort string `protobuf:"bytes,5,opt,name=geburtsort,proto3" json:"geburtsort,omitempty"` + Geburtsname string `protobuf:"bytes,6,opt,name=geburtsname,proto3" json:"geburtsname,omitempty"` + Email string `protobuf:"bytes,7,opt,name=email,proto3" json:"email,omitempty"` + Telefon string `protobuf:"bytes,8,opt,name=telefon,proto3" json:"telefon,omitempty"` + Strasse string `protobuf:"bytes,9,opt,name=strasse,proto3" json:"strasse,omitempty"` + Hausnummer string `protobuf:"bytes,10,opt,name=hausnummer,proto3" json:"hausnummer,omitempty"` + Plz string `protobuf:"bytes,11,opt,name=plz,proto3" json:"plz,omitempty"` + Ort string `protobuf:"bytes,12,opt,name=ort,proto3" json:"ort,omitempty"` + // Deprecated: Marked as deprecated in vorgang.model.proto. + PostfachId string `protobuf:"bytes,13,opt,name=postfachId,proto3" json:"postfachId,omitempty"` + OtherData *GrpcFormData `protobuf:"bytes,30,opt,name=otherData,proto3" json:"otherData,omitempty"` + FirmaName string `protobuf:"bytes,31,opt,name=firmaName,proto3" json:"firmaName,omitempty"` +} + +func (x *GrpcAntragsteller) Reset() { + *x = GrpcAntragsteller{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcAntragsteller) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcAntragsteller) ProtoMessage() {} + +func (x *GrpcAntragsteller) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcAntragsteller.ProtoReflect.Descriptor instead. +func (*GrpcAntragsteller) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{9} +} + +func (x *GrpcAntragsteller) GetAnrede() string { + if x != nil { + return x.Anrede + } + return "" +} + +func (x *GrpcAntragsteller) GetNachname() string { + if x != nil { + return x.Nachname + } + return "" +} + +func (x *GrpcAntragsteller) GetVorname() string { + if x != nil { + return x.Vorname + } + return "" +} + +func (x *GrpcAntragsteller) GetGeburtsdatum() string { + if x != nil { + return x.Geburtsdatum + } + return "" +} + +func (x *GrpcAntragsteller) GetGeburtsort() string { + if x != nil { + return x.Geburtsort + } + return "" +} + +func (x *GrpcAntragsteller) GetGeburtsname() string { + if x != nil { + return x.Geburtsname + } + return "" +} + +func (x *GrpcAntragsteller) GetEmail() string { + if x != nil { + return x.Email + } + return "" +} + +func (x *GrpcAntragsteller) GetTelefon() string { + if x != nil { + return x.Telefon + } + return "" +} + +func (x *GrpcAntragsteller) GetStrasse() string { + if x != nil { + return x.Strasse + } + return "" +} + +func (x *GrpcAntragsteller) GetHausnummer() string { + if x != nil { + return x.Hausnummer + } + return "" +} + +func (x *GrpcAntragsteller) GetPlz() string { + if x != nil { + return x.Plz + } + return "" +} + +func (x *GrpcAntragsteller) GetOrt() string { + if x != nil { + return x.Ort + } + return "" +} + +// Deprecated: Marked as deprecated in vorgang.model.proto. +func (x *GrpcAntragsteller) GetPostfachId() string { + if x != nil { + return x.PostfachId + } + return "" +} + +func (x *GrpcAntragsteller) GetOtherData() *GrpcFormData { + if x != nil { + return x.OtherData + } + return nil +} + +func (x *GrpcAntragsteller) GetFirmaName() string { + if x != nil { + return x.FirmaName + } + return "" +} + +type GrpcFormData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Field []*GrpcFormField `protobuf:"bytes,1,rep,name=field,proto3" json:"field,omitempty"` + Form []*GrpcSubForm `protobuf:"bytes,2,rep,name=form,proto3" json:"form,omitempty"` +} + +func (x *GrpcFormData) Reset() { + *x = GrpcFormData{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcFormData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcFormData) ProtoMessage() {} + +func (x *GrpcFormData) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcFormData.ProtoReflect.Descriptor instead. +func (*GrpcFormData) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{10} +} + +func (x *GrpcFormData) GetField() []*GrpcFormField { + if x != nil { + return x.Field + } + return nil +} + +func (x *GrpcFormData) GetForm() []*GrpcSubForm { + if x != nil { + return x.Form + } + return nil +} + +type GrpcFormField struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + Label string `protobuf:"bytes,3,opt,name=label,proto3" json:"label,omitempty"` +} + +func (x *GrpcFormField) Reset() { + *x = GrpcFormField{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcFormField) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcFormField) ProtoMessage() {} + +func (x *GrpcFormField) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcFormField.ProtoReflect.Descriptor instead. +func (*GrpcFormField) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{11} +} + +func (x *GrpcFormField) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *GrpcFormField) GetValue() string { + if x != nil { + return x.Value + } + return "" +} + +func (x *GrpcFormField) GetLabel() string { + if x != nil { + return x.Label + } + return "" +} + +type GrpcSubForm struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` + Field []*GrpcFormField `protobuf:"bytes,2,rep,name=field,proto3" json:"field,omitempty"` + SubForm []*GrpcSubForm `protobuf:"bytes,3,rep,name=subForm,proto3" json:"subForm,omitempty"` + Label string `protobuf:"bytes,4,opt,name=label,proto3" json:"label,omitempty"` + ControlData *GrpcControlData `protobuf:"bytes,5,opt,name=controlData,proto3" json:"controlData,omitempty"` +} + +func (x *GrpcSubForm) Reset() { + *x = GrpcSubForm{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcSubForm) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcSubForm) ProtoMessage() {} + +func (x *GrpcSubForm) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcSubForm.ProtoReflect.Descriptor instead. +func (*GrpcSubForm) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{12} +} + +func (x *GrpcSubForm) GetTitle() string { + if x != nil { + return x.Title + } + return "" +} + +func (x *GrpcSubForm) GetField() []*GrpcFormField { + if x != nil { + return x.Field + } + return nil +} + +func (x *GrpcSubForm) GetSubForm() []*GrpcSubForm { + if x != nil { + return x.SubForm + } + return nil +} + +func (x *GrpcSubForm) GetLabel() string { + if x != nil { + return x.Label + } + return "" +} + +func (x *GrpcSubForm) GetControlData() *GrpcControlData { + if x != nil { + return x.ControlData + } + return nil +} + +type GrpcControlData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Metadata bool `protobuf:"varint,1,opt,name=metadata,proto3" json:"metadata,omitempty"` +} + +func (x *GrpcControlData) Reset() { + *x = GrpcControlData{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcControlData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcControlData) ProtoMessage() {} + +func (x *GrpcControlData) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcControlData.ProtoReflect.Descriptor instead. +func (*GrpcControlData) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{13} +} + +func (x *GrpcControlData) GetMetadata() bool { + if x != nil { + return x.Metadata + } + return false +} + +type GrpcZustaendigeStelle struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OrganisationseinheitenId string `protobuf:"bytes,1,opt,name=organisationseinheitenId,proto3" json:"organisationseinheitenId,omitempty"` + Email string `protobuf:"bytes,2,opt,name=email,proto3" json:"email,omitempty"` + Bezeichnung string `protobuf:"bytes,3,opt,name=bezeichnung,proto3" json:"bezeichnung,omitempty"` + GemeindeSchluessel string `protobuf:"bytes,4,opt,name=gemeindeSchluessel,proto3" json:"gemeindeSchluessel,omitempty"` + AmtlicherRegionalSchluessel string `protobuf:"bytes,5,opt,name=amtlicherRegionalSchluessel,proto3" json:"amtlicherRegionalSchluessel,omitempty"` + HausanschriftStrasse string `protobuf:"bytes,6,opt,name=hausanschriftStrasse,proto3" json:"hausanschriftStrasse,omitempty"` + HausanschriftPlz string `protobuf:"bytes,7,opt,name=hausanschriftPlz,proto3" json:"hausanschriftPlz,omitempty"` + HausanschriftOrt string `protobuf:"bytes,8,opt,name=hausanschriftOrt,proto3" json:"hausanschriftOrt,omitempty"` + Telefon string `protobuf:"bytes,9,opt,name=telefon,proto3" json:"telefon,omitempty"` +} + +func (x *GrpcZustaendigeStelle) Reset() { + *x = GrpcZustaendigeStelle{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcZustaendigeStelle) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcZustaendigeStelle) ProtoMessage() {} + +func (x *GrpcZustaendigeStelle) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcZustaendigeStelle.ProtoReflect.Descriptor instead. +func (*GrpcZustaendigeStelle) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{14} +} + +func (x *GrpcZustaendigeStelle) GetOrganisationseinheitenId() string { + if x != nil { + return x.OrganisationseinheitenId + } + return "" +} + +func (x *GrpcZustaendigeStelle) GetEmail() string { + if x != nil { + return x.Email + } + return "" +} + +func (x *GrpcZustaendigeStelle) GetBezeichnung() string { + if x != nil { + return x.Bezeichnung + } + return "" +} + +func (x *GrpcZustaendigeStelle) GetGemeindeSchluessel() string { + if x != nil { + return x.GemeindeSchluessel + } + return "" +} + +func (x *GrpcZustaendigeStelle) GetAmtlicherRegionalSchluessel() string { + if x != nil { + return x.AmtlicherRegionalSchluessel + } + return "" +} + +func (x *GrpcZustaendigeStelle) GetHausanschriftStrasse() string { + if x != nil { + return x.HausanschriftStrasse + } + return "" +} + +func (x *GrpcZustaendigeStelle) GetHausanschriftPlz() string { + if x != nil { + return x.HausanschriftPlz + } + return "" +} + +func (x *GrpcZustaendigeStelle) GetHausanschriftOrt() string { + if x != nil { + return x.HausanschriftOrt + } + return "" +} + +func (x *GrpcZustaendigeStelle) GetTelefon() string { + if x != nil { + return x.Telefon + } + return "" +} + +type GrpcQuery struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LogicalOperator GrpcLogicalOperator `protobuf:"varint,1,opt,name=logicalOperator,proto3,enum=de.ozgcloud.vorgang.vorgang.GrpcLogicalOperator" json:"logicalOperator,omitempty"` + Expressions []*GrpcVorgangQueryExpression `protobuf:"bytes,2,rep,name=expressions,proto3" json:"expressions,omitempty"` + NestedQuery *GrpcQuery `protobuf:"bytes,3,opt,name=nestedQuery,proto3" json:"nestedQuery,omitempty"` +} + +func (x *GrpcQuery) Reset() { + *x = GrpcQuery{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcQuery) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcQuery) ProtoMessage() {} + +func (x *GrpcQuery) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcQuery.ProtoReflect.Descriptor instead. +func (*GrpcQuery) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{15} +} + +func (x *GrpcQuery) GetLogicalOperator() GrpcLogicalOperator { + if x != nil { + return x.LogicalOperator + } + return GrpcLogicalOperator_AND +} + +func (x *GrpcQuery) GetExpressions() []*GrpcVorgangQueryExpression { + if x != nil { + return x.Expressions + } + return nil +} + +func (x *GrpcQuery) GetNestedQuery() *GrpcQuery { + if x != nil { + return x.NestedQuery + } + return nil +} + +type GrpcVorgangQueryExpression struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"` + Operator de_ozgcloud_vorgang_common.GrpcQueryOperator `protobuf:"varint,2,opt,name=operator,proto3,enum=de.ozgcloud.vorgang.common.GrpcQueryOperator" json:"operator,omitempty"` + // Types that are assignable to Operand: + // + // *GrpcVorgangQueryExpression_OperandIntValue + // *GrpcVorgangQueryExpression_OperandBoolValue + // *GrpcVorgangQueryExpression_OperandStringValue + Operand isGrpcVorgangQueryExpression_Operand `protobuf_oneof:"operand"` +} + +func (x *GrpcVorgangQueryExpression) Reset() { + *x = GrpcVorgangQueryExpression{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcVorgangQueryExpression) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcVorgangQueryExpression) ProtoMessage() {} + +func (x *GrpcVorgangQueryExpression) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcVorgangQueryExpression.ProtoReflect.Descriptor instead. +func (*GrpcVorgangQueryExpression) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{16} +} + +func (x *GrpcVorgangQueryExpression) GetPath() string { + if x != nil { + return x.Path + } + return "" +} + +func (x *GrpcVorgangQueryExpression) GetOperator() de_ozgcloud_vorgang_common.GrpcQueryOperator { + if x != nil { + return x.Operator + } + return de_ozgcloud_vorgang_common.GrpcQueryOperator(0) +} + +func (m *GrpcVorgangQueryExpression) GetOperand() isGrpcVorgangQueryExpression_Operand { + if m != nil { + return m.Operand + } + return nil +} + +func (x *GrpcVorgangQueryExpression) GetOperandIntValue() int32 { + if x, ok := x.GetOperand().(*GrpcVorgangQueryExpression_OperandIntValue); ok { + return x.OperandIntValue + } + return 0 +} + +func (x *GrpcVorgangQueryExpression) GetOperandBoolValue() bool { + if x, ok := x.GetOperand().(*GrpcVorgangQueryExpression_OperandBoolValue); ok { + return x.OperandBoolValue + } + return false +} + +func (x *GrpcVorgangQueryExpression) GetOperandStringValue() string { + if x, ok := x.GetOperand().(*GrpcVorgangQueryExpression_OperandStringValue); ok { + return x.OperandStringValue + } + return "" +} + +type isGrpcVorgangQueryExpression_Operand interface { + isGrpcVorgangQueryExpression_Operand() +} + +type GrpcVorgangQueryExpression_OperandIntValue struct { + OperandIntValue int32 `protobuf:"varint,3,opt,name=operandIntValue,proto3,oneof"` +} + +type GrpcVorgangQueryExpression_OperandBoolValue struct { + OperandBoolValue bool `protobuf:"varint,4,opt,name=operandBoolValue,proto3,oneof"` +} + +type GrpcVorgangQueryExpression_OperandStringValue struct { + OperandStringValue string `protobuf:"bytes,5,opt,name=operandStringValue,proto3,oneof"` +} + +func (*GrpcVorgangQueryExpression_OperandIntValue) isGrpcVorgangQueryExpression_Operand() {} + +func (*GrpcVorgangQueryExpression_OperandBoolValue) isGrpcVorgangQueryExpression_Operand() {} + +func (*GrpcVorgangQueryExpression_OperandStringValue) isGrpcVorgangQueryExpression_Operand() {} + +type GrpcCreateCollaborationVorgangRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Request: + // + // *GrpcCreateCollaborationVorgangRequest_CollaborationRequest + Request isGrpcCreateCollaborationVorgangRequest_Request `protobuf_oneof:"request"` +} + +func (x *GrpcCreateCollaborationVorgangRequest) Reset() { + *x = GrpcCreateCollaborationVorgangRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcCreateCollaborationVorgangRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcCreateCollaborationVorgangRequest) ProtoMessage() {} + +func (x *GrpcCreateCollaborationVorgangRequest) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcCreateCollaborationVorgangRequest.ProtoReflect.Descriptor instead. +func (*GrpcCreateCollaborationVorgangRequest) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{17} +} + +func (m *GrpcCreateCollaborationVorgangRequest) GetRequest() isGrpcCreateCollaborationVorgangRequest_Request { + if m != nil { + return m.Request + } + return nil +} + +func (x *GrpcCreateCollaborationVorgangRequest) GetCollaborationRequest() *GrpcCollaborationRequest { + if x, ok := x.GetRequest().(*GrpcCreateCollaborationVorgangRequest_CollaborationRequest); ok { + return x.CollaborationRequest + } + return nil +} + +type isGrpcCreateCollaborationVorgangRequest_Request interface { + isGrpcCreateCollaborationVorgangRequest_Request() +} + +type GrpcCreateCollaborationVorgangRequest_CollaborationRequest struct { + CollaborationRequest *GrpcCollaborationRequest `protobuf:"bytes,1,opt,name=collaborationRequest,proto3,oneof"` +} + +func (*GrpcCreateCollaborationVorgangRequest_CollaborationRequest) isGrpcCreateCollaborationVorgangRequest_Request() { +} + +type GrpcCollaborationRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + VorgangId string `protobuf:"bytes,1,opt,name=vorgangId,proto3" json:"vorgangId,omitempty"` + CollaborationLevel int32 `protobuf:"varint,2,opt,name=collaborationLevel,proto3" json:"collaborationLevel,omitempty"` + ZustaendigeStelle string `protobuf:"bytes,3,opt,name=zustaendigeStelle,proto3" json:"zustaendigeStelle,omitempty"` +} + +func (x *GrpcCollaborationRequest) Reset() { + *x = GrpcCollaborationRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcCollaborationRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcCollaborationRequest) ProtoMessage() {} + +func (x *GrpcCollaborationRequest) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcCollaborationRequest.ProtoReflect.Descriptor instead. +func (*GrpcCollaborationRequest) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{18} +} + +func (x *GrpcCollaborationRequest) GetVorgangId() string { + if x != nil { + return x.VorgangId + } + return "" +} + +func (x *GrpcCollaborationRequest) GetCollaborationLevel() int32 { + if x != nil { + return x.CollaborationLevel + } + return 0 +} + +func (x *GrpcCollaborationRequest) GetZustaendigeStelle() string { + if x != nil { + return x.ZustaendigeStelle + } + return "" +} + +type GrpcCreateCollaborationVorgangResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + VorgangId string `protobuf:"bytes,1,opt,name=vorgangId,proto3" json:"vorgangId,omitempty"` +} + +func (x *GrpcCreateCollaborationVorgangResponse) Reset() { + *x = GrpcCreateCollaborationVorgangResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_vorgang_model_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GrpcCreateCollaborationVorgangResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GrpcCreateCollaborationVorgangResponse) ProtoMessage() {} + +func (x *GrpcCreateCollaborationVorgangResponse) ProtoReflect() protoreflect.Message { + mi := &file_vorgang_model_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GrpcCreateCollaborationVorgangResponse.ProtoReflect.Descriptor instead. +func (*GrpcCreateCollaborationVorgangResponse) Descriptor() ([]byte, []int) { + return file_vorgang_model_proto_rawDescGZIP(), []int{19} +} + +func (x *GrpcCreateCollaborationVorgangResponse) GetVorgangId() string { + if x != nil { + return x.VorgangId + } + return "" +} + +var File_vorgang_model_proto protoreflect.FileDescriptor + +var file_vorgang_model_proto_rawDesc = []byte{ + 0x0a, 0x13, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1b, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, + 0x6e, 0x67, 0x1a, 0x1b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, + 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x22, 0xf6, 0x02, 0x0a, 0x11, 0x47, 0x72, 0x70, 0x63, 0x56, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x67, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x22, 0x0a, + 0x0c, 0x61, 0x6b, 0x74, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, 0x6e, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6b, 0x74, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, + 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x54, 0x6f, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x54, + 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x6d, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x6d, 0x65, 0x72, 0x12, 0x69, 0x0a, 0x10, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2e, 0x47, + 0x72, 0x70, 0x63, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x52, 0x10, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x6f, 0x72, 0x6d, 0x45, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x6f, + 0x72, 0x6d, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x85, 0x04, 0x0a, + 0x16, 0x47, 0x72, 0x70, 0x63, 0x56, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x57, 0x69, 0x74, 0x68, + 0x45, 0x69, 0x6e, 0x67, 0x61, 0x6e, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, + 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x61, + 0x6b, 0x74, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x61, 0x6b, 0x74, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, 0x6e, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x54, 0x6f, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x54, 0x6f, 0x12, + 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x6d, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x6e, 0x75, 0x6d, 0x6d, 0x65, 0x72, 0x12, 0x69, 0x0a, 0x10, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x3d, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2e, 0x47, 0x72, 0x70, + 0x63, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x52, 0x10, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x73, 0x12, 0x42, 0x0a, 0x07, 0x65, 0x69, 0x6e, 0x67, 0x61, 0x6e, 0x67, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, + 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x45, 0x69, 0x6e, 0x67, 0x61, 0x6e, 0x67, 0x52, 0x07, 0x65, + 0x69, 0x6e, 0x67, 0x61, 0x6e, 0x67, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x6f, 0x72, 0x6d, 0x45, 0x6e, + 0x67, 0x69, 0x6e, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, + 0x66, 0x6f, 0x72, 0x6d, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x44, + 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, + 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, + 0x63, 0x56, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x48, 0x65, 0x61, 0x64, 0x52, 0x06, 0x68, 0x65, + 0x61, 0x64, 0x65, 0x72, 0x22, 0x64, 0x0a, 0x0f, 0x47, 0x72, 0x70, 0x63, 0x56, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x67, 0x48, 0x65, 0x61, 0x64, 0x12, 0x51, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x4b, 0x6f, 0x6e, 0x74, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, + 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, + 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4b, 0x6f, 0x6e, 0x74, 0x6f, 0x52, 0x0c, 0x73, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x4b, 0x6f, 0x6e, 0x74, 0x6f, 0x22, 0xff, 0x04, 0x0a, 0x0b, 0x47, + 0x72, 0x70, 0x63, 0x45, 0x69, 0x6e, 0x67, 0x61, 0x6e, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x46, 0x0a, 0x06, 0x68, 0x65, + 0x61, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x65, 0x2e, + 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, + 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x45, 0x69, 0x6e, + 0x67, 0x61, 0x6e, 0x67, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x12, 0x54, 0x0a, 0x0d, 0x61, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x73, 0x74, 0x65, 0x6c, + 0x6c, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x65, 0x2e, 0x6f, + 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, + 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x41, 0x6e, 0x74, 0x72, + 0x61, 0x67, 0x73, 0x74, 0x65, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x0d, 0x61, 0x6e, 0x74, 0x72, 0x61, + 0x67, 0x73, 0x74, 0x65, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x60, 0x0a, 0x11, 0x7a, 0x75, 0x73, 0x74, + 0x61, 0x65, 0x6e, 0x64, 0x69, 0x67, 0x65, 0x53, 0x74, 0x65, 0x6c, 0x6c, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, + 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x5a, 0x75, 0x73, 0x74, 0x61, 0x65, 0x6e, 0x64, 0x69, 0x67, + 0x65, 0x53, 0x74, 0x65, 0x6c, 0x6c, 0x65, 0x52, 0x11, 0x7a, 0x75, 0x73, 0x74, 0x61, 0x65, 0x6e, + 0x64, 0x69, 0x67, 0x65, 0x53, 0x74, 0x65, 0x6c, 0x6c, 0x65, 0x12, 0x45, 0x0a, 0x08, 0x66, 0x6f, + 0x72, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, + 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, + 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x46, + 0x6f, 0x72, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x44, 0x61, 0x74, + 0x61, 0x12, 0x30, 0x0a, 0x13, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x41, 0x74, 0x74, + 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, + 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x12, 0x38, 0x0a, 0x17, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x52, + 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x17, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x52, 0x65, + 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x54, 0x0a, + 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x14, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, + 0x2e, 0x47, 0x72, 0x70, 0x63, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x46, 0x69, 0x6c, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x12, 0x57, 0x0a, 0x0f, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x15, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, + 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, + 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x49, + 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x0f, 0x72, 0x65, 0x70, + 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x70, 0x0a, 0x15, + 0x47, 0x72, 0x70, 0x63, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x46, 0x69, 0x6c, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x43, 0x0a, 0x05, 0x66, 0x69, 0x6c, + 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, + 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, + 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x49, 0x6e, 0x63, 0x6f, 0x6d, + 0x69, 0x6e, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x22, 0xa2, + 0x01, 0x0a, 0x10, 0x47, 0x72, 0x70, 0x63, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x46, + 0x69, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x49, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x49, 0x64, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x22, 0xbc, 0x03, 0x0a, 0x11, 0x47, 0x72, 0x70, 0x63, 0x45, 0x69, 0x6e, 0x67, + 0x61, 0x6e, 0x67, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, + 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, + 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, + 0x72, 0x12, 0x1e, 0x0a, 0x08, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, + 0x72, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x06, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x06, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x12, 0x1e, 0x0a, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x6f, 0x72, 0x6d, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x6f, 0x72, 0x6d, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x51, 0x0a, 0x0c, 0x73, 0x65, 0x72, + 0x76, 0x69, 0x63, 0x65, 0x4b, 0x6f, 0x6e, 0x74, 0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2d, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, + 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, + 0x70, 0x63, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4b, 0x6f, 0x6e, 0x74, 0x6f, 0x52, 0x0c, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4b, 0x6f, 0x6e, 0x74, 0x6f, 0x12, 0x24, 0x0a, 0x0d, + 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x4e, 0x75, 0x6d, 0x6d, 0x65, 0x72, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0d, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x4e, 0x75, 0x6d, 0x6d, + 0x65, 0x72, 0x22, 0xa6, 0x01, 0x0a, 0x10, 0x47, 0x72, 0x70, 0x63, 0x53, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x4b, 0x6f, 0x6e, 0x74, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x5e, 0x0a, 0x11, 0x70, + 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, + 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x11, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, + 0x63, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x74, + 0x72, 0x75, 0x73, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x74, 0x72, 0x75, 0x73, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x8b, 0x01, 0x0a, 0x13, + 0x47, 0x72, 0x70, 0x63, 0x50, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, + 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x47, + 0x72, 0x70, 0x63, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xe0, 0x03, 0x0a, 0x11, 0x47, 0x72, + 0x70, 0x63, 0x41, 0x6e, 0x74, 0x72, 0x61, 0x67, 0x73, 0x74, 0x65, 0x6c, 0x6c, 0x65, 0x72, 0x12, + 0x16, 0x0a, 0x06, 0x61, 0x6e, 0x72, 0x65, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x61, 0x6e, 0x72, 0x65, 0x64, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x61, 0x63, 0x68, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x61, 0x63, 0x68, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x6f, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x6f, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, + 0x0c, 0x67, 0x65, 0x62, 0x75, 0x72, 0x74, 0x73, 0x64, 0x61, 0x74, 0x75, 0x6d, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x67, 0x65, 0x62, 0x75, 0x72, 0x74, 0x73, 0x64, 0x61, 0x74, 0x75, + 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x65, 0x62, 0x75, 0x72, 0x74, 0x73, 0x6f, 0x72, 0x74, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x67, 0x65, 0x62, 0x75, 0x72, 0x74, 0x73, 0x6f, 0x72, + 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x67, 0x65, 0x62, 0x75, 0x72, 0x74, 0x73, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x67, 0x65, 0x62, 0x75, 0x72, 0x74, 0x73, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x65, 0x6c, + 0x65, 0x66, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x65, 0x6c, 0x65, + 0x66, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x72, 0x61, 0x73, 0x73, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x74, 0x72, 0x61, 0x73, 0x73, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x68, 0x61, 0x75, 0x73, 0x6e, 0x75, 0x6d, 0x6d, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x68, 0x61, 0x75, 0x73, 0x6e, 0x75, 0x6d, 0x6d, 0x65, 0x72, 0x12, 0x10, 0x0a, + 0x03, 0x70, 0x6c, 0x7a, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x70, 0x6c, 0x7a, 0x12, + 0x10, 0x0a, 0x03, 0x6f, 0x72, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x72, + 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x61, 0x63, 0x68, 0x49, 0x64, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x70, 0x6f, 0x73, 0x74, 0x66, + 0x61, 0x63, 0x68, 0x49, 0x64, 0x12, 0x47, 0x0a, 0x09, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x44, 0x61, + 0x74, 0x61, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, + 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, + 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x46, 0x6f, 0x72, 0x6d, 0x44, + 0x61, 0x74, 0x61, 0x52, 0x09, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1c, + 0x0a, 0x09, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x8e, 0x01, 0x0a, + 0x0c, 0x47, 0x72, 0x70, 0x63, 0x46, 0x6f, 0x72, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x12, 0x40, 0x0a, + 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, + 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, + 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x46, + 0x6f, 0x72, 0x6d, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x52, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x12, + 0x3c, 0x0a, 0x04, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, + 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, + 0x53, 0x75, 0x62, 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x04, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x4f, 0x0a, + 0x0d, 0x47, 0x72, 0x70, 0x63, 0x46, 0x6f, 0x72, 0x6d, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x8f, + 0x02, 0x0a, 0x0b, 0x47, 0x72, 0x70, 0x63, 0x53, 0x75, 0x62, 0x46, 0x6f, 0x72, 0x6d, 0x12, 0x14, + 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x12, 0x40, 0x0a, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, + 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x46, 0x6f, 0x72, 0x6d, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x52, + 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x42, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x46, 0x6f, 0x72, + 0x6d, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, + 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x53, 0x75, 0x62, 0x46, 0x6f, 0x72, + 0x6d, 0x52, 0x07, 0x73, 0x75, 0x62, 0x46, 0x6f, 0x72, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x12, 0x4e, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x44, + 0x61, 0x74, 0x61, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x44, 0x61, 0x74, 0x61, + 0x22, 0x2d, 0x0a, 0x0f, 0x47, 0x72, 0x70, 0x63, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x44, + 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, + 0xa3, 0x03, 0x0a, 0x15, 0x47, 0x72, 0x70, 0x63, 0x5a, 0x75, 0x73, 0x74, 0x61, 0x65, 0x6e, 0x64, + 0x69, 0x67, 0x65, 0x53, 0x74, 0x65, 0x6c, 0x6c, 0x65, 0x12, 0x3a, 0x0a, 0x18, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x69, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x69, 0x6e, 0x68, 0x65, 0x69, + 0x74, 0x65, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x18, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x69, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x69, 0x6e, 0x68, 0x65, 0x69, + 0x74, 0x65, 0x6e, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x62, + 0x65, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x6e, 0x75, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x62, 0x65, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x6e, 0x75, 0x6e, 0x67, 0x12, 0x2e, 0x0a, + 0x12, 0x67, 0x65, 0x6d, 0x65, 0x69, 0x6e, 0x64, 0x65, 0x53, 0x63, 0x68, 0x6c, 0x75, 0x65, 0x73, + 0x73, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x67, 0x65, 0x6d, 0x65, 0x69, + 0x6e, 0x64, 0x65, 0x53, 0x63, 0x68, 0x6c, 0x75, 0x65, 0x73, 0x73, 0x65, 0x6c, 0x12, 0x40, 0x0a, + 0x1b, 0x61, 0x6d, 0x74, 0x6c, 0x69, 0x63, 0x68, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x53, 0x63, 0x68, 0x6c, 0x75, 0x65, 0x73, 0x73, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x1b, 0x61, 0x6d, 0x74, 0x6c, 0x69, 0x63, 0x68, 0x65, 0x72, 0x52, 0x65, 0x67, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x63, 0x68, 0x6c, 0x75, 0x65, 0x73, 0x73, 0x65, 0x6c, 0x12, + 0x32, 0x0a, 0x14, 0x68, 0x61, 0x75, 0x73, 0x61, 0x6e, 0x73, 0x63, 0x68, 0x72, 0x69, 0x66, 0x74, + 0x53, 0x74, 0x72, 0x61, 0x73, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x68, + 0x61, 0x75, 0x73, 0x61, 0x6e, 0x73, 0x63, 0x68, 0x72, 0x69, 0x66, 0x74, 0x53, 0x74, 0x72, 0x61, + 0x73, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x68, 0x61, 0x75, 0x73, 0x61, 0x6e, 0x73, 0x63, 0x68, + 0x72, 0x69, 0x66, 0x74, 0x50, 0x6c, 0x7a, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x68, + 0x61, 0x75, 0x73, 0x61, 0x6e, 0x73, 0x63, 0x68, 0x72, 0x69, 0x66, 0x74, 0x50, 0x6c, 0x7a, 0x12, + 0x2a, 0x0a, 0x10, 0x68, 0x61, 0x75, 0x73, 0x61, 0x6e, 0x73, 0x63, 0x68, 0x72, 0x69, 0x66, 0x74, + 0x4f, 0x72, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x68, 0x61, 0x75, 0x73, 0x61, + 0x6e, 0x73, 0x63, 0x68, 0x72, 0x69, 0x66, 0x74, 0x4f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x74, + 0x65, 0x6c, 0x65, 0x66, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x65, + 0x6c, 0x65, 0x66, 0x6f, 0x6e, 0x22, 0x8c, 0x02, 0x0a, 0x09, 0x47, 0x72, 0x70, 0x63, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x12, 0x5a, 0x0a, 0x0f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x4f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x64, + 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, + 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4c, + 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x0f, + 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, + 0x59, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, + 0x6e, 0x67, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x56, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x65, + 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x48, 0x0a, 0x0b, 0x6e, 0x65, + 0x73, 0x74, 0x65, 0x64, 0x51, 0x75, 0x65, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x26, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, + 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x47, 0x72, + 0x70, 0x63, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x0b, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x22, 0x92, 0x02, 0x0a, 0x1a, 0x47, 0x72, 0x70, 0x63, 0x56, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x49, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x64, 0x65, 0x2e, 0x6f, + 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, + 0x6f, 0x72, 0x12, 0x2a, 0x0a, 0x0f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x49, 0x6e, 0x74, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0f, 0x6f, + 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x49, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2c, + 0x0a, 0x10, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x10, 0x6f, 0x70, 0x65, 0x72, + 0x61, 0x6e, 0x64, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x30, 0x0a, 0x12, + 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x12, 0x6f, 0x70, 0x65, 0x72, + 0x61, 0x6e, 0x64, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x09, + 0x0a, 0x07, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x22, 0x9f, 0x01, 0x0a, 0x25, 0x47, 0x72, + 0x70, 0x63, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x62, 0x6f, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x6b, 0x0a, 0x14, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x62, 0x6f, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, + 0x47, 0x72, 0x70, 0x63, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x62, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x14, 0x63, 0x6f, 0x6c, 0x6c, + 0x61, 0x62, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x42, 0x09, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x96, 0x01, 0x0a, 0x18, + 0x47, 0x72, 0x70, 0x63, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x62, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x67, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x12, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x62, + 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x12, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x62, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x2c, 0x0a, 0x11, 0x7a, 0x75, 0x73, 0x74, 0x61, 0x65, + 0x6e, 0x64, 0x69, 0x67, 0x65, 0x53, 0x74, 0x65, 0x6c, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x11, 0x7a, 0x75, 0x73, 0x74, 0x61, 0x65, 0x6e, 0x64, 0x69, 0x67, 0x65, 0x53, 0x74, + 0x65, 0x6c, 0x6c, 0x65, 0x22, 0x46, 0x0a, 0x26, 0x47, 0x72, 0x70, 0x63, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x62, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, + 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, + 0x0a, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x49, 0x64, 0x2a, 0x26, 0x0a, 0x13, + 0x47, 0x72, 0x70, 0x63, 0x4c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4e, 0x44, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, + 0x4f, 0x52, 0x10, 0x01, 0x42, 0x1d, 0x5a, 0x1b, 0x64, 0x65, 0x2e, 0x6f, 0x7a, 0x67, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x67, 0x2e, 0x76, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x67, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_vorgang_model_proto_rawDescOnce sync.Once + file_vorgang_model_proto_rawDescData = file_vorgang_model_proto_rawDesc +) + +func file_vorgang_model_proto_rawDescGZIP() []byte { + file_vorgang_model_proto_rawDescOnce.Do(func() { + file_vorgang_model_proto_rawDescData = protoimpl.X.CompressGZIP(file_vorgang_model_proto_rawDescData) + }) + return file_vorgang_model_proto_rawDescData +} + +var file_vorgang_model_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_vorgang_model_proto_msgTypes = make([]protoimpl.MessageInfo, 20) +var file_vorgang_model_proto_goTypes = []any{ + (GrpcLogicalOperator)(0), // 0: de.ozgcloud.vorgang.vorgang.GrpcLogicalOperator + (*GrpcVorgangHeader)(nil), // 1: de.ozgcloud.vorgang.vorgang.GrpcVorgangHeader + (*GrpcVorgangWithEingang)(nil), // 2: de.ozgcloud.vorgang.vorgang.GrpcVorgangWithEingang + (*GrpcVorgangHead)(nil), // 3: de.ozgcloud.vorgang.vorgang.GrpcVorgangHead + (*GrpcEingang)(nil), // 4: de.ozgcloud.vorgang.vorgang.GrpcEingang + (*GrpcIncomingFileGroup)(nil), // 5: de.ozgcloud.vorgang.vorgang.GrpcIncomingFileGroup + (*GrpcIncomingFile)(nil), // 6: de.ozgcloud.vorgang.vorgang.GrpcIncomingFile + (*GrpcEingangHeader)(nil), // 7: de.ozgcloud.vorgang.vorgang.GrpcEingangHeader + (*GrpcServiceKonto)(nil), // 8: de.ozgcloud.vorgang.vorgang.GrpcServiceKonto + (*GrpcPostfachAddress)(nil), // 9: de.ozgcloud.vorgang.vorgang.GrpcPostfachAddress + (*GrpcAntragsteller)(nil), // 10: de.ozgcloud.vorgang.vorgang.GrpcAntragsteller + (*GrpcFormData)(nil), // 11: de.ozgcloud.vorgang.vorgang.GrpcFormData + (*GrpcFormField)(nil), // 12: de.ozgcloud.vorgang.vorgang.GrpcFormField + (*GrpcSubForm)(nil), // 13: de.ozgcloud.vorgang.vorgang.GrpcSubForm + (*GrpcControlData)(nil), // 14: de.ozgcloud.vorgang.vorgang.GrpcControlData + (*GrpcZustaendigeStelle)(nil), // 15: de.ozgcloud.vorgang.vorgang.GrpcZustaendigeStelle + (*GrpcQuery)(nil), // 16: de.ozgcloud.vorgang.vorgang.GrpcQuery + (*GrpcVorgangQueryExpression)(nil), // 17: de.ozgcloud.vorgang.vorgang.GrpcVorgangQueryExpression + (*GrpcCreateCollaborationVorgangRequest)(nil), // 18: de.ozgcloud.vorgang.vorgang.GrpcCreateCollaborationVorgangRequest + (*GrpcCollaborationRequest)(nil), // 19: de.ozgcloud.vorgang.vorgang.GrpcCollaborationRequest + (*GrpcCreateCollaborationVorgangResponse)(nil), // 20: de.ozgcloud.vorgang.vorgang.GrpcCreateCollaborationVorgangResponse + (*de_ozgcloud_vorgang_grpc_clientAttribute.GrpcClientAttribute)(nil), // 21: de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttribute + (*de_ozgcloud_vorgang_common.GrpcObject)(nil), // 22: de.ozgcloud.vorgang.common.GrpcObject + (de_ozgcloud_vorgang_common.GrpcQueryOperator)(0), // 23: de.ozgcloud.vorgang.common.GrpcQueryOperator +} +var file_vorgang_model_proto_depIdxs = []int32{ + 21, // 0: de.ozgcloud.vorgang.vorgang.GrpcVorgangHeader.clientAttributes:type_name -> de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttribute + 21, // 1: de.ozgcloud.vorgang.vorgang.GrpcVorgangWithEingang.clientAttributes:type_name -> de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttribute + 4, // 2: de.ozgcloud.vorgang.vorgang.GrpcVorgangWithEingang.eingang:type_name -> de.ozgcloud.vorgang.vorgang.GrpcEingang + 3, // 3: de.ozgcloud.vorgang.vorgang.GrpcVorgangWithEingang.header:type_name -> de.ozgcloud.vorgang.vorgang.GrpcVorgangHead + 8, // 4: de.ozgcloud.vorgang.vorgang.GrpcVorgangHead.serviceKonto:type_name -> de.ozgcloud.vorgang.vorgang.GrpcServiceKonto + 7, // 5: de.ozgcloud.vorgang.vorgang.GrpcEingang.header:type_name -> de.ozgcloud.vorgang.vorgang.GrpcEingangHeader + 10, // 6: de.ozgcloud.vorgang.vorgang.GrpcEingang.antragsteller:type_name -> de.ozgcloud.vorgang.vorgang.GrpcAntragsteller + 15, // 7: de.ozgcloud.vorgang.vorgang.GrpcEingang.zustaendigeStelle:type_name -> de.ozgcloud.vorgang.vorgang.GrpcZustaendigeStelle + 11, // 8: de.ozgcloud.vorgang.vorgang.GrpcEingang.formData:type_name -> de.ozgcloud.vorgang.vorgang.GrpcFormData + 5, // 9: de.ozgcloud.vorgang.vorgang.GrpcEingang.attachments:type_name -> de.ozgcloud.vorgang.vorgang.GrpcIncomingFileGroup + 6, // 10: de.ozgcloud.vorgang.vorgang.GrpcEingang.representations:type_name -> de.ozgcloud.vorgang.vorgang.GrpcIncomingFile + 6, // 11: de.ozgcloud.vorgang.vorgang.GrpcIncomingFileGroup.files:type_name -> de.ozgcloud.vorgang.vorgang.GrpcIncomingFile + 8, // 12: de.ozgcloud.vorgang.vorgang.GrpcEingangHeader.serviceKonto:type_name -> de.ozgcloud.vorgang.vorgang.GrpcServiceKonto + 9, // 13: de.ozgcloud.vorgang.vorgang.GrpcServiceKonto.postfachAddresses:type_name -> de.ozgcloud.vorgang.vorgang.GrpcPostfachAddress + 22, // 14: de.ozgcloud.vorgang.vorgang.GrpcPostfachAddress.identifier:type_name -> de.ozgcloud.vorgang.common.GrpcObject + 11, // 15: de.ozgcloud.vorgang.vorgang.GrpcAntragsteller.otherData:type_name -> de.ozgcloud.vorgang.vorgang.GrpcFormData + 12, // 16: de.ozgcloud.vorgang.vorgang.GrpcFormData.field:type_name -> de.ozgcloud.vorgang.vorgang.GrpcFormField + 13, // 17: de.ozgcloud.vorgang.vorgang.GrpcFormData.form:type_name -> de.ozgcloud.vorgang.vorgang.GrpcSubForm + 12, // 18: de.ozgcloud.vorgang.vorgang.GrpcSubForm.field:type_name -> de.ozgcloud.vorgang.vorgang.GrpcFormField + 13, // 19: de.ozgcloud.vorgang.vorgang.GrpcSubForm.subForm:type_name -> de.ozgcloud.vorgang.vorgang.GrpcSubForm + 14, // 20: de.ozgcloud.vorgang.vorgang.GrpcSubForm.controlData:type_name -> de.ozgcloud.vorgang.vorgang.GrpcControlData + 0, // 21: de.ozgcloud.vorgang.vorgang.GrpcQuery.logicalOperator:type_name -> de.ozgcloud.vorgang.vorgang.GrpcLogicalOperator + 17, // 22: de.ozgcloud.vorgang.vorgang.GrpcQuery.expressions:type_name -> de.ozgcloud.vorgang.vorgang.GrpcVorgangQueryExpression + 16, // 23: de.ozgcloud.vorgang.vorgang.GrpcQuery.nestedQuery:type_name -> de.ozgcloud.vorgang.vorgang.GrpcQuery + 23, // 24: de.ozgcloud.vorgang.vorgang.GrpcVorgangQueryExpression.operator:type_name -> de.ozgcloud.vorgang.common.GrpcQueryOperator + 19, // 25: de.ozgcloud.vorgang.vorgang.GrpcCreateCollaborationVorgangRequest.collaborationRequest:type_name -> de.ozgcloud.vorgang.vorgang.GrpcCollaborationRequest + 26, // [26:26] is the sub-list for method output_type + 26, // [26:26] is the sub-list for method input_type + 26, // [26:26] is the sub-list for extension type_name + 26, // [26:26] is the sub-list for extension extendee + 0, // [0:26] is the sub-list for field type_name +} + +func init() { file_vorgang_model_proto_init() } +func file_vorgang_model_proto_init() { + if File_vorgang_model_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_vorgang_model_proto_msgTypes[0].Exporter = func(v any, i int) any { + switch v := v.(*GrpcVorgangHeader); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[1].Exporter = func(v any, i int) any { + switch v := v.(*GrpcVorgangWithEingang); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[2].Exporter = func(v any, i int) any { + switch v := v.(*GrpcVorgangHead); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[3].Exporter = func(v any, i int) any { + switch v := v.(*GrpcEingang); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[4].Exporter = func(v any, i int) any { + switch v := v.(*GrpcIncomingFileGroup); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[5].Exporter = func(v any, i int) any { + switch v := v.(*GrpcIncomingFile); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[6].Exporter = func(v any, i int) any { + switch v := v.(*GrpcEingangHeader); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[7].Exporter = func(v any, i int) any { + switch v := v.(*GrpcServiceKonto); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[8].Exporter = func(v any, i int) any { + switch v := v.(*GrpcPostfachAddress); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[9].Exporter = func(v any, i int) any { + switch v := v.(*GrpcAntragsteller); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[10].Exporter = func(v any, i int) any { + switch v := v.(*GrpcFormData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[11].Exporter = func(v any, i int) any { + switch v := v.(*GrpcFormField); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[12].Exporter = func(v any, i int) any { + switch v := v.(*GrpcSubForm); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[13].Exporter = func(v any, i int) any { + switch v := v.(*GrpcControlData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[14].Exporter = func(v any, i int) any { + switch v := v.(*GrpcZustaendigeStelle); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[15].Exporter = func(v any, i int) any { + switch v := v.(*GrpcQuery); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[16].Exporter = func(v any, i int) any { + switch v := v.(*GrpcVorgangQueryExpression); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[17].Exporter = func(v any, i int) any { + switch v := v.(*GrpcCreateCollaborationVorgangRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[18].Exporter = func(v any, i int) any { + switch v := v.(*GrpcCollaborationRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vorgang_model_proto_msgTypes[19].Exporter = func(v any, i int) any { + switch v := v.(*GrpcCreateCollaborationVorgangResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_vorgang_model_proto_msgTypes[16].OneofWrappers = []any{ + (*GrpcVorgangQueryExpression_OperandIntValue)(nil), + (*GrpcVorgangQueryExpression_OperandBoolValue)(nil), + (*GrpcVorgangQueryExpression_OperandStringValue)(nil), + } + file_vorgang_model_proto_msgTypes[17].OneofWrappers = []any{ + (*GrpcCreateCollaborationVorgangRequest_CollaborationRequest)(nil), + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_vorgang_model_proto_rawDesc, + NumEnums: 1, + NumMessages: 20, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_vorgang_model_proto_goTypes, + DependencyIndexes: file_vorgang_model_proto_depIdxs, + EnumInfos: file_vorgang_model_proto_enumTypes, + MessageInfos: file_vorgang_model_proto_msgTypes, + }.Build() + File_vorgang_model_proto = out.File + file_vorgang_model_proto_rawDesc = nil + file_vorgang_model_proto_goTypes = nil + file_vorgang_model_proto_depIdxs = nil +} diff --git a/gen/openapiv2/antragraum.model.swagger.json b/gen/openapiv2/antragraum.model.swagger.json new file mode 100644 index 0000000000000000000000000000000000000000..81f131b95f9c0d8411558931b1b0210f414a928f --- /dev/null +++ b/gen/openapiv2/antragraum.model.swagger.json @@ -0,0 +1,44 @@ +{ + "swagger": "2.0", + "info": { + "title": "antragraum.model.proto", + "version": "version not set" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + } + } +} diff --git a/gen/openapiv2/antragraum.swagger.json b/gen/openapiv2/antragraum.swagger.json new file mode 100644 index 0000000000000000000000000000000000000000..bd268c80835e6536b550a1ca5b92d470a34953aa --- /dev/null +++ b/gen/openapiv2/antragraum.swagger.json @@ -0,0 +1,344 @@ +{ + "swagger": "2.0", + "info": { + "title": "Antragraum Proxy API", + "version": "1.0", + "license": { + "name": "EUPL 1.2", + "url": "https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12" + } + }, + "tags": [ + { + "name": "AntragraumService", + "description": "Service to proxy between Antragraum Backend and NachrichtenManager in OZG-Cloud" + } + ], + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/api/antworten": { + "post": { + "summary": "Summary: SendRueckfrageAnswer rpc", + "description": "Send a reply to a Rueckfrage", + "operationId": "AntragraumService_SendRueckfrageAnswer", + "responses": { + "200": { + "description": "Returns the id of the command created for the send order", + "schema": { + "$ref": "#/definitions/antragraumGrpcSendRueckfrageAnswerResponse" + } + }, + "403": { + "description": "Returned when the user does not have permission to access the resource.", + "schema": {} + }, + "404": { + "description": "Returned when the resource does not exist.", + "schema": {} + }, + "503": { + "description": "Returned when the resource is temporarily unavailable.", + "schema": {} + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/rpcStatus" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/antragraumGrpcSendRueckfrageAnswerRequest" + } + } + ], + "tags": [ + "AntragraumService" + ] + } + }, + "/api/rueckfrage/{id}/{samlToken}": { + "get": { + "summary": "Summary: GetRueckfrage rpc", + "description": "Get the Rueckfrage by id", + "operationId": "AntragraumService_GetRueckfrage", + "responses": { + "200": { + "description": "Returns the Rueckfrage", + "schema": { + "$ref": "#/definitions/antragraumGrpcGetRueckfrageResponse" + } + }, + "403": { + "description": "Returned when the user does not have permission to access the resource.", + "schema": {} + }, + "404": { + "description": "Returned when the resource does not exist.", + "schema": {} + }, + "503": { + "description": "Returned when the resource is temporarily unavailable.", + "schema": {} + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/rpcStatus" + } + } + }, + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "samlToken", + "in": "path", + "required": true, + "type": "string" + } + ], + "tags": [ + "AntragraumService" + ] + } + }, + "/api/rueckfragen/{postfachId}/{samlToken}": { + "get": { + "summary": "Summary: FindRueckfragen rpc", + "description": "Find all Rueckfragen of a postfach", + "operationId": "AntragraumService_FindRueckfragen", + "responses": { + "200": { + "description": "Returns the list of Rueckfragen Headers found.", + "schema": { + "$ref": "#/definitions/antragraumGrpcFindRueckfragenResponse" + } + }, + "403": { + "description": "Returned when the user does not have permission to access the resource.", + "schema": {} + }, + "404": { + "description": "Returned when the resource does not exist.", + "schema": {} + }, + "503": { + "description": "Returned when the resource is temporarily unavailable.", + "schema": {} + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/rpcStatus" + } + } + }, + "parameters": [ + { + "name": "postfachId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "samlToken", + "in": "path", + "required": true, + "type": "string" + } + ], + "tags": [ + "AntragraumService" + ] + } + } + }, + "definitions": { + "antragraumGrpcFindRueckfragenResponse": { + "type": "object", + "properties": { + "rueckfrageHead": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/antragraumGrpcRueckfrageHead" + } + } + } + }, + "antragraumGrpcGetRueckfrageResponse": { + "type": "object", + "properties": { + "rueckfrage": { + "$ref": "#/definitions/antragraumGrpcRueckfrage" + } + } + }, + "antragraumGrpcRueckfrage": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "vorgangId": { + "type": "string" + }, + "vorgangName": { + "type": "string" + }, + "vorgangNummer": { + "type": "string" + }, + "sentAt": { + "type": "string" + }, + "answeredAt": { + "type": "string" + }, + "status": { + "type": "string" + }, + "trustLevel": { + "type": "string" + }, + "accessible": { + "type": "boolean" + }, + "text": { + "type": "string" + }, + "attachmentFileId": { + "type": "array", + "items": { + "type": "string" + } + }, + "answers": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/antragraumGrpcRueckfrageAnswer" + } + } + } + }, + "antragraumGrpcRueckfrageAnswer": { + "type": "object", + "properties": { + "rueckfrageId": { + "type": "string" + }, + "answerText": { + "type": "string" + }, + "attachmentFileId": { + "type": "array", + "items": { + "type": "string" + } + }, + "sentAt": { + "type": "string" + } + } + }, + "antragraumGrpcRueckfrageHead": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "vorgangId": { + "type": "string" + }, + "vorgangName": { + "type": "string" + }, + "vorgangNummer": { + "type": "string" + }, + "sentAt": { + "type": "string" + }, + "answeredAt": { + "type": "string" + }, + "status": { + "type": "string" + }, + "trustLevel": { + "type": "string" + }, + "accessible": { + "type": "boolean" + } + } + }, + "antragraumGrpcSendRueckfrageAnswerRequest": { + "type": "object", + "properties": { + "samlToken": { + "type": "string" + }, + "answer": { + "$ref": "#/definitions/antragraumGrpcRueckfrageAnswer" + } + } + }, + "antragraumGrpcSendRueckfrageAnswerResponse": { + "type": "object", + "properties": { + "commandId": { + "type": "string" + } + } + }, + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + } + } +} diff --git a/gen/openapiv2/binaryfile.swagger.json b/gen/openapiv2/binaryfile.swagger.json new file mode 100644 index 0000000000000000000000000000000000000000..0aa18edb3d22d423dc025a6e4dbb0912cc86fb89 --- /dev/null +++ b/gen/openapiv2/binaryfile.swagger.json @@ -0,0 +1,373 @@ +{ + "swagger": "2.0", + "info": { + "title": "File Proxy API", + "version": "1.0", + "license": { + "name": "EUPL 1.2", + "url": "https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12" + } + }, + "tags": [ + { + "name": "BinaryFileService", + "description": "Service to proxy between Antragraum Backend and VorgangManager File Api in OZG-Cloud" + } + ], + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/api/filecontent/{fileId}": { + "get": { + "summary": "Summary: GetBinaryFileContent rpc", + "description": "Get the content of a file", + "operationId": "BinaryFileService_GetBinaryFileContent", + "responses": { + "200": { + "description": "Returns file content as binary stream.", + "schema": { + "type": "object", + "properties": { + "result": { + "$ref": "#/definitions/binaryFileGrpcGetBinaryFileDataResponse" + }, + "error": { + "$ref": "#/definitions/rpcStatus" + } + }, + "title": "Stream result of binaryFileGrpcGetBinaryFileDataResponse" + } + }, + "403": { + "description": "Returned when the user does not have permission to access the resource.", + "schema": {} + }, + "404": { + "description": "Returned when the resource does not exist.", + "schema": {} + }, + "503": { + "description": "Returned when the resource is temporarily unavailable.", + "schema": {} + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/rpcStatus" + } + } + }, + "parameters": [ + { + "name": "fileId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "context.client", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "context.user.id", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "context.user.name", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "context.user.roles", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "context.requestId", + "in": "query", + "required": false, + "type": "string" + } + ], + "tags": [ + "BinaryFileService" + ] + } + }, + "/api/filemetadata/{fileId}": { + "get": { + "summary": "Summary: FindBinaryFilesMetaData rpc", + "description": "Get the metadata of a file", + "operationId": "BinaryFileService_FindBinaryFilesMetaData", + "responses": { + "200": { + "description": "Returns file metadata as json.", + "schema": { + "$ref": "#/definitions/binaryFileGrpcFindFilesResponse" + } + }, + "403": { + "description": "Returned when the user does not have permission to access the resource.", + "schema": {} + }, + "404": { + "description": "Returned when the resource does not exist.", + "schema": {} + }, + "503": { + "description": "Returned when the resource is temporarily unavailable.", + "schema": {} + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/rpcStatus" + } + } + }, + "parameters": [ + { + "name": "fileId", + "in": "path", + "required": true, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "minItems": 1 + }, + { + "name": "context.client", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "context.user.id", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "context.user.name", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "context.user.roles", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "context.requestId", + "in": "query", + "required": false, + "type": "string" + } + ], + "tags": [ + "BinaryFileService" + ] + } + } + }, + "definitions": { + "binaryFileGrpcBinaryFile": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "size": { + "type": "string", + "format": "int64" + }, + "contentType": { + "type": "string" + } + } + }, + "binaryFileGrpcFindFilesResponse": { + "type": "object", + "properties": { + "file": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/fileGrpcOzgFile" + } + } + } + }, + "binaryFileGrpcGetBinaryFileDataResponse": { + "type": "object", + "properties": { + "fileContent": { + "type": "string", + "format": "byte" + } + } + }, + "binaryFileGrpcUploadBinaryFileMetaData": { + "type": "object", + "properties": { + "context": { + "$ref": "#/definitions/commandGrpcCallContext" + }, + "vorgangId": { + "type": "string" + }, + "field": { + "type": "string" + }, + "fileName": { + "type": "string" + }, + "contentType": { + "type": "string" + }, + "size": { + "type": "string", + "format": "int64" + } + } + }, + "binaryFileGrpcUploadBinaryFileResponse": { + "type": "object", + "properties": { + "fileId": { + "type": "string" + } + } + }, + "commandGrpcCallContext": { + "type": "object", + "properties": { + "client": { + "type": "string" + }, + "user": { + "$ref": "#/definitions/commandGrpcUser" + }, + "requestId": { + "type": "string" + } + } + }, + "commandGrpcUser": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "roles": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "fileGrpcOzgFile": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "size": { + "type": "string", + "format": "int64" + }, + "contentType": { + "type": "string" + } + } + }, + "grpcbinaryFileGrpcGetAttachmentsResponse": { + "type": "object", + "properties": { + "file": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/binaryFileGrpcBinaryFile" + } + } + } + }, + "grpcbinaryFileGrpcGetRepresentationsResponse": { + "type": "object", + "properties": { + "file": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/binaryFileGrpcBinaryFile" + } + } + } + }, + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + } + } +} diff --git a/gen/openapiv2/callcontext.swagger.json b/gen/openapiv2/callcontext.swagger.json new file mode 100644 index 0000000000000000000000000000000000000000..da4bf025523f6a246061ef3eaa7446f855fbc9b3 --- /dev/null +++ b/gen/openapiv2/callcontext.swagger.json @@ -0,0 +1,44 @@ +{ + "swagger": "2.0", + "info": { + "title": "callcontext.proto", + "version": "version not set" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + } + } +} diff --git a/gen/openapiv2/clientattribute.model.swagger.json b/gen/openapiv2/clientattribute.model.swagger.json new file mode 100644 index 0000000000000000000000000000000000000000..5c23621f99a110280bb7b2473778c2b14ec5008f --- /dev/null +++ b/gen/openapiv2/clientattribute.model.swagger.json @@ -0,0 +1,44 @@ +{ + "swagger": "2.0", + "info": { + "title": "clientattribute.model.proto", + "version": "version not set" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + } + } +} diff --git a/gen/openapiv2/command.model.swagger.json b/gen/openapiv2/command.model.swagger.json new file mode 100644 index 0000000000000000000000000000000000000000..82851af649a8da7a9322e7570effb6f790aa9a14 --- /dev/null +++ b/gen/openapiv2/command.model.swagger.json @@ -0,0 +1,44 @@ +{ + "swagger": "2.0", + "info": { + "title": "command.model.proto", + "version": "version not set" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + } + } +} diff --git a/gen/openapiv2/command.swagger.json b/gen/openapiv2/command.swagger.json new file mode 100644 index 0000000000000000000000000000000000000000..b460d5e33d6ea5a99c130829af21c5b80a6ca3ef --- /dev/null +++ b/gen/openapiv2/command.swagger.json @@ -0,0 +1,307 @@ +{ + "swagger": "2.0", + "info": { + "title": "COmmand Proxy API", + "version": "1.0", + "license": { + "name": "EUPL 1.2", + "url": "https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12" + } + }, + "tags": [ + { + "name": "CommandService", + "description": "Service to proxy between Antragraum Backend and VorgangManager Command Api in OZG-Cloud" + } + ], + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/api/command/{id}": { + "get": { + "summary": "Summary: GetCommand rpc", + "description": "Get the command by id", + "operationId": "CommandService_GetCommand", + "responses": { + "200": { + "description": "Returns command as json.", + "schema": { + "$ref": "#/definitions/commandGrpcCommand" + } + }, + "403": { + "description": "Returned when the user does not have permission to access the resource.", + "schema": {} + }, + "404": { + "description": "Returned when the resource does not exist.", + "schema": {} + }, + "503": { + "description": "Returned when the resource is temporarily unavailable.", + "schema": {} + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/rpcStatus" + } + } + }, + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "context.client", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "context.user.id", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "context.user.name", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "context.user.roles", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "context.requestId", + "in": "query", + "required": false, + "type": "string" + } + ], + "tags": [ + "CommandService" + ] + } + } + }, + "definitions": { + "commandGrpcCallContext": { + "type": "object", + "properties": { + "client": { + "type": "string" + }, + "user": { + "$ref": "#/definitions/commandGrpcUser" + }, + "requestId": { + "type": "string" + } + } + }, + "commandGrpcCommand": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "vorgangId": { + "type": "string" + }, + "createdAt": { + "type": "string" + }, + "finishedAt": { + "type": "string" + }, + "createdBy": { + "type": "string" + }, + "createdByName": { + "type": "string" + }, + "status": { + "type": "string" + }, + "errorMessage": { + "type": "string" + }, + "relationId": { + "type": "string" + }, + "body": { + "$ref": "#/definitions/commandGrpcCommandBody" + }, + "bodyObj": { + "$ref": "#/definitions/commonGrpcObject" + }, + "redirectRequest": { + "$ref": "#/definitions/commandGrpcRedirectRequest" + }, + "orderString": { + "type": "string" + }, + "createdResource": { + "type": "string" + } + } + }, + "commandGrpcCommandBody": { + "type": "object", + "properties": { + "field": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/commandGrpcCommandBodyField" + } + } + } + }, + "commandGrpcCommandBodyField": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "commandGrpcRedirectRequest": { + "type": "object", + "properties": { + "context": { + "$ref": "#/definitions/commandGrpcCallContext" + }, + "email": { + "type": "string" + }, + "password": { + "type": "string" + } + } + }, + "commandGrpcUser": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "roles": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "commonGrpcObject": { + "type": "object", + "properties": { + "property": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/commonGrpcProperty" + } + }, + "subObject": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/commonGrpcSubObject" + } + } + } + }, + "commonGrpcProperty": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "commonGrpcSubObject": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "property": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/commonGrpcProperty" + } + }, + "subObject": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/commonGrpcSubObject" + } + } + } + }, + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + } + } +} diff --git a/gen/openapiv2/common.model.swagger.json b/gen/openapiv2/common.model.swagger.json new file mode 100644 index 0000000000000000000000000000000000000000..e10c2ad4146a54a21a780565a6b2b84470044db5 --- /dev/null +++ b/gen/openapiv2/common.model.swagger.json @@ -0,0 +1,44 @@ +{ + "swagger": "2.0", + "info": { + "title": "common.model.proto", + "version": "version not set" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + } + } +} diff --git a/gen/openapiv2/filemodel.swagger.json b/gen/openapiv2/filemodel.swagger.json new file mode 100644 index 0000000000000000000000000000000000000000..719022809aec211a008a9f0462c41e164af6a4bf --- /dev/null +++ b/gen/openapiv2/filemodel.swagger.json @@ -0,0 +1,44 @@ +{ + "swagger": "2.0", + "info": { + "title": "filemodel.proto", + "version": "version not set" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + } + } +} diff --git a/gen/openapiv2/postfach.model.swagger.json b/gen/openapiv2/postfach.model.swagger.json new file mode 100644 index 0000000000000000000000000000000000000000..e754167b9780c827346cebbf0147b47916da8868 --- /dev/null +++ b/gen/openapiv2/postfach.model.swagger.json @@ -0,0 +1,44 @@ +{ + "swagger": "2.0", + "info": { + "title": "postfach.model.proto", + "version": "version not set" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + } + } +} diff --git a/gen/openapiv2/vorgang.model.swagger.json b/gen/openapiv2/vorgang.model.swagger.json new file mode 100644 index 0000000000000000000000000000000000000000..12d02dc746ff2112d810a3a0b5f16a939e42670f --- /dev/null +++ b/gen/openapiv2/vorgang.model.swagger.json @@ -0,0 +1,44 @@ +{ + "swagger": "2.0", + "info": { + "title": "vorgang.model.proto", + "version": "version not set" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + } + } +} diff --git a/go.mod b/go.mod new file mode 100644 index 0000000000000000000000000000000000000000..f22b380d3e970477cc81dfafcba1641954049bc8 --- /dev/null +++ b/go.mod @@ -0,0 +1,24 @@ +module antragsraum-proxy + +go 1.23.0 + +require ( + github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 + github.com/kelseyhightower/envconfig v1.4.0 + github.com/stretchr/testify v1.9.0 + google.golang.org/grpc v1.64.0 + gopkg.in/yaml.v3 v3.0.1 +) + +require ( + github.com/davecgh/go-spew v1.1.1 // indirect + github.com/kr/text v0.2.0 // indirect + github.com/pmezard/go-difflib v1.0.0 // indirect + github.com/rogpeppe/go-internal v1.12.0 // indirect + golang.org/x/net v0.26.0 // indirect + golang.org/x/sys v0.21.0 // indirect + golang.org/x/text v0.16.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20240513163218-0867130af1f8 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240513163218-0867130af1f8 // indirect + google.golang.org/protobuf v1.34.2 // indirect +) diff --git a/go.sum b/go.sum new file mode 100644 index 0000000000000000000000000000000000000000..173f968cb7f566a098f97265b6ee4ae8866407e1 --- /dev/null +++ b/go.sum @@ -0,0 +1,38 @@ +github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 h1:bkypFPDjIYGfCYD5mRBvpqxfYX1YCS1PXdKYWi8FsN0= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0/go.mod h1:P+Lt/0by1T8bfcF3z737NnSbmxQAppXMRziHUxPOC8k= +github.com/kelseyhightower/envconfig v1.4.0 h1:Im6hONhd3pLkfDFsbRgu68RDNkGF1r3dvMUtDTo2cv8= +github.com/kelseyhightower/envconfig v1.4.0/go.mod h1:cccZRl6mQpaq41TPp5QxidR+Sa3axMbJDNb//FQX6Gg= +github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= +github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= +github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +golang.org/x/net v0.26.0 h1:soB7SVo0PWrY4vPW/+ay0jKDNScG2X9wFeYlXIvJsOQ= +golang.org/x/net v0.26.0/go.mod h1:5YKkiSynbBIh3p6iOc/vibscux0x38BZDkn8sCUPxHE= +golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws= +golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= +golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= +google.golang.org/genproto/googleapis/api v0.0.0-20240513163218-0867130af1f8 h1:W5Xj/70xIA4x60O/IFyXivR5MGqblAb8R3w26pnD6No= +google.golang.org/genproto/googleapis/api v0.0.0-20240513163218-0867130af1f8/go.mod h1:vPrPUTsDCYxXWjP7clS81mZ6/803D8K4iM9Ma27VKas= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240513163218-0867130af1f8 h1:mxSlqyb8ZAHsYDCfiXN1EDdNTdvjUJSLY+OnAUtYNYA= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240513163218-0867130af1f8/go.mod h1:I7Y+G38R2bu5j1aLzfFmQfTcU/WnFuqDwLZAbvKTKpM= +google.golang.org/grpc v1.64.0 h1:KH3VH9y/MgNQg1dE7b3XfVK0GsPSIzJwdF617gUSbvY= +google.golang.org/grpc v1.64.0/go.mod h1:oxjF8E3FBnjp+/gVFYdWacaLDx9na1aqy9oovLpxQYg= +google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= +google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/internal/config/config.go b/internal/config/config.go new file mode 100644 index 0000000000000000000000000000000000000000..b246c3d63d3ad026e142c890f9532722f122358e --- /dev/null +++ b/internal/config/config.go @@ -0,0 +1,90 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package config + +import ( + "github.com/kelseyhightower/envconfig" + "gopkg.in/yaml.v3" + "log" + "os" + "regexp" + "testing" +) + +const ( + defaultFilePath = "config/config.yml" + testFilePath = "testdata/test_config.yml" + grpcUrlRegex = `^[A-Za-z\d-]+(\.[A-Za-z\d-]+){0,512}:\d{1,5}$` +) + +type Config struct { + Server struct { + Port int `yaml:"port" envconfig:"SERVER_PORT"` + } `yaml:"server"` + Grpc struct { + Mock bool `yaml:"mock" envconfig:"GRPC_MOCK"` + Url string `yaml:"url" envconfig:"GRPC_URL"` + } `yaml:"grpc"` + Logging struct { + Level string `yaml:"level" envconfig:"LOGGING_LEVEL"` + } `yaml:"logging"` +} + +func LoadConfig(configFilePath ...string) Config { + var config Config + + fp := defaultFilePath + if len(configFilePath) > 0 { + fp = configFilePath[0] + } else if testing.Testing() { + fp = testFilePath + } + + file, err := os.ReadFile(fp) + if err != nil { + log.Fatalf("FATAL: error reading YAML file: %v", err) + } + + err = yaml.Unmarshal(file, &config) + if err != nil { + log.Fatalf("FATAL: error unmarshalling YAML file: %v", err) + } + + err = envconfig.Process("", &config) + if err != nil { + log.Fatalf("FATAL: error reading env: %v", err) + } + + if len(config.Grpc.Url) > 0 && !ValidateGrpcUrl(config.Grpc.Url) { + log.Fatalf("FATAL: gRPC URL is not in host:port format") + } + + return config +} + +func ValidateGrpcUrl(grpcUrl string) bool { + return regexp.MustCompile(grpcUrlRegex).MatchString(grpcUrl) +} diff --git a/internal/config/config_test.go b/internal/config/config_test.go new file mode 100644 index 0000000000000000000000000000000000000000..38cd14245895c0ba67c51af3f41cd7d3faf899f9 --- /dev/null +++ b/internal/config/config_test.go @@ -0,0 +1,112 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package config + +import ( + "os" + "testing" + + "github.com/stretchr/testify/assert" +) + +func TestLoadConfig(t *testing.T) { + t.Run("should load config from file", func(t *testing.T) { + config := LoadConfig() + + expectedConfig := Config{} + expectedConfig.Server.Port = 8080 + expectedConfig.Grpc.Url = "localhost:50051" + expectedConfig.Grpc.Mock = false + expectedConfig.Logging.Level = "DEBUG" + + assert.Equal(t, expectedConfig, config) + }) + + t.Run("should load config from env", func(t *testing.T) { + envVars := map[string]string{ + "SERVER_PORT": "9090", + "GRPC_URL": "localhost:99999", + "LOGGING_LEVEL": "ERROR", + } + + for key, value := range envVars { + assert.NoError(t, os.Setenv(key, value), "Setenv "+key+" should not return an error") + } + + config := LoadConfig("testdata/empty_test_config.yml") + + for key := range envVars { + assert.NoError(t, os.Unsetenv(key), "Unsetenv "+key+" should not return an error") + } + + expectedConfig := Config{} + expectedConfig.Server.Port = 9090 + expectedConfig.Grpc.Url = "localhost:99999" + expectedConfig.Grpc.Mock = false + expectedConfig.Logging.Level = "ERROR" + + assert.Equal(t, expectedConfig, config) + }) + + t.Run("should overwrite config with env", func(t *testing.T) { + assert.NoError(t, os.Setenv("SERVER_PORT", "9090"), "Setenv SERVER_PORT should not return an error") + + config := LoadConfig() + + assert.NoError(t, os.Unsetenv("SERVER_PORT"), "Unsetenv SERVER_PORT should not return an error") + + expectedConfig := Config{} + expectedConfig.Server.Port = 9090 + expectedConfig.Grpc.Url = "localhost:50051" + expectedConfig.Grpc.Mock = false + expectedConfig.Logging.Level = "DEBUG" + + assert.Equal(t, expectedConfig, config) + }) +} + +func TestValidateGrpcUrl(t *testing.T) { + testData := []struct { + grpcUrl string + expectedResult bool + }{ + {"localhost:56789", true}, + {"test.example.com:20", true}, + {"invalidUrl", false}, + {"%test%:2345", false}, + {"localhost:234567", false}, + {"example.com:", false}, + {":6789", false}, + {"example..com:8080", false}, + {"example.com:abc", false}, + } + + for _, data := range testData { + result := ValidateGrpcUrl(data.grpcUrl) + + assert.Equal(t, data.expectedResult, result) + } +} diff --git a/internal/config/testdata/empty_test_config.yml b/internal/config/testdata/empty_test_config.yml new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/internal/config/testdata/test_config.yml b/internal/config/testdata/test_config.yml new file mode 100644 index 0000000000000000000000000000000000000000..ea8925db9cb5af5c351a1af92d6fb7f878de4359 --- /dev/null +++ b/internal/config/testdata/test_config.yml @@ -0,0 +1,6 @@ +server: + port: 8080 +grpc: + url: "localhost:50051" +logging: + level: "DEBUG" \ No newline at end of file diff --git a/internal/logging/logger.go b/internal/logging/logger.go new file mode 100644 index 0000000000000000000000000000000000000000..f37932b73352d551789403462e99675969dd1365 --- /dev/null +++ b/internal/logging/logger.go @@ -0,0 +1,113 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package logging + +import ( + "antragsraum-proxy/internal/config" + "fmt" + "log" + "os" + "sync" +) + +const ( + logLevelNumError = iota + logLevelNumWarning + logLevelNumInfo + logLevelNumDebug + LogLevelError = "ERROR" + LogLevelWarning = "WARN" + LogLevelInfo = "INFO" + LogLevelDebug = "DEBUG" +) + +type Logger struct { + BaseLogger *log.Logger + level int +} + +var ( + logger *Logger + once sync.Once +) + +func GetLogger() *Logger { + initializeLogger() + + return logger +} + +func initializeLogger() { + once.Do(func() { + logger = &Logger{ + BaseLogger: log.New(os.Stdout, "", log.LstdFlags), + level: getLoggingLevel(), + } + }) +} + +func getLoggingLevel() int { + logLevelMap := map[string]int{ + LogLevelError: logLevelNumError, + LogLevelWarning: logLevelNumWarning, + LogLevelInfo: logLevelNumInfo, + LogLevelDebug: logLevelNumDebug, + } + + conf := config.LoadConfig() + logLevel, exists := logLevelMap[conf.Logging.Level] + if !exists { + logLevel = logLevelMap[LogLevelInfo] + } + + return logLevel +} + +func (l *Logger) log(level int, prefix, format string, v ...any) { + if l.level >= level { + l.BaseLogger.Println(fmt.Sprintf("%v: %v", prefix, fmt.Sprintf(format, v...))) + } +} + +func (l *Logger) Fatal(format string, v ...any) { + l.BaseLogger.Fatalln(fmt.Sprintf("FATAL: "+format, v...)) +} + +func (l *Logger) Error(format string, v ...any) { + l.log(logLevelNumError, "ERROR", format, v...) +} + +func (l *Logger) Warning(format string, v ...any) { + l.log(logLevelNumWarning, "WARNING", format, v...) +} + +func (l *Logger) Info(format string, v ...any) { + l.log(logLevelNumInfo, "INFO", format, v...) +} + +func (l *Logger) Debug(format string, v ...any) { + l.log(logLevelNumDebug, "DEBUG", format, v...) +} diff --git a/internal/logging/logger_test.go b/internal/logging/logger_test.go new file mode 100644 index 0000000000000000000000000000000000000000..11eff2f85f749fc9bcd884ee9d57c7a9b13fe12d --- /dev/null +++ b/internal/logging/logger_test.go @@ -0,0 +1,82 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package logging + +import ( + "bytes" + "github.com/stretchr/testify/assert" + "log" + "testing" +) + +func setUpLogger(t *testing.T, level string, msg string) *bytes.Buffer { + logger := GetLogger() + + var buf bytes.Buffer + logger.BaseLogger.SetOutput(&buf) + + originalFlags := log.Flags() + t.Cleanup(func() { + log.SetOutput(nil) + log.SetFlags(originalFlags) + }) + + if level == LogLevelError { + logger.Error(msg) + } else if level == LogLevelWarning { + logger.Warning(msg) + } else if level == LogLevelInfo { + logger.Info(msg) + } else { + logger.Debug(msg) + } + + return &buf +} + +func TestError(t *testing.T) { + buf := setUpLogger(t, LogLevelError, "test error") + logOutput := buf.String() + assert.Contains(t, logOutput, "ERROR: test error") +} + +func TestWarning(t *testing.T) { + buf := setUpLogger(t, LogLevelWarning, "test warning") + logOutput := buf.String() + assert.Contains(t, logOutput, "WARNING: test warning") +} + +func TestInfo(t *testing.T) { + buf := setUpLogger(t, LogLevelInfo, "test info") + logOutput := buf.String() + assert.Contains(t, logOutput, "INFO: test info") +} + +func TestDebug(t *testing.T) { + buf := setUpLogger(t, LogLevelDebug, "test debug") + logOutput := buf.String() + assert.Empty(t, logOutput) +} diff --git a/internal/logging/testdata/test_config.yml b/internal/logging/testdata/test_config.yml new file mode 100644 index 0000000000000000000000000000000000000000..6021893b2e1982f4f8d4215707fa6300e2cd6e8e --- /dev/null +++ b/internal/logging/testdata/test_config.yml @@ -0,0 +1,6 @@ +server: + port: 8080 +grpc: + url: "localhost:50051" +logging: + level: "INFO" \ No newline at end of file diff --git a/internal/mock/globals.go b/internal/mock/globals.go new file mode 100644 index 0000000000000000000000000000000000000000..31fa60051edb5bca313299a9718b29e08372001c --- /dev/null +++ b/internal/mock/globals.go @@ -0,0 +1,5 @@ +package mock + +import "antragsraum-proxy/internal/logging" + +var logger = logging.GetLogger() diff --git a/internal/mock/grpc_server.go b/internal/mock/grpc_server.go new file mode 100644 index 0000000000000000000000000000000000000000..a07c47c85d78d78241c099c8bfe203fd34b9645c --- /dev/null +++ b/internal/mock/grpc_server.go @@ -0,0 +1,75 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package mock + +import ( + "context" + pb "antragsraum-proxy/gen/go" + "fmt" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/status" + "net" +) + +const GrpcMockPort = 50051 + +type server struct { + pb.UnimplementedFachstelleRegistrationServiceServer +} + +func (s *server) Register(ctx context.Context, in *pb.GrpcFachstelleRegistrationRequest) (*pb.GrpcFachstelleRegistrationResponse, error) { + if in.Fachstelle == nil { + return nil, status.Error(codes.InvalidArgument, "Fachstelle is missing") + } + + if in.Fachstelle.MukId == "conflictMukId" { + return nil, status.Error(codes.AlreadyExists, "Conflict mukId") + } else if in.Fachstelle.MukId == "unavailableMukId" { + return nil, status.Error(codes.Unavailable, "Unavailable mukId") + } else if in.Fachstelle.MukId == "erroneousMukId" { + return nil, status.Error(codes.Internal, "Erroneous mukId") + } + + return &pb.GrpcFachstelleRegistrationResponse{}, nil +} + +func StartGrpcServer() *grpc.Server { + s := grpc.NewServer() + pb.RegisterFachstelleRegistrationServiceServer(s, &server{}) + + lis, err := net.Listen("tcp", fmt.Sprintf(":%d", GrpcMockPort)) + if err != nil { + logger.Fatal("gRPC server failed to listen: %v", err) + } + + logger.Info("gRPC server listening on port %v", GrpcMockPort) + if err := s.Serve(lis); err != nil { + logger.Fatal("gRPC server failed to serve: %v", err) + } + + return s +} diff --git a/internal/mock/grpc_server_test.go b/internal/mock/grpc_server_test.go new file mode 100644 index 0000000000000000000000000000000000000000..b2e35b57ace8a4c8b2f4a2b12405f522ec7b27ef --- /dev/null +++ b/internal/mock/grpc_server_test.go @@ -0,0 +1,72 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package mock + +import ( + "context" + pb "antragsraum-proxy/gen/go" + "fmt" + "github.com/stretchr/testify/assert" + "google.golang.org/grpc" + "google.golang.org/grpc/credentials/insecure" + "testing" +) + +func TestStartGrpcServer(t *testing.T) { + setUpGrpcEnv := func() (pb.FachstelleRegistrationServiceClient, func()) { + SetUpGrpcServer() + + conn, err := grpc.NewClient(fmt.Sprintf("localhost:%d", GrpcMockPort), grpc.WithTransportCredentials(insecure.NewCredentials())) + assert.NoError(t, err) + + cleanup := func() { + conn.Close() + } + client := pb.NewFachstelleRegistrationServiceClient(conn) + + return client, cleanup + } + + t.Run("should have no error", func(t *testing.T) { + client, cleanUp := setUpGrpcEnv() + defer cleanUp() + + resp, err := client.Register(context.Background(), &pb.GrpcFachstelleRegistrationRequest{Fachstelle: &pb.GrpcFachstelle{MukId: "testMukId"}}) + + assert.NoError(t, err) + assert.NotNil(t, resp) + }) + + t.Run("should have error", func(t *testing.T) { + client, cleanUp := setUpGrpcEnv() + defer cleanUp() + + resp, err := client.Register(context.Background(), &pb.GrpcFachstelleRegistrationRequest{}) + + assert.Error(t, err) + assert.Nil(t, resp) + }) +} diff --git a/internal/mock/test_setup.go b/internal/mock/test_setup.go new file mode 100644 index 0000000000000000000000000000000000000000..24fe3fc1cd864e14338fb9ca00f60aa24dc73492 --- /dev/null +++ b/internal/mock/test_setup.go @@ -0,0 +1,40 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package mock + +import ( + "sync" + "time" +) + +var setUpOnce sync.Once + +func SetUpGrpcServer() { + setUpOnce.Do(func() { + go StartGrpcServer() + time.Sleep(time.Second) // Wait for the server to start + }) +} diff --git a/internal/mock/testdata/test_config.yml b/internal/mock/testdata/test_config.yml new file mode 100644 index 0000000000000000000000000000000000000000..ea8925db9cb5af5c351a1af92d6fb7f878de4359 --- /dev/null +++ b/internal/mock/testdata/test_config.yml @@ -0,0 +1,6 @@ +server: + port: 8080 +grpc: + url: "localhost:50051" +logging: + level: "DEBUG" \ No newline at end of file diff --git a/internal/server/globals.go b/internal/server/globals.go new file mode 100644 index 0000000000000000000000000000000000000000..716148066b508fd9a36f664498985295aeccf356 --- /dev/null +++ b/internal/server/globals.go @@ -0,0 +1,5 @@ +package server + +import "antragsraum-proxy/internal/logging" + +var logger = logging.GetLogger() diff --git a/internal/server/handler.go b/internal/server/handler.go new file mode 100644 index 0000000000000000000000000000000000000000..3d22eb8fc72bcd32d2e28f676fb07f87aeafdd13 --- /dev/null +++ b/internal/server/handler.go @@ -0,0 +1,78 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package server + +import ( + "context" + "fmt" + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/status" + "net/http" +) + +func RegisterHomeEndpoint(mux *runtime.ServeMux) { + err := mux.HandlePath("GET", "/", func(w http.ResponseWriter, r *http.Request, pathParams map[string]string) { + defer func() { + if err := recover(); err != nil { + logger.Error("failed to recover: %v", err) + http.Error(w, fmt.Sprintf("failed to recover: %v", err), http.StatusInternalServerError) + } + }() + }) + + if err != nil { + logger.Fatal("failed to register home endpoint: %v", err) + } +} + +func ErrorHandler(ctx context.Context, mux *runtime.ServeMux, marshaler runtime.Marshaler, w http.ResponseWriter, r *http.Request, err error) { + st, ok := status.FromError(err) + if !ok { + runtime.DefaultHTTPErrorHandler(ctx, mux, marshaler, w, r, err) + return + } + + statusCodeMap := map[codes.Code]int{ + codes.InvalidArgument: http.StatusBadRequest, + codes.AlreadyExists: http.StatusConflict, + codes.Unavailable: http.StatusServiceUnavailable, + } + + httpStatusCode := http.StatusInternalServerError + + if code, exists := statusCodeMap[st.Code()]; exists { + httpStatusCode = code + } + + w.Header().Set("Content-Type", marshaler.ContentType(r)) + w.WriteHeader(httpStatusCode) + + _, writeErr := w.Write([]byte(st.Message())) + if writeErr != nil { + logger.Fatal("failed to handle grpc error: %v", writeErr) + } +} diff --git a/internal/server/handler_test.go b/internal/server/handler_test.go new file mode 100644 index 0000000000000000000000000000000000000000..aec2c7850f5bf4b3d62492afc3f2f395b73cf437 --- /dev/null +++ b/internal/server/handler_test.go @@ -0,0 +1,80 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package server + +import ( + "bytes" + "antragsraum-proxy/internal/mock" + "fmt" + "github.com/stretchr/testify/assert" + "net/http" + "testing" +) + +func TestRegisterHomeEndpoint(t *testing.T) { + SetUpHttpGateway() + + resp, err := http.Get("http://localhost:8080/") + + assert.NoError(t, err) + assert.Equal(t, http.StatusOK, resp.StatusCode) +} + +func TestErrorHandler(t *testing.T) { + assertErroneousRequest := func(jsonData []byte, expectedStatusCode int) { + mock.SetUpGrpcServer() + SetUpHttpGateway() + + resp, err := http.Post(fmt.Sprintf("http://localhost:8080%v", RegisterFachstelleUrlPath), "application/json", bytes.NewBuffer(jsonData)) + + assert.NoError(t, err) + assert.Equal(t, expectedStatusCode, resp.StatusCode) + } + + t.Run("should have bad request error", func(t *testing.T) { + jsonData := []byte(`{}`) + + assertErroneousRequest(jsonData, http.StatusBadRequest) + }) + + t.Run("should have conflict error", func(t *testing.T) { + jsonData := []byte(`{"fachstelle": {"mukId": "conflictMukId"}}`) + + assertErroneousRequest(jsonData, http.StatusConflict) + }) + + t.Run("should have unavailable error", func(t *testing.T) { + jsonData := []byte(`{"fachstelle": {"mukId": "unavailableMukId"}}`) + + assertErroneousRequest(jsonData, http.StatusServiceUnavailable) + }) + + t.Run("should have internal server error", func(t *testing.T) { + jsonData := []byte(`{"fachstelle": {"mukId": "erroneousMukId"}}`) + + assertErroneousRequest(jsonData, http.StatusInternalServerError) + }) +} diff --git a/internal/server/http_gateway.go b/internal/server/http_gateway.go new file mode 100644 index 0000000000000000000000000000000000000000..684217d6f4ed61b0c2bf447386ef30c1e06f7658 --- /dev/null +++ b/internal/server/http_gateway.go @@ -0,0 +1,72 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package server + +import ( + "context" + "antragsraum-proxy/internal/config" + "antragsraum-proxy/internal/mock" + "fmt" + "google.golang.org/grpc/credentials/insecure" + "net/http" + + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" + "google.golang.org/grpc" + + pb "antragsraum-proxy/gen/go" +) + +func StartHttpGateway(conf config.Config) *http.Server { + ctx := context.Background() + ctx, cancel := context.WithCancel(ctx) + defer cancel() + + grpcEndpoint := conf.Grpc.Url + if conf.Grpc.Mock { + grpcEndpoint = fmt.Sprintf("localhost:%d", mock.GrpcMockPort) + } + + mux := runtime.NewServeMux(runtime.WithErrorHandler(ErrorHandler)) + opts := []grpc.DialOption{grpc.WithTransportCredentials(insecure.NewCredentials())} + err := pb.RegisterFachstelleRegistrationServiceHandlerFromEndpoint(ctx, mux, grpcEndpoint, opts) + if err != nil { + logger.Fatal("failed to start HTTP gateway: %v", err) + } + + RegisterHomeEndpoint(mux) + + httpServer := &http.Server{ + Addr: fmt.Sprintf(":%d", conf.Server.Port), + Handler: RequestLoggingMiddleware(mux), + } + + logger.Info("HTTP gateway listening on port %d", conf.Server.Port) + if err := httpServer.ListenAndServe(); err != nil { + logger.Fatal("HTTP gateway failed to serve: %v", err) + } + + return httpServer +} diff --git a/internal/server/http_gateway_test.go b/internal/server/http_gateway_test.go new file mode 100644 index 0000000000000000000000000000000000000000..8ed43e5bb99955c89ae081b354774c5a96e52cef --- /dev/null +++ b/internal/server/http_gateway_test.go @@ -0,0 +1,46 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package server + +import ( + "bytes" + "antragsraum-proxy/internal/mock" + "fmt" + "github.com/stretchr/testify/assert" + "net/http" + "testing" +) + +func TestStartHttpGateway(t *testing.T) { + mock.SetUpGrpcServer() + SetUpHttpGateway() + + jsonData := []byte(`{"fachstelle": {"mukId": "testMukId"}}`) + resp, err := http.Post(fmt.Sprintf("http://localhost:8080%v", RegisterFachstelleUrlPath), "application/json", bytes.NewBuffer(jsonData)) + + assert.NoError(t, err) + assert.Equal(t, http.StatusOK, resp.StatusCode) +} diff --git a/internal/server/middleware.go b/internal/server/middleware.go new file mode 100644 index 0000000000000000000000000000000000000000..418e545718a9a8f247192e917dd07611dd0685b3 --- /dev/null +++ b/internal/server/middleware.go @@ -0,0 +1,73 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package server + +import ( + "bytes" + "fmt" + "io" + "net/http" +) + +const RegisterFachstelleUrlPath = "/api/antragsraum" + +type logResponseWriter struct { + http.ResponseWriter + statusCode int +} + +func (rsp *logResponseWriter) WriteHeader(statusCode int) { + rsp.statusCode = statusCode + rsp.ResponseWriter.WriteHeader(statusCode) +} + +func RequestLoggingMiddleware(h http.Handler) http.Handler { + return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + if r.URL.Path != RegisterFachstelleUrlPath { + h.ServeHTTP(w, r) + return + } + + body, err := io.ReadAll(r.Body) + if err != nil { + logger.Error("failed to read request body: %v", err) + http.Error(w, fmt.Sprintf("failed to read request body: %v", err), http.StatusBadRequest) + return + } + r.Body = io.NopCloser(bytes.NewReader(body)) + + logger.Debug("received request with body: %v", string(body)) + + lw := &logResponseWriter{w, http.StatusOK} + h.ServeHTTP(lw, r) + + if lw.statusCode == http.StatusOK { + logger.Debug("successfully handled request with body: %v", string(body)) + } else { + logger.Error("failed handling request with body: %v, status code: %d", string(body), lw.statusCode) + } + }) +} diff --git a/internal/server/middleware_test.go b/internal/server/middleware_test.go new file mode 100644 index 0000000000000000000000000000000000000000..2924854bca7a23768967846fadf525fa4886f647 --- /dev/null +++ b/internal/server/middleware_test.go @@ -0,0 +1,57 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package server + +import ( + "bytes" + "antragsraum-proxy/internal/mock" + "fmt" + "github.com/stretchr/testify/assert" + "log" + "net/http" + "testing" +) + +func TestRequestLoggingMiddleware(t *testing.T) { + mock.SetUpGrpcServer() + SetUpHttpGateway() + + var buf bytes.Buffer + logger.BaseLogger.SetOutput(&buf) + + originalFlags := log.Flags() + defer func() { + log.SetOutput(nil) + log.SetFlags(originalFlags) + }() + + jsonData := []byte(`{"fachstelle": {"mukId": "testMukId"}}`) + http.Post(fmt.Sprintf("http://localhost:8080%v", RegisterFachstelleUrlPath), "application/json", bytes.NewBuffer(jsonData)) + + logOutput := buf.String() + assert.Contains(t, logOutput, "received request with body: {\"fachstelle\": {\"mukId\": \"testMukId\"}}") + assert.Contains(t, logOutput, "successfully handled request with body: {\"fachstelle\": {\"mukId\": \"testMukId\"}}") +} diff --git a/internal/server/test_setup.go b/internal/server/test_setup.go new file mode 100644 index 0000000000000000000000000000000000000000..4933a714311a5c4877c3182d0533c52d9fddf62d --- /dev/null +++ b/internal/server/test_setup.go @@ -0,0 +1,43 @@ +/* + * Copyright (C) 2023-2024 + * Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package server + +import ( + "antragsraum-proxy/internal/config" + "sync" + "time" +) + +var setUpOnce sync.Once + +func SetUpHttpGateway() { + setUpOnce.Do(func() { + conf := config.LoadConfig() + + go StartHttpGateway(conf) + time.Sleep(time.Second) // Wait for the server to start + }) +} diff --git a/internal/server/testdata/test_config.yml b/internal/server/testdata/test_config.yml new file mode 100644 index 0000000000000000000000000000000000000000..6235966c8828f67d39820aeb96b70781ca9300f7 --- /dev/null +++ b/internal/server/testdata/test_config.yml @@ -0,0 +1,6 @@ +server: + port: 8080 +grpc: + mock: true +logging: + level: "DEBUG" \ No newline at end of file diff --git a/run_helm_test.sh b/run_helm_test.sh new file mode 100755 index 0000000000000000000000000000000000000000..2bae426e6327e0d169891a6cd4eec42cd5377d87 --- /dev/null +++ b/run_helm_test.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +set -e +set -x + +helm template ./src/main/helm/ -f src/test/helm-linter-values.yaml +helm lint -f src/test/helm-linter-values.yaml ./src/main/helm/ +cd src/main/helm && helm unittest -f '../../test/helm/**/*test.yaml' . \ No newline at end of file diff --git a/src/main/helm/.helmignore b/src/main/helm/.helmignore new file mode 100644 index 0000000000000000000000000000000000000000..3d0dbe446770be5127eb719b695414c427b09715 --- /dev/null +++ b/src/main/helm/.helmignore @@ -0,0 +1 @@ +tests/ \ No newline at end of file diff --git a/src/main/helm/Chart.yaml b/src/main/helm/Chart.yaml new file mode 100644 index 0000000000000000000000000000000000000000..53a2363abd9292eafc6810509274669a4f02805c --- /dev/null +++ b/src/main/helm/Chart.yaml @@ -0,0 +1,30 @@ +# +# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + +apiVersion: v1 +appVersion: "v1.0.0-beta.1" +description: A Helm chart for Anragsraum-Proxy +name: antragsraum-proxy +version: 0.0.0-MANAGED-BY-JENKINS +icon: https://simpleicons.org/icons/helm.svg diff --git a/src/main/helm/templates/_helpers.tpl b/src/main/helm/templates/_helpers.tpl new file mode 100644 index 0000000000000000000000000000000000000000..5ddef57b817b10ba5cd4fdbba26a6f2509740601 --- /dev/null +++ b/src/main/helm/templates/_helpers.tpl @@ -0,0 +1,42 @@ + +{{/* Default Labels: Helm recommended best-practice labels https://helm.sh/docs/chart_best_practices/labels/ */}} +{{- define "app.defaultLabels" }} +app.kubernetes.io/instance: antragsraum-proxy +app.kubernetes.io/managed-by: {{ .Release.Service }} +app.kubernetes.io/name: {{ .Release.Name }} +app.kubernetes.io/namespace: {{ .Release.Namespace }} +app.kubernetes.io/part-of: ozgcloud +app.kubernetes.io/version: {{ .Chart.Version }} +helm.sh/chart: {{ printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" }} +app.kubernetes.io/component: antragsraum-proxy +component: antragsraum-proxy +{{- end -}} + +{{- define "app.matchLabels" }} +app.kubernetes.io/name: {{ .Release.Name }} +app.kubernetes.io/namespace: {{ .Release.Namespace }} +component: antragsraum-proxy +{{- end -}} + + +{{- define "app.serviceAccountName" -}} +{{ printf "%s" ( (.Values.serviceAccount).name | default "antragsraum-proxy-service-account" ) }} +{{- end -}} + +{{- define "app.getCustomList" -}} +{{- with (.Values.env).customList -}} +{{- if kindIs "map" . -}} +{{ include "app.dictToList" . }} +{{- else if kindIs "slice" . -}} +{{ . | toYaml }} +{{- end -}} +{{- end -}} +{{- end -}} + +{{- define "app.dictToList" -}} +{{- $customList := list -}} +{{- range $key, $value := . -}} +{{- $customList = append $customList (dict "name" $key "value" $value) }} +{{- end -}} +{{- $customList | toYaml -}} +{{- end -}} \ No newline at end of file diff --git a/src/main/helm/templates/deployment.yaml b/src/main/helm/templates/deployment.yaml new file mode 100644 index 0000000000000000000000000000000000000000..ae27d298452488566cb916119818eeea7553b2f3 --- /dev/null +++ b/src/main/helm/templates/deployment.yaml @@ -0,0 +1,128 @@ +# +# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + +apiVersion: apps/v1 +kind: Deployment +metadata: + name: { { .Release.Name } } + namespace: { { .Release.Namespace } } + labels: + { { - include "app.defaultLabels" . | indent 4 } } +spec: + progressDeadlineSeconds: 600 + replicas: { { .Values.replicaCount } } + revisionHistoryLimit: 10 + selector: + matchLabels: + { { - include "app.matchLabels" . | indent 6 } } + strategy: + rollingUpdate: + maxSurge: 1 + maxUnavailable: 0 + type: RollingUpdate + template: + metadata: + labels: + { { - include "app.defaultLabels" . | indent 8 } } + spec: + { { - if (.Values.serviceAccount).create } } + serviceAccountName: { { include "app.serviceAccountName" . } } + { { - end } } + topologySpreadConstraints: + - maxSkew: 1 + topologyKey: kubernetes.io/hostname + whenUnsatisfiable: ScheduleAnyway + labelSelector: + matchLabels: + app.kubernetes.io/name: { { .Release.Name } } + containers: + - env: + - name: SERVER_PORT + value: "8082" + - name: GRPC_MOCK + value: "{{ (.Values.grpc).mock | default false }}" + - name: GRPC_URL + value: "{{ required ".Values.grpc.url must be set" (.Values.grpc).url }}" + { { - with include "app.getCustomList" . } } + { { . | indent 10 } } + { { - end } } + +image: "{{ .Values.image.repo }}/{{ .Values.image.name }}:{{ coalesce (.Values.image).tag "latest" }}" +imagePullPolicy: Always +name: antragsraum-proxy +ports: + - containerPort: 8082 + name: 8082tcp1 + protocol: TCP +readinessProbe: + httpGet: + path: / + port: 8082 + scheme: HTTP + timeoutSeconds: 1 + periodSeconds: 10 + successThreshold: 1 + failureThreshold: 3 +startupProbe: + httpGet: + path: / + port: 8082 + scheme: HTTP + timeoutSeconds: 1 + periodSeconds: 10 + successThreshold: 1 + failureThreshold: 3 +resources: + { { - with .Values.resources } } + { { toYaml . | indent 10 } } + { { - end } } +securityContext: + allowPrivilegeEscalation: false + privileged: false + readOnlyRootFilesystem: false + runAsNonRoot: true + { { - with (.Values.securityContext).runAsUser } } + runAsUser: { { . } } + { { - end } } + { { - with (.Values.securityContext).runAsGroup } } + runAsGroup: { { . } } + { { - end } } +stdin: true +terminationMessagePath: /dev/termination-log +terminationMessagePolicy: File +tty: true + +dnsConfig: { } +dnsPolicy: ClusterFirst +imagePullSecrets: + - name: { { required "imagePullSecret must be set" .Values.imagePullSecret } } + +restartPolicy: Always + { { - with .Values.hostAliases } } +hostAliases: + { { toYaml . | indent 8 } } + { { - end } } +schedulerName: default-scheduler +securityContext: { } +terminationGracePeriodSeconds: 30 diff --git a/src/main/helm/templates/network_policy.yaml b/src/main/helm/templates/network_policy.yaml new file mode 100644 index 0000000000000000000000000000000000000000..c972abf6e3fe157fb660da854bfd0ff606f47595 --- /dev/null +++ b/src/main/helm/templates/network_policy.yaml @@ -0,0 +1,83 @@ +# +# Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + + { { - if not (.Values.networkPolicy).disabled } } +apiVersion: networking.k8s.io/v1 +kind: NetworkPolicy +metadata: + name: network-policy-antragsraum-proxy + namespace: { { .Release.Namespace } } +spec: + podSelector: + matchLabels: + component: antragsraum-proxy + policyTypes: + - Ingress + - Egress + ingress: + - ports: + - port: 8082 + from: + - namespaceSelector: { } + podSelector: + matchLabels: + component: fachstelle-server + { { - with (.Values.networkPolicy).additionalIngressConfigLocal } } + { { toYaml . | indent 2 } } + { { - end } } + { { - with (.Values.networkPolicy).additionalIngressConfigGlobal } } + { { toYaml . | indent 2 } } + { { - end } } +egress: + - to: + - namespaceSelector: + matchLabels: + kubernetes.io/metadata.name: { { required "zufiManager.namespace must be set" (.Values.zufiManager).namespace } } + podSelector: + matchLabels: + component: zufi-server + ports: + - port: 9090 + protocol: TCP + - to: + - namespaceSelector: + matchLabels: + kubernetes.io/metadata.name: { { required "networkPolicy.dnsServerNamespace must be set" (.Values.networkPolicy).dnsServerNamespace } } + ports: + - port: 53 + protocol: UDP + - port: 53 + protocol: TCP + - port: 5353 + protocol: UDP + - port: 5353 + protocol: TCP + { { - with (.Values.networkPolicy).additionalEgressConfigLocal } } + { { toYaml . | indent 2 } } + { { - end } } + { { - with (.Values.networkPolicy).additionalEgressConfigGlobal } } + { { toYaml . | indent 2 } } + { { - end } } + + { { - end } } \ No newline at end of file diff --git a/src/main/helm/templates/service.yaml b/src/main/helm/templates/service.yaml new file mode 100644 index 0000000000000000000000000000000000000000..c5a4caff37e14e02bbb3bd975631f0237bd4703b --- /dev/null +++ b/src/main/helm/templates/service.yaml @@ -0,0 +1,40 @@ +# +# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + +apiVersion: v1 +kind: Service +metadata: + name: {{.Release.Name }} + namespace: {{ .Release.Namespace }} + labels: + {{- include "app.defaultLabels" . | indent 4 }} +spec: + type: ClusterIP + ports: + - name: 8082tcp1 + port: 8082 + targetPort: 8082 + protocol: TCP + selector: + {{- include "app.matchLabels" . | indent 4 }} diff --git a/src/main/helm/values.yaml b/src/main/helm/values.yaml new file mode 100644 index 0000000000000000000000000000000000000000..09010a8f931a92ced5a05fe62a39127da4ed36c9 --- /dev/null +++ b/src/main/helm/values.yaml @@ -0,0 +1,36 @@ +# +# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + + +replicaCount: 1 + + +image: + repo: docker.ozg-sh.de + name: antragsraum-proxy + tag: latest # [default: latest] + + + + diff --git a/src/test/helm-linter-values.yaml b/src/test/helm-linter-values.yaml new file mode 100644 index 0000000000000000000000000000000000000000..bab44e4f88591b71dd0cb0220909949f70cfc0e4 --- /dev/null +++ b/src/test/helm-linter-values.yaml @@ -0,0 +1,14 @@ + + +networkPolicy: + dnsServerNamespace: test-dns-namespace + + +zufiManager: + namespace: zufi + +imagePullSecret: ozgcloud-image-pull-secret +server: + port: 8080 +grpc: + url: "zufi.de:9090" \ No newline at end of file diff --git a/src/test/helm/deployment_defaults_labels_test.yaml b/src/test/helm/deployment_defaults_labels_test.yaml new file mode 100644 index 0000000000000000000000000000000000000000..ac363ba7a7749a76df4bf2cbc60cfaf99379ca60 --- /dev/null +++ b/src/test/helm/deployment_defaults_labels_test.yaml @@ -0,0 +1,75 @@ +# +# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + +suite: test deployment default labels +release: + name: antragsraum-proxy + namespace: sh-helm-test +templates: + - templates/deployment.yaml +set: + imagePullSecret: image-pull-secret + server: + port: 8080 + grpc: + url: "zufi.de:9090" +tests: + - it: check metadata.labels + asserts: + - equal: + path: metadata.labels + value: + app.kubernetes.io/instance: antragsraum-proxy + app.kubernetes.io/managed-by: Helm + app.kubernetes.io/name: antragsraum-proxy + app.kubernetes.io/namespace: sh-helm-test + app.kubernetes.io/part-of: ozgcloud + app.kubernetes.io/version: 0.0.0-MANAGED-BY-JENKINS + helm.sh/chart: antragsraum-proxy-0.0.0-MANAGED-BY-JENKINS + app.kubernetes.io/component: antragsraum-proxy + component: antragsraum-proxy + + - it: should set spec.selector.matchLabels + asserts: + - equal: + path: spec.selector.matchLabels + value: + app.kubernetes.io/name: antragsraum-proxy + app.kubernetes.io/namespace: sh-helm-test + component: antragsraum-proxy + + - it: should have correct deyploment spec.template.metadata.labels + asserts: + - equal: + path: spec.template.metadata.labels + value: + app.kubernetes.io/instance: antragsraum-proxy + app.kubernetes.io/managed-by: Helm + app.kubernetes.io/name: antragsraum-proxy + app.kubernetes.io/namespace: sh-helm-test + app.kubernetes.io/part-of: ozgcloud + app.kubernetes.io/version: 0.0.0-MANAGED-BY-JENKINS + helm.sh/chart: antragsraum-proxy-0.0.0-MANAGED-BY-JENKINS + app.kubernetes.io/component: antragsraum-proxy + component: antragsraum-proxy diff --git a/src/test/helm/deployment_env_test.yaml b/src/test/helm/deployment_env_test.yaml new file mode 100644 index 0000000000000000000000000000000000000000..291459906207c5e4cceb50f29962d43e5e58ed6c --- /dev/null +++ b/src/test/helm/deployment_env_test.yaml @@ -0,0 +1,94 @@ +# +# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + +suite: test deployment container environments +templates: + - templates/deployment.yaml +set: + imagePullSecret: image-pull-secret +tests: + - it: check customList as list + set: + env.customList: + - name: my_test_environment_name + value: "A test value" + - name: test_environment + value: "B test value" + grpc: + url: "zufi.de:9090" + asserts: + - contains: + path: spec.template.spec.containers[0].env + content: + name: my_test_environment_name + value: "A test value" + - contains: + path: spec.template.spec.containers[0].env + content: + name: test_environment + value: "B test value" + - it: check customList as dict + set: + env.customList: + my_test_environment_name: "A test value" + test_environment: "B test value" + grpc: + url: "zufi.de:9090" + asserts: + - contains: + path: spec.template.spec.containers[0].env + content: + name: my_test_environment_name + value: "A test value" + - contains: + path: spec.template.spec.containers[0].env + content: + name: test_environment + value: "B test value" + + - it: check envs + set: + grpc: + url: "zufi.de:9090" + asserts: + - contains: + path: spec.template.spec.containers[0].env + content: + name: GRPC_URL + value: "zufi.de:9090" + - contains: + path: spec.template.spec.containers[0].env + content: + name: GRPC_MOCK + value: "false" + - contains: + path: spec.template.spec.containers[0].env + content: + name: SERVER_PORT + value: "8082" + - it: should fail template if grpc.url not set + set: + asserts: + - failedTemplate: + errormessage: ".Values.grpc.url must be set" \ No newline at end of file diff --git a/src/test/helm/deployment_imagepull_secret_test.yaml b/src/test/helm/deployment_imagepull_secret_test.yaml new file mode 100644 index 0000000000000000000000000000000000000000..dd810c502c3f036ebcacdb2e9f8ba5f4631b032b --- /dev/null +++ b/src/test/helm/deployment_imagepull_secret_test.yaml @@ -0,0 +1,47 @@ +# +# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + +suite: test deployment image pull secret +release: + name: antragsraum-proxy + namespace: sh-helm-test +templates: + - templates/deployment.yaml +set: + server: + port: 8080 + grpc: + url: "zufi.de:9090" +tests: + - it: should use correct imagePull secret + set: + imagePullSecret: ozgcloud-image-pull-secret + asserts: + - equal: + path: spec.template.spec.imagePullSecrets[0].name + value: ozgcloud-image-pull-secret + - it: should fail template if imagepullsecret not set + asserts: + - failedTemplate: + errormessage: imagePullSecret must be set \ No newline at end of file diff --git a/src/test/helm/deployment_resources_test.yaml b/src/test/helm/deployment_resources_test.yaml new file mode 100644 index 0000000000000000000000000000000000000000..198f990ae5062013bafa697a216c2bcae607486d --- /dev/null +++ b/src/test/helm/deployment_resources_test.yaml @@ -0,0 +1,64 @@ +# +# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + +suite: test deployment container resources +release: + name: antragsraum-proxy +templates: + - templates/deployment.yaml +set: + imagePullSecret: image-pull-secret + server: + port: 8080 + grpc: + url: "zufi.de:9090" + +tests: + - it: should generate resources when values set + set: + resources: + limits: + cpu: 11m + memory: 22Mi + requests: + cpu: 33m + memory: 44Mi + asserts: + - equal: + path: spec.template.spec.containers[0].resources.limits.cpu + value: 11m + - equal: + path: spec.template.spec.containers[0].resources.limits.memory + value: 22Mi + - equal: + path: spec.template.spec.containers[0].resources.requests.cpu + value: 33m + - equal: + path: spec.template.spec.containers[0].resources.requests.memory + value: 44Mi + - it: should not generate resources when values not set + asserts: + - isEmpty: + path: spec.template.spec.containers[0].resources + diff --git a/src/test/helm/deployment_test.yaml b/src/test/helm/deployment_test.yaml new file mode 100644 index 0000000000000000000000000000000000000000..b60e9e11b2675d381f5012fb98eef99087307621 --- /dev/null +++ b/src/test/helm/deployment_test.yaml @@ -0,0 +1,201 @@ +# +# Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + +suite: deployment +release: + name: antragsraum-proxy +templates: + - templates/deployment.yaml +set: + imagePullSecret: image-pull-secret + server: + port: 8080 + grpc: + url: "zufi.de:9090" + +tests: + - it: should have metadata values + asserts: + - isKind: + of: Deployment + - isAPIVersion: + of: apps/v1 + - equal: + path: metadata.name + value: "antragsraum-proxy" + - equal: + path: metadata.namespace + value: "NAMESPACE" + - exists: + path: metadata.labels + - it: should have correct general settings + asserts: + - equal: + path: spec.progressDeadlineSeconds + value: 600 + - equal: + path: spec.replicas + value: 1 + - equal: + path: spec.revisionHistoryLimit + value: 10 + - exists: + path: spec.selector + - equal: + path: spec.selector.matchLabels["app.kubernetes.io/name"] + value: "antragsraum-proxy" + - equal: + path: spec.selector.matchLabels["app.kubernetes.io/namespace"] + value: "NAMESPACE" + - equal: + path: spec.strategy.rollingUpdate.maxSurge + value: 1 + - equal: + path: spec.strategy.rollingUpdate.maxUnavailable + value: 0 + - equal: + path: spec.strategy.type + value: "RollingUpdate" + - it: should have correct template configuration + asserts: + - equal: + path: spec.template.metadata.labels["app.kubernetes.io/instance"] + value: "antragsraum-proxy" + - equal: + path: spec.template.metadata.labels.component + value: "antragsraum-proxy" + - equal: + path: spec.template.spec.topologySpreadConstraints[0].maxSkew + value: 1 + - equal: + path: spec.template.spec.topologySpreadConstraints[0].topologyKey + value: "kubernetes.io/hostname" + - equal: + path: spec.template.spec.topologySpreadConstraints[0].whenUnsatisfiable + value: "ScheduleAnyway" + - equal: + path: spec.template.spec.topologySpreadConstraints[0].labelSelector.matchLabels["app.kubernetes.io/name"] + value: "antragsraum-proxy" + - isEmpty: + path: spec.template.spec.dnsConfig + - equal: + path: spec.template.spec.dnsPolicy + value: "ClusterFirst" + - equal: + path: spec.template.spec.restartPolicy + value: "Always" + - equal: + path: spec.template.spec.schedulerName + value: "default-scheduler" + - isEmpty: + path: spec.template.spec.securityContext + - equal: + path: spec.template.spec.terminationGracePeriodSeconds + value: 30 + - it: should have correct container configuration + asserts: + - equal: + path: spec.template.spec.containers[0].name + value: "antragsraum-proxy" + - equal: + path: spec.template.spec.containers[0].image + value: "docker.ozg-sh.de/antragsraum-proxy:latest" + - equal: + path: spec.template.spec.containers[0].imagePullPolicy + value: "Always" + - equal: + path: spec.template.spec.containers[0].ports[0].containerPort + value: 8082 + - equal: + path: spec.template.spec.containers[0].ports[0].name + value: "8082tcp1" + - equal: + path: spec.template.spec.containers[0].ports[0].protocol + value: "TCP" + + + - equal: + path: spec.template.spec.containers[0].securityContext.allowPrivilegeEscalation + value: false + - equal: + path: spec.template.spec.containers[0].securityContext.privileged + value: false + - equal: + path: spec.template.spec.containers[0].securityContext.readOnlyRootFilesystem + value: false + - equal: + path: spec.template.spec.containers[0].securityContext.runAsNonRoot + value: true + - equal: + path: spec.template.spec.containers[0].stdin + value: true + - equal: + path: spec.template.spec.containers[0].terminationMessagePath + value: "/dev/termination-log" + - equal: + path: spec.template.spec.containers[0].terminationMessagePolicy + value: "File" + - equal: + path: spec.template.spec.containers[0].tty + value: true + - equal: + path: spec.template.spec.containers[0].readinessProbe.failureThreshold + value: 3 + - equal: + path: spec.template.spec.containers[0].readinessProbe.httpGet.path + value: "/" + - equal: + path: spec.template.spec.containers[0].readinessProbe.httpGet.port + value: 8082 + - equal: + path: spec.template.spec.containers[0].readinessProbe.httpGet.scheme + value: "HTTP" + - equal: + path: spec.template.spec.containers[0].readinessProbe.periodSeconds + value: 10 + - equal: + path: spec.template.spec.containers[0].readinessProbe.successThreshold + value: 1 + - equal: + path: spec.template.spec.containers[0].readinessProbe.timeoutSeconds + value: 1 + - equal: + path: spec.template.spec.containers[0].startupProbe.httpGet.path + value: "/" + - equal: + path: spec.template.spec.containers[0].startupProbe.httpGet.port + value: 8082 + - equal: + path: spec.template.spec.containers[0].startupProbe.failureThreshold + value: 3 + + - equal: + path: spec.template.spec.containers[0].startupProbe.periodSeconds + value: 10 + - equal: + path: spec.template.spec.containers[0].startupProbe.successThreshold + value: 1 + - equal: + path: spec.template.spec.containers[0].startupProbe.timeoutSeconds + value: 1 diff --git a/src/test/helm/network_policy_test.yaml b/src/test/helm/network_policy_test.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8041ca80dcc4752b230b7632022d3b0e8f93a5fa --- /dev/null +++ b/src/test/helm/network_policy_test.yaml @@ -0,0 +1,234 @@ +# +# Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + +suite: network policy test +release: + namespace: by-helm-test +templates: + - templates/network_policy.yaml + + +tests: + - it: should match apiVersion + set: + zufiManager: + namespace: zufi + networkPolicy: + dnsServerNamespace: test-dns-namespace + asserts: + - isAPIVersion: + of: networking.k8s.io/v1 + + - it: should match kind + set: + zufiManager: + namespace: zufi + networkPolicy: + dnsServerNamespace: test-dns-namespace + asserts: + - isKind: + of: NetworkPolicy + + - it: should match metadata + set: + zufiManager: + namespace: zufi + networkPolicy: + dnsServerNamespace: test-dns-namespace + asserts: + - equal: + path: metadata + value: + name: network-policy-antragsraum-proxy + namespace: by-helm-test + + - it: should generate spec + set: + zufiManager: + namespace: zufi + networkPolicy: + dnsServerNamespace: test-dns-namespace + asserts: + - equal: + path: spec + value: + egress: + - ports: + - port: 9090 + protocol: TCP + to: + - namespaceSelector: + matchLabels: + kubernetes.io/metadata.name: zufi + podSelector: + matchLabels: + component: zufi-server + - ports: + - port: 53 + protocol: UDP + - port: 53 + protocol: TCP + - port: 5353 + protocol: UDP + - port: 5353 + protocol: TCP + to: + - namespaceSelector: + matchLabels: + kubernetes.io/metadata.name: test-dns-namespace + ingress: + - from: + - namespaceSelector: { } + podSelector: + matchLabels: + component: fachstelle-server + ports: + - port: 8082 + podSelector: + matchLabels: + component: antragsraum-proxy + policyTypes: + - Ingress + - Egress + + - it: add ingress rule by values local + set: + zufiManager: + namespace: zufi + networkPolicy: + dnsServerNamespace: test-namespace-dns + additionalIngressConfigLocal: + - from: + - podSelector: + matchLabels: + component: client2 + asserts: + - contains: + path: spec.ingress + content: + from: + - podSelector: + matchLabels: + component: client2 + - it: add ingress rule by values global + set: + zufiManager: + namespace: zufi + networkPolicy: + dnsServerNamespace: test-namespace-dns + additionalIngressConfigGlobal: + - from: + - podSelector: + matchLabels: + component: client2 + asserts: + - contains: + path: spec.ingress + content: + from: + - podSelector: + matchLabels: + component: client2 + + - it: add egress rules by values local + set: + zufiManager: + namespace: zufi + networkPolicy: + dnsServerNamespace: test-dns-namespace + additionalEgressConfigLocal: + - to: + - ipBlock: + cidr: 1.2.3.4/32 + asserts: + - contains: + path: spec.egress + content: + to: + - ipBlock: + cidr: 1.2.3.4/32 + - it: add egress rules by values Global + set: + zufiManager: + namespace: zufi + networkPolicy: + dnsServerNamespace: test-dns-namespace + additionalEgressConfigGlobal: + - to: + - ipBlock: + cidr: 1.2.3.4/32 + asserts: + - contains: + path: spec.egress + content: + to: + - ipBlock: + cidr: 1.2.3.4/32 + + - it: test network policy disabled + set: + networkPolicy: + disabled: true + asserts: + - hasDocuments: + count: 0 + + - it: test network policy unset should be disabled + set: + zufiManager: + namespace: zufi + networkPolicy: + disabled: false + dnsServerNamespace: test-dns-namespace + asserts: + - hasDocuments: + count: 1 + - it: test dnsServerNamespace must be set message + set: + zufiManager: + namespace: zufi + networkPolicy: + disabled: false + asserts: + - failedTemplate: + errorMessage: networkPolicy.dnsServerNamespace must be set + + - it: test zufiManager Namespace must be set message + set: + networkPolicy: + disabled: false + dnsServerNamespace: test-dns-server-namespace + asserts: + - failedTemplate: + errorMessage: zufiManager.namespace must be set + + - it: test network policy should be enabled by default + set: + zufiManager: + namespace: zufi + networkPolicy: + dnsServerNamespace: test-dns-server-namespace + asserts: + - hasDocuments: + count: 1 \ No newline at end of file diff --git a/src/test/helm/service_test.yaml b/src/test/helm/service_test.yaml new file mode 100644 index 0000000000000000000000000000000000000000..63057afeeb26337337964b90856a850403ca1f8b --- /dev/null +++ b/src/test/helm/service_test.yaml @@ -0,0 +1,77 @@ +# +# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + +suite: test service +release: + name: antragsraum-proxy + namespace: sh-helm-test +templates: + - templates/service.yaml +tests: + - it: should have the label component with correct value + asserts: + - isKind: + of: Service + - isAPIVersion: + of: v1 + - equal: + path: metadata.labels.component + value: antragsraum-proxy + - it: should be of type ClusterIP + asserts: + - equal: + path: spec.type + value: ClusterIP + - it: ports should contain the grpc port + asserts: + - contains: + path: spec.ports + content: + name: 8082tcp1 + port: 8082 + targetPort: 8082 + protocol: TCP + count: 1 + any: true + + - it: selector should contain the component label with correct value + asserts: + - equal: + path: spec.selector.component + value: antragsraum-proxy + + - it: selector should contain helm recommended labels name and namespace + asserts: + - equal: + path: spec.selector + value: + app.kubernetes.io/name: antragsraum-proxy + app.kubernetes.io/namespace: sh-helm-test + component: antragsraum-proxy + + - it: check component label for service + asserts: + - equal: + path: metadata.labels["component"] + value: antragsraum-proxy \ No newline at end of file