diff --git a/README.md b/README.md index a76c7fc5..1c719e93 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,7 @@ Library for interacting with services on [Serviceplatformen](https://www.service * Parts of [Afsend post (SF1601): https://digitaliseringskataloget.dk/integration/sf1601](https://digitaliseringskataloget.dk/integration/sf1601). See [SF1601: Afsend post](docs/SF1601.md) for details. +* [Fordelingskomponenten (SF2900): https://digitaliseringskataloget.dk/integration/sf2900](https://digitaliseringskataloget.dk/integration/sf2900) ## Updating resources and classes @@ -18,32 +19,28 @@ generate PHP classes for talking to SOAP services. To update [resources](./resources) and [generated classes](./generated-classes), run ``` shell -docker run --interactive --tty --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest composer install -# Update WSDL resources. -docker run --interactive --tty --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest bin/generate resources -# Generate PHP classes from WSDL resources. -docker run --interactive --tty --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest bin/generate classes +task generate ``` ## Test commands ``` shell -docker run --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest vendor/bin/serviceplatformen-sf1601-kombipostafsend --help +docker compose run --rm phpfpm vendor/bin/serviceplatformen-sf1601-kombipostafsend --help ``` Use `bin/serviceplatformen-sf1601-kombipostafsend` (symlinked to `bin/SF1601/kombipostafsend`) during development of this library. i.e. ``` shell -docker run --interactive --tty --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest bin/serviceplatformen-sf1601-kombipostafsend +docker compose run --rm phpfpm bin/serviceplatformen-sf1601-kombipostafsend ``` ``` shell -docker run --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest vendor/bin/serviceplatformen-sf1601-postforespoerg --help +docker compose run --rm phpfpm vendor/bin/serviceplatformen-sf1601-postforespoerg --help ``` ``` shell -docker run --interactive --tty --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest bin/serviceplatformen-sf1601-postforespoerg +docker compose run --rm phpfpm bin/serviceplatformen-sf1601-postforespoerg ``` ## Getting Started @@ -71,7 +68,7 @@ Install the dependencies: ``` shell cd serviceplatformen -composer install +docker compose run --rm phpfpm composer install ``` ## Running the tests @@ -79,13 +76,13 @@ composer install Unit tests: ``` shell -docker run --interactive --tty --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest composer tests/unit +docker compose run --rm phpfpm composer tests/unit ``` End to end tests: ``` shell -docker run --interactive --tty --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest composer tests/end-to-end +docker compose run --rm phpfpm composer tests/end-to-end ``` ### And coding style tests @@ -93,13 +90,13 @@ docker run --interactive --tty --rm --volume ${PWD}:/app itkdev/php8.3-fpm:lates PHP_CodeSniffer ``` shell -composer coding-standards-check/phpcs +docker compose run --rm phpfpm composer coding-standards-check/phpcs ``` PHP-CS-Fixer ``` shell -composer coding-standards-check/php-cs-fixer +docker compose run --rm phpfpm composer coding-standards-check/php-cs-fixer ``` ### Static code analysis @@ -107,13 +104,13 @@ composer coding-standards-check/php-cs-fixer Phan ``` shell -composer static-code-analysis/phan +docker compose run --rm phpfpm composer static-code-analysis/phan ``` ## Deployment ``` shell -composer require itk-dev/serviceplatformen +docker compose run --rm phpfpm composer require itk-dev/serviceplatformen ``` ## Usage @@ -237,20 +234,20 @@ reviewer to merge it for you. ### Coding standards ``` shell -docker run --interactive --tty --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest composer install -docker run --interactive --tty --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest composer coding-standards-apply -docker run --interactive --tty --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest composer coding-standards-check +docker compose run --rm phpfpm composer install +docker compose run --rm phpfpm composer coding-standards-apply +docker compose run --rm phpfpm composer coding-standards-check ``` ``` shell -docker run --rm --volume ${PWD}:/md peterdavehello/markdownlint markdownlint --ignore vendor --ignore LICENSE.md '**/*.md' --fix -docker run --rm --volume ${PWD}:/md peterdavehello/markdownlint markdownlint --ignore vendor --ignore LICENSE.md '**/*.md' +docker compose run --rm markdownlint markdownlint '**/*.md' --fix +docker compose run --rm markdownlint markdownlint '**/*.md' ``` ### Code analysis ``` shell -docker run --interactive --tty --rm --volume ${PWD}:/app --env COMPOSER_MEMORY_LIMIT=-1 itkdev/php8.3-fpm:latest composer code-analysis +docker compose run --rm phpfpm composer code-analysis ``` ## Versioning diff --git a/Taskfile.yml b/Taskfile.yml new file mode 100644 index 00000000..e43a73a5 --- /dev/null +++ b/Taskfile.yml @@ -0,0 +1,58 @@ +# https://taskfile.dev + +version: "3" + +tasks: + generate: + desc: Generate stuff … + cmds: + - task: compose + vars: + TASK_ARGS: run --rm phpfpm composer install + - task: compose + vars: + TASK_ARGS: run --rm phpfpm bin/generate resources + - task: compose + vars: + TASK_ARGS: run --rm phpfpm bin/generate classes + + compose: + cmds: + - docker compose {{.TASK_ARGS}} {{.CLI_ARGS}} + internal: true + + composer: + desc: Run composer inside docker compose setup, e.g. `task {{.TASK}} -- install` + cmds: + - task: compose + vars: + TASK_ARGS: run --rm phpfpm composer {{.TASK_ARGS}} + + php: + # https://taskfile.dev/docs/reference/templating#task-1 + desc: Run PHP inside docker compose setup, e.g. `task {{.TASK}} -- bin/serviceplatformen-sf2900-fordelingsobjekt-list` + cmds: + - task: compose + vars: + TASK_ARGS: run --rm phpfpm php + + debug:php: + desc: Run PHP inside docker compose setup with Xdebug enabled, e.g. `task {{.TASK}} -- bin/serviceplatformen-sf2900-fordelingsobjekt-list` + cmds: + - task: compose + vars: + TASK_ARGS: run --env PHP_XDEBUG_MODE=debug --env PHP_XDEBUG_WITH_REQUEST=yes --rm phpfpm php + + coding-standards:coding-standards:check: + cmds: + - task: composer + vars: + TASK_ARGS: coding-standards-apply + - task: composer + vars: + TASK_ARGS: coding-standards-check + + default: + cmds: + - task --list + silent: true diff --git a/bin/generate b/bin/generate index 02a69fff..e09add77 100755 --- a/bin/generate +++ b/bin/generate @@ -48,6 +48,18 @@ $services = [ ], 'namespace_name' => 'SF1600', ], + + // https://digitaliseringskataloget.dk/integration/sf2900 + 'sf2900' => [ + 'doc_url' => 'https://docs.kombit.dk/integration/sf2900/2.4/pakke', + 'resource_zip_glob' => 'SF2900 Teknisk Spec*.zip', + 'wsdl_paths' => [ + '' => 'wsdl/context/DistributionService.wsdl', + ], + 'namespace_name' => 'SF2900', + // @see https://github.com/WsdlToPhp/PackageEws365/blob/master/SoapClient/SoapClientBase.php + 'soap_client_class' => \ItkDev\Serviceplatformen\Service\SF2900\SoapClientBase::class, + ], ]; class ResourceHelper extends Helper { diff --git a/bin/serviceplatformen-sf2900-fordelingsmodtager-list b/bin/serviceplatformen-sf2900-fordelingsmodtager-list new file mode 100755 index 00000000..5fb45f43 --- /dev/null +++ b/bin/serviceplatformen-sf2900-fordelingsmodtager-list @@ -0,0 +1,24 @@ +#!/usr/bin/env php +add($command); + +$application->setDefaultCommand($command->getName(), true); +$application->run(); diff --git a/bin/serviceplatformen-sf2900-fordelingsobjekt-afsend b/bin/serviceplatformen-sf2900-fordelingsobjekt-afsend new file mode 100755 index 00000000..298ce057 --- /dev/null +++ b/bin/serviceplatformen-sf2900-fordelingsobjekt-afsend @@ -0,0 +1,24 @@ +#!/usr/bin/env php +add($command); + +$application->setDefaultCommand($command->getName(), true); +$application->run(); diff --git a/bin/serviceplatformen-sf2900-sftp b/bin/serviceplatformen-sf2900-sftp new file mode 100755 index 00000000..cbd62dad --- /dev/null +++ b/bin/serviceplatformen-sf2900-sftp @@ -0,0 +1,24 @@ +#!/usr/bin/env php +add($command); + +$application->setDefaultCommand($command->getName(), true); +$application->run(); diff --git a/bin/xsd2php b/bin/xsd2php index 8da79c6e..ebd2775f 100755 --- a/bin/xsd2php +++ b/bin/xsd2php @@ -24,6 +24,13 @@ xsd_dir=/tmp/serviceplatformen/xsd # XSD archive url (cf. https://www.digitaliser.dk/resource/5248921) XSD_ARCHIVE_URL="https://www.digitaliser.dk/resource/5248921/artefact/MeMo_XSD.zip?artefact=true&PID=6075979" +# @todo +# The previous XSD_ARCHIVE_URL does no longer exist. +# https://www.digitaliser.dk/resource/5248921 » "MeMo v1.1 dokumentationen" +# (https://www.digitaliser.dk/digital-post/vejledninger/memo-v11) » +# "MeMo_XSD.zip" leads to +# XSD_ARCHIVE_URL="https://www.digitaliser.dk/Media/638142936027043458/MeMo_XSD.zip" + echo "${bold}Fetching MeMo XSD${normal}" mkdir -p "$xsd_dir" @@ -78,3 +85,15 @@ unzip -q -o "$xsd_dir/SF1500 Bilag*.zip" -d "$xsd_dir" || true ls -l "$xsd_dir"/Tekniske*/*/xsd/6.0.STS-0/*.xsd "$project_dir"/vendor/bin/xsd2php convert xsd2php-config.yml "$xsd_dir"/Tekniske*/*/xsd/6.0.STS-0/*.xsd + +# https://digitaliseringskataloget.dk/sites/default/files/integration-files/091220250945/Vejledning%20til%20Serviceplatformens%20SFTP%20Service.pdf + +xsd_dir=/tmp/sftp/xsd +mkdir -p "$xsd_dir" + +set -x + +curl --silent --location https://docs.kombit.dk/latest/0cfee71a >| "$xsd_dir"/sftp.zip +unzip -q -o "$xsd_dir"/sftp.zip -d "$xsd_dir" + +"$project_dir"/vendor/bin/xsd2php convert xsd2php-config.yml "$xsd_dir"/*/xsd/*.xsd diff --git a/compose.yaml b/compose.yaml new file mode 100644 index 00000000..96ac5ee3 --- /dev/null +++ b/compose.yaml @@ -0,0 +1,36 @@ +services: + phpfpm: + image: itkdev/php8.3-fpm:latest + user: ${COMPOSE_USER:-deploy} + extra_hosts: + - "host.docker.internal:host-gateway" + environment: + - PHP_XDEBUG_MODE=${PHP_XDEBUG_MODE:-off} + - PHP_MAX_EXECUTION_TIME=30 + - PHP_MEMORY_LIMIT=256M + # - DOCKER_HOST_DOMAIN=${COMPOSE_DOMAIN} + - PHP_IDE_CONFIG=serverName=localhost + volumes: + - .:/app + # environment: + # PHP_MEMORY_LIMIT: 512M + # COMPOSER_MEMORY_LIMIT: -1 + + # Code checks tools + markdownlint: + image: itkdev/markdownlint + profiles: + - dev + volumes: + - ./:/md + + prettier: + # Prettier does not (yet, fcf. + # https://github.com/prettier/prettier/issues/15206) have an official + # docker image. + # https://hub.docker.com/r/jauderho/prettier is good candidate (cf. https://hub.docker.com/search?q=prettier&sort=updated_at&order=desc) + image: jauderho/prettier + profiles: + - dev + volumes: + - ./:/work diff --git a/composer.json b/composer.json index 8b86d1da..dea7c92a 100644 --- a/composer.json +++ b/composer.json @@ -18,30 +18,33 @@ "bin/serviceplatformen-sf1601-kombipostafsend" ], "require": { - "php": "^8.1", + "php": "^8.3", "ext-curl": "*", "ext-dom": "*", "ext-json": "*", "ext-openssl": "*", "ext-simplexml": "*", "ext-soap": "*", + "ext-xsl": "*", "composer-runtime-api": "^2.2", "goetas-webservices/xsd2php-runtime": "^0.2.16", "http-interop/http-factory-guzzle": "^1.2", "itk-dev/azure-key-vault-php": "^1.0", "jms/serializer": "^3.18", "php-http/guzzle7-adapter": "^1.0", + "phpseclib/phpseclib": "^3.0", "symfony/cache": "^5.4 || ^6.0 || ^7.0", + "symfony/event-dispatcher": "^6.0 || ^7.0", "symfony/http-client": "^5.4 || ^6.0 || ^7.0", "symfony/options-resolver": "^5.4 || ^6.0 || ^7.0", - "symfony/property-access": "^5.4 || ^6.0 || ^7.0", + "symfony/property-access": "^4.4 || ^5.4 || ^6.0 || ^7.0", "symfony/string": "^5.4 || ^6.0 || ^7.0", "symfony/uid": "^5.4 || ^6.0 || ^7.0", "wsdltophp/packagebase": "^5.0" }, "require-dev": { "friendsofphp/php-cs-fixer": "^3.11", - "goetas-webservices/xsd2php": "dev-feature-xml-namespace-prefix", + "goetas-webservices/xsd2php": "dev-feature-xml-namespace-prefix#itk-0.4.14", "phan/phan": "^5.4", "phpstan/phpstan": "^1.8", "phpunit/phpunit": "^9.0", @@ -60,6 +63,7 @@ "ItkDev\\Serviceplatformen\\": "src/", "ItkDev\\Serviceplatformen\\SF1500\\": "generated-classes/ItkDev/Serviceplatformen/SF1500/", "ItkDev\\Serviceplatformen\\SF1600\\": "generated-classes/ItkDev/Serviceplatformen/SF1600/", + "ItkDev\\Serviceplatformen\\SF2900\\": "generated-classes/ItkDev/Serviceplatformen/SF2900/", "DigitalPost\\MeMo\\": "lib/DigitalPost/MeMo/", "DataGovDk\\Model\\DataTypes\\": "lib/DataGovDk/Model/DataTypes/", "DataGovDk\\Model\\Core\\": "lib/DataGovDk/Model/Core/", diff --git a/docs/SF1601.md b/docs/SF1601.md index aba11ce0..ccc82d05 100644 --- a/docs/SF1601.md +++ b/docs/SF1601.md @@ -196,8 +196,8 @@ classes. To generate or update the generated PHP classes, run ``` shell -docker run --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest composer install -docker run --interactive --tty --rm --volume ${PWD}:/app itkdev/php8.3-fpm:latest bin/xsd2php +docker compose run --rm phpfpm composer install +docker compose run --rm phpfpm bin/xsd2php ``` ## Sending test messages diff --git a/docs/SF2900.md b/docs/SF2900.md new file mode 100644 index 00000000..3385bad7 --- /dev/null +++ b/docs/SF2900.md @@ -0,0 +1,67 @@ +# SF2900: Fordelingskomponenten + + + +> Servicen er udstillet med følgende sikkerhedsmodeller: +> +> - AuthorityContext +> - SAML-token + +``` text + [SoapFault] + Security model for the called operation was not provided. The following are supported: [KombitToken, AuthorityContext] + + For further information contact Serviceplatformen Helpdesk and inform: + CallUUID: cca459ba-ee11-4030-8ae1-25ea95b0318c + Received: 2025-10-23T13:06:14.306Z +``` + +() + +## `FordelingsmodtagerList` + +Example request: + +``` shell name=test-FordelingsmodtagerList +curl https://exttest.serviceplatformen.dk/service/SP/Distribution/3 \ + --cert-type p12 \ + --cert '«path to your certificate»:«certificate password»' \ + --header 'content-type: text/xml;charset=UTF-8' \ + --data @- <<'XML' + + + + + + 55133018 + + + 55133018 + 👻 + 01.01.01 + + + + + +XML +``` + +Response: + +``` xml + + + + + + 👻 + fordelingskomponent-itkdev.aarhuskommune.dk + 01.01.* + A00 + + + + + +``` diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/ClassMap.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/ClassMap.php new file mode 100644 index 00000000..4d432fe1 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/ClassMap.php @@ -0,0 +1,82 @@ + '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\CallContextType', + 'AuthorityContextType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\AuthorityContextType', + 'UUID_URN' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\UUID_URN', + 'UUID_URN_Tekst' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\UUID_URN_Tekst', + 'TransportkvitteringType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\TransportkvitteringType', + 'FejlListeType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FejlListeType', + 'FejlType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FejlType', + 'ForretningskvitteringType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\ForretningskvitteringType', + 'anmodRequestType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\AnmodRequestType', + 'DistributionContextType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\DistributionContextType', + 'RoutingValg' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\RoutingValg', + 'RoutingKLEInfo' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\RoutingKLEInfo', + 'RoutingListeType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\RoutingListeType', + 'RoutingType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\RoutingType', + 'RoutingResposneListeType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\RoutingResposneListeType', + 'RoutingResponseType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\RoutingResponseType', + 'DistributionObjectType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\DistributionObjectType', + 'ObjektIndholdType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\ObjektIndholdType', + 'DistributionDokumentType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\DistributionDokumentType', + 'DokumentRegistreringType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\DokumentRegistreringType', + 'RelationsListe' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\RelationsListe', + 'VariantListeType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\VariantListeType', + 'VariantType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\VariantType', + 'VariantAttributterType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\VariantAttributterType', + 'DelAttributterType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\DelAttributterType', + 'DokumentPartListeType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\DokumentPartListeType', + 'DokumentPartType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\DokumentPartType', + 'VirkningType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\VirkningType', + 'TilstandListeType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\TilstandListeType', + 'TilstandType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\TilstandType', + 'AttributterListeType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\AttributterListeType', + 'AttributterType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\AttributterType', + 'OffentlighedUndtagetType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\OffentlighedUndtagetType', + 'DistributionJournalPostType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\DistributionJournalPostType', + 'JournalPostRegistreringType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\JournalPostRegistreringType', + 'PartType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\PartType', + 'JournalPostRelationsListeType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\JournalPostRelationsListeType', + 'JournalPostType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\JournalPostType', + 'JournalpostEgenskaberType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\JournalpostEgenskaberType', + 'JournalNotatEgenskaberType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\JournalNotatEgenskaberType', + 'JournalPartType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\JournalPartType', + 'DistributionFormularType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\DistributionFormularType', + 'MeddelelseType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\MeddelelseType', + 'FormularType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FormularType', + 'FormularXMLType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FormularXMLType', + 'tilgaengeligeModtagereType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\TilgaengeligeModtagereType', + 'ModtagerMedEndpointType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\ModtagerMedEndpointType', + 'FordelingsmodtagerListRequest' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FordelingsmodtagerListRequest', + 'FordelingsobjektModtagRequestType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FordelingsobjektModtagRequestType', + 'FordelingsobjektModtagResponseType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FordelingsobjektModtagResponseType', + 'FordelingskvitteringModtagAnvenderRequestType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FordelingskvitteringModtagAnvenderRequestType', + 'FordelingskvitteringModtagAnvenderResponseType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FordelingskvitteringModtagAnvenderResponseType', + 'FordelingsobjektAfsendRequestType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FordelingsobjektAfsendRequestType', + 'FordelingsobjektAfsendResponseType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FordelingsobjektAfsendResponseType', + 'FordelingskvitteringModtagRequestType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FordelingskvitteringModtagRequestType', + 'FordelingskvitteringModtagResponseType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FordelingskvitteringModtagResponseType', + 'FordelingsmodtagerListRequestType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FordelingsmodtagerListRequestType', + 'FordelingsmodtagerListResponseType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FordelingsmodtagerListResponseType', + 'FordelingsmodtagerValiderRequestType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FordelingsmodtagerValiderRequestType', + 'FordelingsmodtagerValiderResponseType' => '\\ItkDev\\Serviceplatformen\\SF2900\\StructType\\FordelingsmodtagerValiderResponseType', + ]; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/EnumType/AktoerTypeType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/EnumType/AktoerTypeType.php new file mode 100644 index 00000000..69fc5975 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/EnumType/AktoerTypeType.php @@ -0,0 +1,66 @@ +setResult($resultFordelingskvitteringModtag = $this->getSoapClient()->__soapCall('FordelingskvitteringModtag', [ + $request, + ], [], [], $this->outputHeaders)); + + return $resultFordelingskvitteringModtag; + } catch (SoapFault $soapFault) { + $this->saveLastError(__METHOD__, $soapFault); + + return false; + } + } + /** + * Returns the result + * @see SoapClientBase::getResult() + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingskvitteringModtagResponseType + */ + public function getResult() + { + return parent::getResult(); + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/ServiceType/Fordelingsmodtager.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/ServiceType/Fordelingsmodtager.php new file mode 100644 index 00000000..6e8fbba6 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/ServiceType/Fordelingsmodtager.php @@ -0,0 +1,69 @@ +setResult($resultFordelingsmodtagerList = $this->getSoapClient()->__soapCall('FordelingsmodtagerList', [ + $request, + ], [], [], $this->outputHeaders)); + + return $resultFordelingsmodtagerList; + } catch (SoapFault $soapFault) { + $this->saveLastError(__METHOD__, $soapFault); + + return false; + } + } + /** + * Method to call the operation originally named FordelingsmodtagerValider + * @uses SoapClientBase::getSoapClient() + * @uses SoapClientBase::setResult() + * @uses SoapClientBase::saveLastError() + * @param \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerValiderRequestType $request + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerValiderResponseType|bool + */ + public function FordelingsmodtagerValider(\ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerValiderRequestType $request) + { + try { + $this->setResult($resultFordelingsmodtagerValider = $this->getSoapClient()->__soapCall('FordelingsmodtagerValider', [ + $request, + ], [], [], $this->outputHeaders)); + + return $resultFordelingsmodtagerValider; + } catch (SoapFault $soapFault) { + $this->saveLastError(__METHOD__, $soapFault); + + return false; + } + } + /** + * Returns the result + * @see SoapClientBase::getResult() + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerListResponseType|\ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerValiderResponseType + */ + public function getResult() + { + return parent::getResult(); + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/ServiceType/Fordelingsobjekt.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/ServiceType/Fordelingsobjekt.php new file mode 100644 index 00000000..7cdba9d9 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/ServiceType/Fordelingsobjekt.php @@ -0,0 +1,47 @@ +setResult($resultFordelingsobjektAfsend = $this->getSoapClient()->__soapCall('FordelingsobjektAfsend', [ + $request, + ], [], [], $this->outputHeaders)); + + return $resultFordelingsobjektAfsend; + } catch (SoapFault $soapFault) { + $this->saveLastError(__METHOD__, $soapFault); + + return false; + } + } + /** + * Returns the result + * @see SoapClientBase::getResult() + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsobjektAfsendResponseType + */ + public function getResult() + { + return parent::getResult(); + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/AnmodRequestType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/AnmodRequestType.php new file mode 100644 index 00000000..9e8a833c --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/AnmodRequestType.php @@ -0,0 +1,84 @@ +setDistributionContext($distributionContext) + ->setDistributionObject($distributionObject); + } + /** + * Get DistributionContext value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + */ + public function getDistributionContext(): \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + { + return $this->DistributionContext; + } + /** + * Set DistributionContext value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType $distributionContext + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AnmodRequestType + */ + public function setDistributionContext(\ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType $distributionContext): self + { + $this->DistributionContext = $distributionContext; + + return $this; + } + /** + * Get DistributionObject value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionObjectType + */ + public function getDistributionObject(): \ItkDev\Serviceplatformen\SF2900\StructType\DistributionObjectType + { + return $this->DistributionObject; + } + /** + * Set DistributionObject value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\DistributionObjectType $distributionObject + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AnmodRequestType + */ + public function setDistributionObject(\ItkDev\Serviceplatformen\SF2900\StructType\DistributionObjectType $distributionObject): self + { + $this->DistributionObject = $distributionObject; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/AttributterListeType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/AttributterListeType.php new file mode 100644 index 00000000..badf1e1f --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/AttributterListeType.php @@ -0,0 +1,102 @@ +setAttributter($attributter); + } + /** + * Get Attributter value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType[] + */ + public function getAttributter(): array + { + return $this->Attributter; + } + /** + * This method is responsible for validating the value(s) passed to the setAttributter method + * This method is willingly generated in order to preserve the one-line inline validation within the setAttributter method + * This has to validate that each item contained by the array match the itemType constraint + * @param array $values + * @return string A non-empty message if the values does not match the validation rules + */ + public static function validateAttributterForArrayConstraintFromSetAttributter(?array $values = []): string + { + if (!is_array($values)) { + return ''; + } + $message = ''; + $invalidValues = []; + foreach ($values as $attributterListeTypeAttributterItem) { + // validation for constraint: itemType + if (!$attributterListeTypeAttributterItem instanceof \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType) { + $invalidValues[] = is_object($attributterListeTypeAttributterItem) ? get_class($attributterListeTypeAttributterItem) : sprintf('%s(%s)', gettype($attributterListeTypeAttributterItem), var_export($attributterListeTypeAttributterItem, true)); + } + } + if (!empty($invalidValues)) { + $message = sprintf('The Attributter property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType, %s given', is_object($invalidValues) ? get_class($invalidValues) : (is_array($invalidValues) ? implode(', ', $invalidValues) : gettype($invalidValues))); + } + unset($invalidValues); + + return $message; + } + /** + * Set Attributter value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType[] $attributter + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterListeType + */ + public function setAttributter(array $attributter): self + { + // validation for constraint: array + if ('' !== ($attributterArrayErrorMessage = self::validateAttributterForArrayConstraintFromSetAttributter($attributter))) { + throw new InvalidArgumentException($attributterArrayErrorMessage, __LINE__); + } + $this->Attributter = $attributter; + + return $this; + } + /** + * Add item to Attributter value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType $item + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterListeType + */ + public function addToAttributter(\ItkDev\Serviceplatformen\SF2900\StructType\AttributterType $item): self + { + // validation for constraint: itemType + if (!$item instanceof \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType) { + throw new InvalidArgumentException(sprintf('The Attributter property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType, %s given', is_object($item) ? get_class($item) : (is_array($item) ? implode(', ', $item) : gettype($item))), __LINE__); + } + $this->Attributter[] = $item; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/AttributterType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/AttributterType.php new file mode 100644 index 00000000..be789140 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/AttributterType.php @@ -0,0 +1,430 @@ +setBrugervendtNoegleTekst($brugervendtNoegleTekst) + ->setTitelTekst($titelTekst) + ->setBeskrivelseTekst($beskrivelseTekst) + ->setDokumenttype($dokumenttype) + ->setRetning($retning) + ->setBrevdato($brevdato) + ->setVirkning($virkning) + ->setFristdato($fristdato) + ->setVersionIdentifikator($versionIdentifikator) + ->setUnderversionIdentificator($underversionIdentificator) + ->setKassationskodeTekst($kassationskodeTekst) + ->setOffentlighedUndtaget($offentlighedUndtaget); + } + /** + * Get BrugervendtNoegleTekst value + * @return string + */ + public function getBrugervendtNoegleTekst(): string + { + return $this->BrugervendtNoegleTekst; + } + /** + * Set BrugervendtNoegleTekst value + * @param string $brugervendtNoegleTekst + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType + */ + public function setBrugervendtNoegleTekst(string $brugervendtNoegleTekst): self + { + // validation for constraint: string + if (!is_null($brugervendtNoegleTekst) && !is_string($brugervendtNoegleTekst)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($brugervendtNoegleTekst, true), gettype($brugervendtNoegleTekst)), __LINE__); + } + $this->BrugervendtNoegleTekst = $brugervendtNoegleTekst; + + return $this; + } + /** + * Get TitelTekst value + * @return string + */ + public function getTitelTekst(): string + { + return $this->TitelTekst; + } + /** + * Set TitelTekst value + * @param string $titelTekst + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType + */ + public function setTitelTekst(string $titelTekst): self + { + // validation for constraint: string + if (!is_null($titelTekst) && !is_string($titelTekst)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($titelTekst, true), gettype($titelTekst)), __LINE__); + } + $this->TitelTekst = $titelTekst; + + return $this; + } + /** + * Get BeskrivelseTekst value + * @return string + */ + public function getBeskrivelseTekst(): string + { + return $this->BeskrivelseTekst; + } + /** + * Set BeskrivelseTekst value + * @param string $beskrivelseTekst + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType + */ + public function setBeskrivelseTekst(string $beskrivelseTekst): self + { + // validation for constraint: string + if (!is_null($beskrivelseTekst) && !is_string($beskrivelseTekst)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($beskrivelseTekst, true), gettype($beskrivelseTekst)), __LINE__); + } + $this->BeskrivelseTekst = $beskrivelseTekst; + + return $this; + } + /** + * Get Dokumenttype value + * @return string + */ + public function getDokumenttype(): string + { + return $this->Dokumenttype; + } + /** + * Set Dokumenttype value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\DokumenttypeType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\DokumenttypeType::getValidValues() + * @throws InvalidArgumentException + * @param string $dokumenttype + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType + */ + public function setDokumenttype(string $dokumenttype): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\DokumenttypeType::valueIsValid($dokumenttype)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\DokumenttypeType', is_array($dokumenttype) ? implode(', ', $dokumenttype) : var_export($dokumenttype, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\DokumenttypeType::getValidValues())), __LINE__); + } + $this->Dokumenttype = $dokumenttype; + + return $this; + } + /** + * Get Retning value + * @return string + */ + public function getRetning(): string + { + return $this->Retning; + } + /** + * Set Retning value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\RetningType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\RetningType::getValidValues() + * @throws InvalidArgumentException + * @param string $retning + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType + */ + public function setRetning(string $retning): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\RetningType::valueIsValid($retning)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\RetningType', is_array($retning) ? implode(', ', $retning) : var_export($retning, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\RetningType::getValidValues())), __LINE__); + } + $this->Retning = $retning; + + return $this; + } + /** + * Get Brevdato value + * @return string + */ + public function getBrevdato(): string + { + return $this->Brevdato; + } + /** + * Set Brevdato value + * @param string $brevdato + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType + */ + public function setBrevdato(string $brevdato): self + { + // validation for constraint: string + if (!is_null($brevdato) && !is_string($brevdato)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($brevdato, true), gettype($brevdato)), __LINE__); + } + $this->Brevdato = $brevdato; + + return $this; + } + /** + * Get Virkning value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + */ + public function getVirkning(): \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + { + return $this->Virkning; + } + /** + * Set Virkning value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType $virkning + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType + */ + public function setVirkning(\ItkDev\Serviceplatformen\SF2900\StructType\VirkningType $virkning): self + { + $this->Virkning = $virkning; + + return $this; + } + /** + * Get Fristdato value + * @return string|null + */ + public function getFristdato(): ?string + { + return $this->Fristdato; + } + /** + * Set Fristdato value + * @param string $fristdato + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType + */ + public function setFristdato(?string $fristdato = null): self + { + // validation for constraint: string + if (!is_null($fristdato) && !is_string($fristdato)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($fristdato, true), gettype($fristdato)), __LINE__); + } + $this->Fristdato = $fristdato; + + return $this; + } + /** + * Get VersionIdentifikator value + * @return int|null + */ + public function getVersionIdentifikator(): ?int + { + return $this->VersionIdentifikator; + } + /** + * Set VersionIdentifikator value + * @param int $versionIdentifikator + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType + */ + public function setVersionIdentifikator(?int $versionIdentifikator = null): self + { + // validation for constraint: int + if (!is_null($versionIdentifikator) && !(is_int($versionIdentifikator) || ctype_digit($versionIdentifikator))) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide an integer value, %s given', var_export($versionIdentifikator, true), gettype($versionIdentifikator)), __LINE__); + } + $this->VersionIdentifikator = $versionIdentifikator; + + return $this; + } + /** + * Get UnderversionIdentificator value + * @return int|null + */ + public function getUnderversionIdentificator(): ?int + { + return $this->UnderversionIdentificator; + } + /** + * Set UnderversionIdentificator value + * @param int $underversionIdentificator + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType + */ + public function setUnderversionIdentificator(?int $underversionIdentificator = null): self + { + // validation for constraint: int + if (!is_null($underversionIdentificator) && !(is_int($underversionIdentificator) || ctype_digit($underversionIdentificator))) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide an integer value, %s given', var_export($underversionIdentificator, true), gettype($underversionIdentificator)), __LINE__); + } + $this->UnderversionIdentificator = $underversionIdentificator; + + return $this; + } + /** + * Get KassationskodeTekst value + * @return string|null + */ + public function getKassationskodeTekst(): ?string + { + return $this->KassationskodeTekst; + } + /** + * Set KassationskodeTekst value + * @param string $kassationskodeTekst + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType + */ + public function setKassationskodeTekst(?string $kassationskodeTekst = null): self + { + // validation for constraint: string + if (!is_null($kassationskodeTekst) && !is_string($kassationskodeTekst)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($kassationskodeTekst, true), gettype($kassationskodeTekst)), __LINE__); + } + $this->KassationskodeTekst = $kassationskodeTekst; + + return $this; + } + /** + * Get OffentlighedUndtaget value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\OffentlighedUndtagetType|null + */ + public function getOffentlighedUndtaget(): ?\ItkDev\Serviceplatformen\SF2900\StructType\OffentlighedUndtagetType + { + return $this->OffentlighedUndtaget; + } + /** + * Set OffentlighedUndtaget value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\OffentlighedUndtagetType $offentlighedUndtaget + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterType + */ + public function setOffentlighedUndtaget(?\ItkDev\Serviceplatformen\SF2900\StructType\OffentlighedUndtagetType $offentlighedUndtaget = null): self + { + $this->OffentlighedUndtaget = $offentlighedUndtaget; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/AuthorityContextType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/AuthorityContextType.php new file mode 100644 index 00000000..32f2a008 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/AuthorityContextType.php @@ -0,0 +1,64 @@ +setMunicipalityCVR($municipalityCVR); + } + /** + * Get MunicipalityCVR value + * @return string + */ + public function getMunicipalityCVR(): string + { + return $this->MunicipalityCVR; + } + /** + * Set MunicipalityCVR value + * @param string $municipalityCVR + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType + */ + public function setMunicipalityCVR(string $municipalityCVR): self + { + // validation for constraint: string + if (!is_null($municipalityCVR) && !is_string($municipalityCVR)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($municipalityCVR, true), gettype($municipalityCVR)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]) + if (!is_null($municipalityCVR) && !preg_match('/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', (string) $municipalityCVR)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', var_export($municipalityCVR, true)), __LINE__); + } + $this->MunicipalityCVR = $municipalityCVR; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/CallContextType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/CallContextType.php new file mode 100644 index 00000000..75d55d5b --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/CallContextType.php @@ -0,0 +1,147 @@ +setOnBehalfOfUser($onBehalfOfUser) + ->setCallersServiceCallIdentifier($callersServiceCallIdentifier) + ->setAccountingInfo($accountingInfo); + } + /** + * Get OnBehalfOfUser value + * @return string|null + */ + public function getOnBehalfOfUser(): ?string + { + return $this->OnBehalfOfUser; + } + /** + * Set OnBehalfOfUser value + * @param string $onBehalfOfUser + * @return \ItkDev\Serviceplatformen\SF2900\StructType\CallContextType + */ + public function setOnBehalfOfUser(?string $onBehalfOfUser = null): self + { + // validation for constraint: string + if (!is_null($onBehalfOfUser) && !is_string($onBehalfOfUser)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($onBehalfOfUser, true), gettype($onBehalfOfUser)), __LINE__); + } + // validation for constraint: maxLength(255) + if (!is_null($onBehalfOfUser) && mb_strlen((string) $onBehalfOfUser) > 255) { + throw new InvalidArgumentException(sprintf('Invalid length of %s, the number of characters/octets contained by the literal must be less than or equal to 255', mb_strlen((string) $onBehalfOfUser)), __LINE__); + } + $this->OnBehalfOfUser = $onBehalfOfUser; + + return $this; + } + /** + * Get CallersServiceCallIdentifier value + * @return string|null + */ + public function getCallersServiceCallIdentifier(): ?string + { + return $this->CallersServiceCallIdentifier; + } + /** + * Set CallersServiceCallIdentifier value + * @param string $callersServiceCallIdentifier + * @return \ItkDev\Serviceplatformen\SF2900\StructType\CallContextType + */ + public function setCallersServiceCallIdentifier(?string $callersServiceCallIdentifier = null): self + { + // validation for constraint: string + if (!is_null($callersServiceCallIdentifier) && !is_string($callersServiceCallIdentifier)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($callersServiceCallIdentifier, true), gettype($callersServiceCallIdentifier)), __LINE__); + } + // validation for constraint: maxLength(255) + if (!is_null($callersServiceCallIdentifier) && mb_strlen((string) $callersServiceCallIdentifier) > 255) { + throw new InvalidArgumentException(sprintf('Invalid length of %s, the number of characters/octets contained by the literal must be less than or equal to 255', mb_strlen((string) $callersServiceCallIdentifier)), __LINE__); + } + $this->CallersServiceCallIdentifier = $callersServiceCallIdentifier; + + return $this; + } + /** + * Get AccountingInfo value + * @return string|null + */ + public function getAccountingInfo(): ?string + { + return $this->AccountingInfo; + } + /** + * Set AccountingInfo value + * @param string $accountingInfo + * @return \ItkDev\Serviceplatformen\SF2900\StructType\CallContextType + */ + public function setAccountingInfo(?string $accountingInfo = null): self + { + // validation for constraint: string + if (!is_null($accountingInfo) && !is_string($accountingInfo)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($accountingInfo, true), gettype($accountingInfo)), __LINE__); + } + // validation for constraint: maxLength(255) + if (!is_null($accountingInfo) && mb_strlen((string) $accountingInfo) > 255) { + throw new InvalidArgumentException(sprintf('Invalid length of %s, the number of characters/octets contained by the literal must be less than or equal to 255', mb_strlen((string) $accountingInfo)), __LINE__); + } + $this->AccountingInfo = $accountingInfo; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DelAttributterType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DelAttributterType.php new file mode 100644 index 00000000..159914c9 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DelAttributterType.php @@ -0,0 +1,262 @@ +setDelTekst($delTekst) + ->setIndeks($indeks) + ->setIndhold($indhold) + ->setFilstoerrelse($filstoerrelse) + ->setMimeType($mimeType) + ->setScannerID($scannerID) + ->setLocation($location); + } + /** + * Get DelTekst value + * @return string + */ + public function getDelTekst(): string + { + return $this->DelTekst; + } + /** + * Set DelTekst value + * @param string $delTekst + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DelAttributterType + */ + public function setDelTekst(string $delTekst): self + { + // validation for constraint: string + if (!is_null($delTekst) && !is_string($delTekst)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($delTekst, true), gettype($delTekst)), __LINE__); + } + $this->DelTekst = $delTekst; + + return $this; + } + /** + * Get Indeks value + * @return int|null + */ + public function getIndeks(): ?int + { + return $this->Indeks; + } + /** + * Set Indeks value + * @param int $indeks + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DelAttributterType + */ + public function setIndeks(?int $indeks = null): self + { + // validation for constraint: int + if (!is_null($indeks) && !(is_int($indeks) || ctype_digit($indeks))) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide an integer value, %s given', var_export($indeks, true), gettype($indeks)), __LINE__); + } + $this->Indeks = $indeks; + + return $this; + } + /** + * Get Indhold value + * @return string|null + */ + public function getIndhold(): ?string + { + return $this->Indhold; + } + /** + * Set Indhold value + * @param string $indhold + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DelAttributterType + */ + public function setIndhold(?string $indhold = null): self + { + // validation for constraint: string + if (!is_null($indhold) && !is_string($indhold)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($indhold, true), gettype($indhold)), __LINE__); + } + $this->Indhold = $indhold; + + return $this; + } + /** + * Get Filstoerrelse value + * @return int|null + */ + public function getFilstoerrelse(): ?int + { + return $this->Filstoerrelse; + } + /** + * Set Filstoerrelse value + * @param int $filstoerrelse + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DelAttributterType + */ + public function setFilstoerrelse(?int $filstoerrelse = null): self + { + // validation for constraint: int + if (!is_null($filstoerrelse) && !(is_int($filstoerrelse) || ctype_digit($filstoerrelse))) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide an integer value, %s given', var_export($filstoerrelse, true), gettype($filstoerrelse)), __LINE__); + } + $this->Filstoerrelse = $filstoerrelse; + + return $this; + } + /** + * Get MimeType value + * @return string|null + */ + public function getMimeType(): ?string + { + return $this->MimeType; + } + /** + * Set MimeType value + * @param string $mimeType + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DelAttributterType + */ + public function setMimeType(?string $mimeType = null): self + { + // validation for constraint: string + if (!is_null($mimeType) && !is_string($mimeType)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($mimeType, true), gettype($mimeType)), __LINE__); + } + $this->MimeType = $mimeType; + + return $this; + } + /** + * Get ScannerID value + * @return string|null + */ + public function getScannerID(): ?string + { + return $this->ScannerID; + } + /** + * Set ScannerID value + * @param string $scannerID + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DelAttributterType + */ + public function setScannerID(?string $scannerID = null): self + { + // validation for constraint: string + if (!is_null($scannerID) && !is_string($scannerID)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($scannerID, true), gettype($scannerID)), __LINE__); + } + $this->ScannerID = $scannerID; + + return $this; + } + /** + * Get Location value + * @return string|null + */ + public function getLocation(): ?string + { + return $this->Location; + } + /** + * Set Location value + * @param string $location + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DelAttributterType + */ + public function setLocation(?string $location = null): self + { + // validation for constraint: string + if (!is_null($location) && !is_string($location)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($location, true), gettype($location)), __LINE__); + } + $this->Location = $location; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionContextType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionContextType.php new file mode 100644 index 00000000..915260b6 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionContextType.php @@ -0,0 +1,282 @@ +setAnvenderTransaktionsID($anvenderTransaktionsID) + ->setAfsendendeMyndighed($afsendendeMyndighed) + ->setRoutingMyndighed($routingMyndighed) + ->setRoutingValg($routingValg) + ->setDistributionTransktionsID($distributionTransktionsID) + ->setDigitalPostMeddelelsesID($digitalPostMeddelelsesID) + ->setDokumentFilNavn($dokumentFilNavn); + } + /** + * Get AnvenderTransaktionsID value + * @return string + */ + public function getAnvenderTransaktionsID(): string + { + return $this->AnvenderTransaktionsID; + } + /** + * Set AnvenderTransaktionsID value + * @param string $anvenderTransaktionsID + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + */ + public function setAnvenderTransaktionsID(string $anvenderTransaktionsID): self + { + // validation for constraint: string + if (!is_null($anvenderTransaktionsID) && !is_string($anvenderTransaktionsID)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($anvenderTransaktionsID, true), gettype($anvenderTransaktionsID)), __LINE__); + } + // validation for constraint: pattern([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}) + if (!is_null($anvenderTransaktionsID) && !preg_match('/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', (string) $anvenderTransaktionsID)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', var_export($anvenderTransaktionsID, true)), __LINE__); + } + $this->AnvenderTransaktionsID = $anvenderTransaktionsID; + + return $this; + } + /** + * Get AfsendendeMyndighed value + * @return string + */ + public function getAfsendendeMyndighed(): string + { + return $this->AfsendendeMyndighed; + } + /** + * Set AfsendendeMyndighed value + * @param string $afsendendeMyndighed + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + */ + public function setAfsendendeMyndighed(string $afsendendeMyndighed): self + { + // validation for constraint: string + if (!is_null($afsendendeMyndighed) && !is_string($afsendendeMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($afsendendeMyndighed, true), gettype($afsendendeMyndighed)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]) + if (!is_null($afsendendeMyndighed) && !preg_match('/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', (string) $afsendendeMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', var_export($afsendendeMyndighed, true)), __LINE__); + } + $this->AfsendendeMyndighed = $afsendendeMyndighed; + + return $this; + } + /** + * Get RoutingMyndighed value + * @return string + */ + public function getRoutingMyndighed(): string + { + return $this->RoutingMyndighed; + } + /** + * Set RoutingMyndighed value + * @param string $routingMyndighed + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + */ + public function setRoutingMyndighed(string $routingMyndighed): self + { + // validation for constraint: string + if (!is_null($routingMyndighed) && !is_string($routingMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($routingMyndighed, true), gettype($routingMyndighed)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]) + if (!is_null($routingMyndighed) && !preg_match('/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', (string) $routingMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', var_export($routingMyndighed, true)), __LINE__); + } + $this->RoutingMyndighed = $routingMyndighed; + + return $this; + } + /** + * Get RoutingValg value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingValg + */ + public function getRoutingValg(): \ItkDev\Serviceplatformen\SF2900\StructType\RoutingValg + { + return $this->RoutingValg; + } + /** + * Set RoutingValg value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\RoutingValg $routingValg + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + */ + public function setRoutingValg(\ItkDev\Serviceplatformen\SF2900\StructType\RoutingValg $routingValg): self + { + $this->RoutingValg = $routingValg; + + return $this; + } + /** + * Get DistributionTransktionsID value + * @return string|null + */ + public function getDistributionTransktionsID(): ?string + { + return $this->DistributionTransktionsID; + } + /** + * Set DistributionTransktionsID value + * @param string $distributionTransktionsID + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + */ + public function setDistributionTransktionsID(?string $distributionTransktionsID = null): self + { + // validation for constraint: string + if (!is_null($distributionTransktionsID) && !is_string($distributionTransktionsID)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($distributionTransktionsID, true), gettype($distributionTransktionsID)), __LINE__); + } + // validation for constraint: pattern([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}) + if (!is_null($distributionTransktionsID) && !preg_match('/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', (string) $distributionTransktionsID)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', var_export($distributionTransktionsID, true)), __LINE__); + } + $this->DistributionTransktionsID = $distributionTransktionsID; + + return $this; + } + /** + * Get DigitalPostMeddelelsesID value + * @return string|null + */ + public function getDigitalPostMeddelelsesID(): ?string + { + return $this->DigitalPostMeddelelsesID; + } + /** + * Set DigitalPostMeddelelsesID value + * @param string $digitalPostMeddelelsesID + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + */ + public function setDigitalPostMeddelelsesID(?string $digitalPostMeddelelsesID = null): self + { + // validation for constraint: string + if (!is_null($digitalPostMeddelelsesID) && !is_string($digitalPostMeddelelsesID)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($digitalPostMeddelelsesID, true), gettype($digitalPostMeddelelsesID)), __LINE__); + } + $this->DigitalPostMeddelelsesID = $digitalPostMeddelelsesID; + + return $this; + } + /** + * Get DokumentFilNavn value + * @return string|null + */ + public function getDokumentFilNavn(): ?string + { + return $this->DokumentFilNavn; + } + /** + * Set DokumentFilNavn value + * @param string $dokumentFilNavn + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + */ + public function setDokumentFilNavn(?string $dokumentFilNavn = null): self + { + // validation for constraint: string + if (!is_null($dokumentFilNavn) && !is_string($dokumentFilNavn)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($dokumentFilNavn, true), gettype($dokumentFilNavn)), __LINE__); + } + $this->DokumentFilNavn = $dokumentFilNavn; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionDokumentType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionDokumentType.php new file mode 100644 index 00000000..0e5744e4 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionDokumentType.php @@ -0,0 +1,214 @@ +setID($iD) + ->setKLEEmneForslag($kLEEmneForslag) + ->setRegistrering($registrering) + ->setHandlingFacetForslag($handlingFacetForslag) + ->setSagForslag($sagForslag); + } + /** + * Get ID value + * @return string + */ + public function getID(): string + { + return $this->ID; + } + /** + * Set ID value + * @param string $iD + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionDokumentType + */ + public function setID(string $iD): self + { + // validation for constraint: string + if (!is_null($iD) && !is_string($iD)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($iD, true), gettype($iD)), __LINE__); + } + // validation for constraint: pattern([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}) + if (!is_null($iD) && !preg_match('/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', (string) $iD)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', var_export($iD, true)), __LINE__); + } + $this->ID = $iD; + + return $this; + } + /** + * Get KLEEmneForslag value + * @return string + */ + public function getKLEEmneForslag(): string + { + return $this->KLEEmneForslag; + } + /** + * Set KLEEmneForslag value + * @param string $kLEEmneForslag + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionDokumentType + */ + public function setKLEEmneForslag(string $kLEEmneForslag): self + { + // validation for constraint: string + if (!is_null($kLEEmneForslag) && !is_string($kLEEmneForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($kLEEmneForslag, true), gettype($kLEEmneForslag)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][.][0-9][0-9][.][0-9][0-9]) + if (!is_null($kLEEmneForslag) && !preg_match('/[0-9][0-9][.][0-9][0-9][.][0-9][0-9]/', (string) $kLEEmneForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][.][0-9][0-9][.][0-9][0-9]/', var_export($kLEEmneForslag, true)), __LINE__); + } + $this->KLEEmneForslag = $kLEEmneForslag; + + return $this; + } + /** + * Get Registrering value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentRegistreringType + */ + public function getRegistrering(): \ItkDev\Serviceplatformen\SF2900\StructType\DokumentRegistreringType + { + return $this->Registrering; + } + /** + * Set Registrering value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\DokumentRegistreringType $registrering + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionDokumentType + */ + public function setRegistrering(\ItkDev\Serviceplatformen\SF2900\StructType\DokumentRegistreringType $registrering): self + { + $this->Registrering = $registrering; + + return $this; + } + /** + * Get HandlingFacetForslag value + * @return string|null + */ + public function getHandlingFacetForslag(): ?string + { + return $this->HandlingFacetForslag; + } + /** + * Set HandlingFacetForslag value + * @param string $handlingFacetForslag + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionDokumentType + */ + public function setHandlingFacetForslag(?string $handlingFacetForslag = null): self + { + // validation for constraint: string + if (!is_null($handlingFacetForslag) && !is_string($handlingFacetForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($handlingFacetForslag, true), gettype($handlingFacetForslag)), __LINE__); + } + // validation for constraint: pattern([A-Z,Æ,Ø,Å][0-9][0-9]) + if (!is_null($handlingFacetForslag) && !preg_match('/[A-Z,Æ,Ø,Å][0-9][0-9]/', (string) $handlingFacetForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[A-Z,Æ,Ø,Å][0-9][0-9]/', var_export($handlingFacetForslag, true)), __LINE__); + } + $this->HandlingFacetForslag = $handlingFacetForslag; + + return $this; + } + /** + * Get SagForslag value + * @return string|null + */ + public function getSagForslag(): ?string + { + return $this->SagForslag; + } + /** + * Set SagForslag value + * @param string $sagForslag + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionDokumentType + */ + public function setSagForslag(?string $sagForslag = null): self + { + // validation for constraint: string + if (!is_null($sagForslag) && !is_string($sagForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($sagForslag, true), gettype($sagForslag)), __LINE__); + } + // validation for constraint: pattern([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}) + if (!is_null($sagForslag) && !preg_match('/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', (string) $sagForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', var_export($sagForslag, true)), __LINE__); + } + $this->SagForslag = $sagForslag; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionFormularType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionFormularType.php new file mode 100644 index 00000000..312dd2e5 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionFormularType.php @@ -0,0 +1,174 @@ +setID($iD) + ->setKLEEmneForslag($kLEEmneForslag) + ->setMeddelelse($meddelelse) + ->setHandlingFacetForslag($handlingFacetForslag); + } + /** + * Get ID value + * @return string + */ + public function getID(): string + { + return $this->ID; + } + /** + * Set ID value + * @param string $iD + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionFormularType + */ + public function setID(string $iD): self + { + // validation for constraint: string + if (!is_null($iD) && !is_string($iD)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($iD, true), gettype($iD)), __LINE__); + } + // validation for constraint: pattern([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}) + if (!is_null($iD) && !preg_match('/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', (string) $iD)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', var_export($iD, true)), __LINE__); + } + $this->ID = $iD; + + return $this; + } + /** + * Get KLEEmneForslag value + * @return string + */ + public function getKLEEmneForslag(): string + { + return $this->KLEEmneForslag; + } + /** + * Set KLEEmneForslag value + * @param string $kLEEmneForslag + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionFormularType + */ + public function setKLEEmneForslag(string $kLEEmneForslag): self + { + // validation for constraint: string + if (!is_null($kLEEmneForslag) && !is_string($kLEEmneForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($kLEEmneForslag, true), gettype($kLEEmneForslag)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][.][0-9][0-9][.][0-9][0-9]) + if (!is_null($kLEEmneForslag) && !preg_match('/[0-9][0-9][.][0-9][0-9][.][0-9][0-9]/', (string) $kLEEmneForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][.][0-9][0-9][.][0-9][0-9]/', var_export($kLEEmneForslag, true)), __LINE__); + } + $this->KLEEmneForslag = $kLEEmneForslag; + + return $this; + } + /** + * Get Meddelelse value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\MeddelelseType + */ + public function getMeddelelse(): \ItkDev\Serviceplatformen\SF2900\StructType\MeddelelseType + { + return $this->Meddelelse; + } + /** + * Set Meddelelse value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\MeddelelseType $meddelelse + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionFormularType + */ + public function setMeddelelse(\ItkDev\Serviceplatformen\SF2900\StructType\MeddelelseType $meddelelse): self + { + $this->Meddelelse = $meddelelse; + + return $this; + } + /** + * Get HandlingFacetForslag value + * @return string|null + */ + public function getHandlingFacetForslag(): ?string + { + return $this->HandlingFacetForslag; + } + /** + * Set HandlingFacetForslag value + * @param string $handlingFacetForslag + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionFormularType + */ + public function setHandlingFacetForslag(?string $handlingFacetForslag = null): self + { + // validation for constraint: string + if (!is_null($handlingFacetForslag) && !is_string($handlingFacetForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($handlingFacetForslag, true), gettype($handlingFacetForslag)), __LINE__); + } + // validation for constraint: pattern([A-Z,Æ,Ø,Å][0-9][0-9]) + if (!is_null($handlingFacetForslag) && !preg_match('/[A-Z,Æ,Ø,Å][0-9][0-9]/', (string) $handlingFacetForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[A-Z,Æ,Ø,Å][0-9][0-9]/', var_export($handlingFacetForslag, true)), __LINE__); + } + $this->HandlingFacetForslag = $handlingFacetForslag; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionJournalPostType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionJournalPostType.php new file mode 100644 index 00000000..8ea94eef --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionJournalPostType.php @@ -0,0 +1,244 @@ +setID($iD) + ->setKLEEmneForslag($kLEEmneForslag) + ->setRegistrering($registrering) + ->setHandlingFacetForslag($handlingFacetForslag) + ->setSagForslag($sagForslag) + ->setPartAngivelse($partAngivelse); + } + /** + * Get ID value + * @return string + */ + public function getID(): string + { + return $this->ID; + } + /** + * Set ID value + * @param string $iD + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionJournalPostType + */ + public function setID(string $iD): self + { + // validation for constraint: string + if (!is_null($iD) && !is_string($iD)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($iD, true), gettype($iD)), __LINE__); + } + // validation for constraint: pattern([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}) + if (!is_null($iD) && !preg_match('/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', (string) $iD)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', var_export($iD, true)), __LINE__); + } + $this->ID = $iD; + + return $this; + } + /** + * Get KLEEmneForslag value + * @return string + */ + public function getKLEEmneForslag(): string + { + return $this->KLEEmneForslag; + } + /** + * Set KLEEmneForslag value + * @param string $kLEEmneForslag + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionJournalPostType + */ + public function setKLEEmneForslag(string $kLEEmneForslag): self + { + // validation for constraint: string + if (!is_null($kLEEmneForslag) && !is_string($kLEEmneForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($kLEEmneForslag, true), gettype($kLEEmneForslag)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][.][0-9][0-9][.][0-9][0-9]) + if (!is_null($kLEEmneForslag) && !preg_match('/[0-9][0-9][.][0-9][0-9][.][0-9][0-9]/', (string) $kLEEmneForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][.][0-9][0-9][.][0-9][0-9]/', var_export($kLEEmneForslag, true)), __LINE__); + } + $this->KLEEmneForslag = $kLEEmneForslag; + + return $this; + } + /** + * Get Registrering value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRegistreringType + */ + public function getRegistrering(): \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRegistreringType + { + return $this->Registrering; + } + /** + * Set Registrering value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRegistreringType $registrering + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionJournalPostType + */ + public function setRegistrering(\ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRegistreringType $registrering): self + { + $this->Registrering = $registrering; + + return $this; + } + /** + * Get HandlingFacetForslag value + * @return string|null + */ + public function getHandlingFacetForslag(): ?string + { + return $this->HandlingFacetForslag; + } + /** + * Set HandlingFacetForslag value + * @param string $handlingFacetForslag + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionJournalPostType + */ + public function setHandlingFacetForslag(?string $handlingFacetForslag = null): self + { + // validation for constraint: string + if (!is_null($handlingFacetForslag) && !is_string($handlingFacetForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($handlingFacetForslag, true), gettype($handlingFacetForslag)), __LINE__); + } + // validation for constraint: pattern([A-Z,Æ,Ø,Å][0-9][0-9]) + if (!is_null($handlingFacetForslag) && !preg_match('/[A-Z,Æ,Ø,Å][0-9][0-9]/', (string) $handlingFacetForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[A-Z,Æ,Ø,Å][0-9][0-9]/', var_export($handlingFacetForslag, true)), __LINE__); + } + $this->HandlingFacetForslag = $handlingFacetForslag; + + return $this; + } + /** + * Get SagForslag value + * @return string|null + */ + public function getSagForslag(): ?string + { + return $this->SagForslag; + } + /** + * Set SagForslag value + * @param string $sagForslag + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionJournalPostType + */ + public function setSagForslag(?string $sagForslag = null): self + { + // validation for constraint: string + if (!is_null($sagForslag) && !is_string($sagForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($sagForslag, true), gettype($sagForslag)), __LINE__); + } + // validation for constraint: pattern([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}) + if (!is_null($sagForslag) && !preg_match('/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', (string) $sagForslag)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', var_export($sagForslag, true)), __LINE__); + } + $this->SagForslag = $sagForslag; + + return $this; + } + /** + * Get PartAngivelse value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\PartType|null + */ + public function getPartAngivelse(): ?\ItkDev\Serviceplatformen\SF2900\StructType\PartType + { + return $this->PartAngivelse; + } + /** + * Set PartAngivelse value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\PartType $partAngivelse + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionJournalPostType + */ + public function setPartAngivelse(?\ItkDev\Serviceplatformen\SF2900\StructType\PartType $partAngivelse = null): self + { + $this->PartAngivelse = $partAngivelse; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionObjectType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionObjectType.php new file mode 100644 index 00000000..699a6a19 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DistributionObjectType.php @@ -0,0 +1,91 @@ +setObjektType($objektType) + ->setObjektIndhold($objektIndhold); + } + /** + * Get ObjektType value + * @return string + */ + public function getObjektType(): string + { + return $this->ObjektType; + } + /** + * Set ObjektType value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\ObjektTypeType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\ObjektTypeType::getValidValues() + * @throws InvalidArgumentException + * @param string $objektType + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionObjectType + */ + public function setObjektType(string $objektType): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\ObjektTypeType::valueIsValid($objektType)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\ObjektTypeType', is_array($objektType) ? implode(', ', $objektType) : var_export($objektType, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\ObjektTypeType::getValidValues())), __LINE__); + } + $this->ObjektType = $objektType; + + return $this; + } + /** + * Get ObjektIndhold value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ObjektIndholdType + */ + public function getObjektIndhold(): \ItkDev\Serviceplatformen\SF2900\StructType\ObjektIndholdType + { + return $this->ObjektIndhold; + } + /** + * Set ObjektIndhold value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\ObjektIndholdType $objektIndhold + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionObjectType + */ + public function setObjektIndhold(\ItkDev\Serviceplatformen\SF2900\StructType\ObjektIndholdType $objektIndhold): self + { + $this->ObjektIndhold = $objektIndhold; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DokumentPartListeType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DokumentPartListeType.php new file mode 100644 index 00000000..9358e84a --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DokumentPartListeType.php @@ -0,0 +1,102 @@ +setDokumentPart($dokumentPart); + } + /** + * Get DokumentPart value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartType[] + */ + public function getDokumentPart(): array + { + return $this->DokumentPart; + } + /** + * This method is responsible for validating the value(s) passed to the setDokumentPart method + * This method is willingly generated in order to preserve the one-line inline validation within the setDokumentPart method + * This has to validate that each item contained by the array match the itemType constraint + * @param array $values + * @return string A non-empty message if the values does not match the validation rules + */ + public static function validateDokumentPartForArrayConstraintFromSetDokumentPart(?array $values = []): string + { + if (!is_array($values)) { + return ''; + } + $message = ''; + $invalidValues = []; + foreach ($values as $dokumentPartListeTypeDokumentPartItem) { + // validation for constraint: itemType + if (!$dokumentPartListeTypeDokumentPartItem instanceof \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartType) { + $invalidValues[] = is_object($dokumentPartListeTypeDokumentPartItem) ? get_class($dokumentPartListeTypeDokumentPartItem) : sprintf('%s(%s)', gettype($dokumentPartListeTypeDokumentPartItem), var_export($dokumentPartListeTypeDokumentPartItem, true)); + } + } + if (!empty($invalidValues)) { + $message = sprintf('The DokumentPart property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartType, %s given', is_object($invalidValues) ? get_class($invalidValues) : (is_array($invalidValues) ? implode(', ', $invalidValues) : gettype($invalidValues))); + } + unset($invalidValues); + + return $message; + } + /** + * Set DokumentPart value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartType[] $dokumentPart + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartListeType + */ + public function setDokumentPart(array $dokumentPart): self + { + // validation for constraint: array + if ('' !== ($dokumentPartArrayErrorMessage = self::validateDokumentPartForArrayConstraintFromSetDokumentPart($dokumentPart))) { + throw new InvalidArgumentException($dokumentPartArrayErrorMessage, __LINE__); + } + $this->DokumentPart = $dokumentPart; + + return $this; + } + /** + * Add item to DokumentPart value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartType $item + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartListeType + */ + public function addToDokumentPart(\ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartType $item): self + { + // validation for constraint: itemType + if (!$item instanceof \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartType) { + throw new InvalidArgumentException(sprintf('The DokumentPart property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartType, %s given', is_object($item) ? get_class($item) : (is_array($item) ? implode(', ', $item) : gettype($item))), __LINE__); + } + $this->DokumentPart[] = $item; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DokumentPartType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DokumentPartType.php new file mode 100644 index 00000000..c6dc4afd --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DokumentPartType.php @@ -0,0 +1,155 @@ +setVirkning($virkning) + ->setRolle($rolle) + ->setIndeks($indeks) + ->setPart($part); + } + /** + * Get Virkning value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + */ + public function getVirkning(): \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + { + return $this->Virkning; + } + /** + * Set Virkning value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType $virkning + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartType + */ + public function setVirkning(\ItkDev\Serviceplatformen\SF2900\StructType\VirkningType $virkning): self + { + $this->Virkning = $virkning; + + return $this; + } + /** + * Get Rolle value + * @return string + */ + public function getRolle(): string + { + return $this->Rolle; + } + /** + * Set Rolle value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\DokumentPartRolleType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\DokumentPartRolleType::getValidValues() + * @throws InvalidArgumentException + * @param string $rolle + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartType + */ + public function setRolle(string $rolle): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\DokumentPartRolleType::valueIsValid($rolle)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\DokumentPartRolleType', is_array($rolle) ? implode(', ', $rolle) : var_export($rolle, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\DokumentPartRolleType::getValidValues())), __LINE__); + } + $this->Rolle = $rolle; + + return $this; + } + /** + * Get Indeks value + * @return int + */ + public function getIndeks(): int + { + return $this->Indeks; + } + /** + * Set Indeks value + * @param int $indeks + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartType + */ + public function setIndeks(int $indeks): self + { + // validation for constraint: int + if (!is_null($indeks) && !(is_int($indeks) || ctype_digit($indeks))) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide an integer value, %s given', var_export($indeks, true), gettype($indeks)), __LINE__); + } + $this->Indeks = $indeks; + + return $this; + } + /** + * Get Part value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\PartType + */ + public function getPart(): \ItkDev\Serviceplatformen\SF2900\StructType\PartType + { + return $this->Part; + } + /** + * Set Part value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\PartType $part + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartType + */ + public function setPart(\ItkDev\Serviceplatformen\SF2900\StructType\PartType $part): self + { + $this->Part = $part; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DokumentRegistreringType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DokumentRegistreringType.php new file mode 100644 index 00000000..db03bf1f --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/DokumentRegistreringType.php @@ -0,0 +1,327 @@ +setFraTidsPunkt($fraTidsPunkt) + ->setLivscyklusKode($livscyklusKode) + ->setRegistreringItSystem($registreringItSystem) + ->setRelationListe($relationListe) + ->setTilstandsListe($tilstandsListe) + ->setAttributListe($attributListe) + ->setImportTidspunkt($importTidspunkt) + ->setBrugerRef($brugerRef); + } + /** + * Get FraTidsPunkt value + * @return string + */ + public function getFraTidsPunkt(): string + { + return $this->FraTidsPunkt; + } + /** + * Set FraTidsPunkt value + * @param string $fraTidsPunkt + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentRegistreringType + */ + public function setFraTidsPunkt(string $fraTidsPunkt): self + { + // validation for constraint: string + if (!is_null($fraTidsPunkt) && !is_string($fraTidsPunkt)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($fraTidsPunkt, true), gettype($fraTidsPunkt)), __LINE__); + } + $this->FraTidsPunkt = $fraTidsPunkt; + + return $this; + } + /** + * Get LivscyklusKode value + * @return string + */ + public function getLivscyklusKode(): string + { + return $this->LivscyklusKode; + } + /** + * Set LivscyklusKode value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\LivscyklusKodeType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\LivscyklusKodeType::getValidValues() + * @throws InvalidArgumentException + * @param string $livscyklusKode + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentRegistreringType + */ + public function setLivscyklusKode(string $livscyklusKode): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\LivscyklusKodeType::valueIsValid($livscyklusKode)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\LivscyklusKodeType', is_array($livscyklusKode) ? implode(', ', $livscyklusKode) : var_export($livscyklusKode, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\LivscyklusKodeType::getValidValues())), __LINE__); + } + $this->LivscyklusKode = $livscyklusKode; + + return $this; + } + /** + * Get RegistreringItSystem value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN + */ + public function getRegistreringItSystem(): \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN + { + return $this->RegistreringItSystem; + } + /** + * Set RegistreringItSystem value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN $registreringItSystem + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentRegistreringType + */ + public function setRegistreringItSystem(\ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN $registreringItSystem): self + { + $this->RegistreringItSystem = $registreringItSystem; + + return $this; + } + /** + * Get RelationListe value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RelationsListe + */ + public function getRelationListe(): \ItkDev\Serviceplatformen\SF2900\StructType\RelationsListe + { + return $this->RelationListe; + } + /** + * Set RelationListe value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\RelationsListe $relationListe + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentRegistreringType + */ + public function setRelationListe(\ItkDev\Serviceplatformen\SF2900\StructType\RelationsListe $relationListe): self + { + $this->RelationListe = $relationListe; + + return $this; + } + /** + * Get TilstandsListe value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\TilstandListeType[] + */ + public function getTilstandsListe(): array + { + return $this->TilstandsListe; + } + /** + * This method is responsible for validating the value(s) passed to the setTilstandsListe method + * This method is willingly generated in order to preserve the one-line inline validation within the setTilstandsListe method + * This has to validate that each item contained by the array match the itemType constraint + * @param array $values + * @return string A non-empty message if the values does not match the validation rules + */ + public static function validateTilstandsListeForArrayConstraintFromSetTilstandsListe(?array $values = []): string + { + if (!is_array($values)) { + return ''; + } + $message = ''; + $invalidValues = []; + foreach ($values as $dokumentRegistreringTypeTilstandsListeItem) { + // validation for constraint: itemType + if (!$dokumentRegistreringTypeTilstandsListeItem instanceof \ItkDev\Serviceplatformen\SF2900\StructType\TilstandListeType) { + $invalidValues[] = is_object($dokumentRegistreringTypeTilstandsListeItem) ? get_class($dokumentRegistreringTypeTilstandsListeItem) : sprintf('%s(%s)', gettype($dokumentRegistreringTypeTilstandsListeItem), var_export($dokumentRegistreringTypeTilstandsListeItem, true)); + } + } + if (!empty($invalidValues)) { + $message = sprintf('The TilstandsListe property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\TilstandListeType, %s given', is_object($invalidValues) ? get_class($invalidValues) : (is_array($invalidValues) ? implode(', ', $invalidValues) : gettype($invalidValues))); + } + unset($invalidValues); + + return $message; + } + /** + * Set TilstandsListe value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\TilstandListeType[] $tilstandsListe + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentRegistreringType + */ + public function setTilstandsListe(array $tilstandsListe): self + { + // validation for constraint: array + if ('' !== ($tilstandsListeArrayErrorMessage = self::validateTilstandsListeForArrayConstraintFromSetTilstandsListe($tilstandsListe))) { + throw new InvalidArgumentException($tilstandsListeArrayErrorMessage, __LINE__); + } + $this->TilstandsListe = $tilstandsListe; + + return $this; + } + /** + * Add item to TilstandsListe value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\TilstandListeType $item + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentRegistreringType + */ + public function addToTilstandsListe(\ItkDev\Serviceplatformen\SF2900\StructType\TilstandListeType $item): self + { + // validation for constraint: itemType + if (!$item instanceof \ItkDev\Serviceplatformen\SF2900\StructType\TilstandListeType) { + throw new InvalidArgumentException(sprintf('The TilstandsListe property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\TilstandListeType, %s given', is_object($item) ? get_class($item) : (is_array($item) ? implode(', ', $item) : gettype($item))), __LINE__); + } + $this->TilstandsListe[] = $item; + + return $this; + } + /** + * Get AttributListe value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AttributterListeType + */ + public function getAttributListe(): \ItkDev\Serviceplatformen\SF2900\StructType\AttributterListeType + { + return $this->AttributListe; + } + /** + * Set AttributListe value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\AttributterListeType $attributListe + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentRegistreringType + */ + public function setAttributListe(\ItkDev\Serviceplatformen\SF2900\StructType\AttributterListeType $attributListe): self + { + $this->AttributListe = $attributListe; + + return $this; + } + /** + * Get ImportTidspunkt value + * @return string|null + */ + public function getImportTidspunkt(): ?string + { + return $this->ImportTidspunkt; + } + /** + * Set ImportTidspunkt value + * @param string $importTidspunkt + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentRegistreringType + */ + public function setImportTidspunkt(?string $importTidspunkt = null): self + { + // validation for constraint: string + if (!is_null($importTidspunkt) && !is_string($importTidspunkt)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($importTidspunkt, true), gettype($importTidspunkt)), __LINE__); + } + $this->ImportTidspunkt = $importTidspunkt; + + return $this; + } + /** + * Get BrugerRef value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN|null + */ + public function getBrugerRef(): ?\ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN + { + return $this->BrugerRef; + } + /** + * Set BrugerRef value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN $brugerRef + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentRegistreringType + */ + public function setBrugerRef(?\ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN $brugerRef = null): self + { + $this->BrugerRef = $brugerRef; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FejlListeType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FejlListeType.php new file mode 100644 index 00000000..9a4ae487 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FejlListeType.php @@ -0,0 +1,102 @@ +setFejl($fejl); + } + /** + * Get Fejl value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FejlType[] + */ + public function getFejl(): ?array + { + return $this->Fejl; + } + /** + * This method is responsible for validating the value(s) passed to the setFejl method + * This method is willingly generated in order to preserve the one-line inline validation within the setFejl method + * This has to validate that each item contained by the array match the itemType constraint + * @param array $values + * @return string A non-empty message if the values does not match the validation rules + */ + public static function validateFejlForArrayConstraintFromSetFejl(?array $values = []): string + { + if (!is_array($values)) { + return ''; + } + $message = ''; + $invalidValues = []; + foreach ($values as $fejlListeTypeFejlItem) { + // validation for constraint: itemType + if (!$fejlListeTypeFejlItem instanceof \ItkDev\Serviceplatformen\SF2900\StructType\FejlType) { + $invalidValues[] = is_object($fejlListeTypeFejlItem) ? get_class($fejlListeTypeFejlItem) : sprintf('%s(%s)', gettype($fejlListeTypeFejlItem), var_export($fejlListeTypeFejlItem, true)); + } + } + if (!empty($invalidValues)) { + $message = sprintf('The Fejl property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\FejlType, %s given', is_object($invalidValues) ? get_class($invalidValues) : (is_array($invalidValues) ? implode(', ', $invalidValues) : gettype($invalidValues))); + } + unset($invalidValues); + + return $message; + } + /** + * Set Fejl value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\FejlType[] $fejl + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FejlListeType + */ + public function setFejl(?array $fejl = null): self + { + // validation for constraint: array + if ('' !== ($fejlArrayErrorMessage = self::validateFejlForArrayConstraintFromSetFejl($fejl))) { + throw new InvalidArgumentException($fejlArrayErrorMessage, __LINE__); + } + $this->Fejl = $fejl; + + return $this; + } + /** + * Add item to Fejl value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\FejlType $item + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FejlListeType + */ + public function addToFejl(\ItkDev\Serviceplatformen\SF2900\StructType\FejlType $item): self + { + // validation for constraint: itemType + if (!$item instanceof \ItkDev\Serviceplatformen\SF2900\StructType\FejlType) { + throw new InvalidArgumentException(sprintf('The Fejl property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\FejlType, %s given', is_object($item) ? get_class($item) : (is_array($item) ? implode(', ', $item) : gettype($item))), __LINE__); + } + $this->Fejl[] = $item; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FejlType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FejlType.php new file mode 100644 index 00000000..aebba370 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FejlType.php @@ -0,0 +1,92 @@ +setFejlKode($fejlKode) + ->setFejlTekst($fejlTekst); + } + /** + * Get FejlKode value + * @return string + */ + public function getFejlKode(): string + { + return $this->FejlKode; + } + /** + * Set FejlKode value + * @param string $fejlKode + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FejlType + */ + public function setFejlKode(string $fejlKode): self + { + // validation for constraint: string + if (!is_null($fejlKode) && !is_string($fejlKode)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($fejlKode, true), gettype($fejlKode)), __LINE__); + } + $this->FejlKode = $fejlKode; + + return $this; + } + /** + * Get FejlTekst value + * @return string + */ + public function getFejlTekst(): string + { + return $this->FejlTekst; + } + /** + * Set FejlTekst value + * @param string $fejlTekst + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FejlType + */ + public function setFejlTekst(string $fejlTekst): self + { + // validation for constraint: string + if (!is_null($fejlTekst) && !is_string($fejlTekst)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($fejlTekst, true), gettype($fejlTekst)), __LINE__); + } + $this->FejlTekst = $fejlTekst; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingskvitteringModtagAnvenderRequestType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingskvitteringModtagAnvenderRequestType.php new file mode 100644 index 00000000..86cd8aa9 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingskvitteringModtagAnvenderRequestType.php @@ -0,0 +1,84 @@ +setForretningskvittering($forretningskvittering) + ->setDistributionContext($distributionContext); + } + /** + * Get Forretningskvittering value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType + */ + public function getForretningskvittering(): \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType + { + return $this->Forretningskvittering; + } + /** + * Set Forretningskvittering value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType $forretningskvittering + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingskvitteringModtagAnvenderRequestType + */ + public function setForretningskvittering(\ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType $forretningskvittering): self + { + $this->Forretningskvittering = $forretningskvittering; + + return $this; + } + /** + * Get DistributionContext value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + */ + public function getDistributionContext(): \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + { + return $this->DistributionContext; + } + /** + * Set DistributionContext value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType $distributionContext + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingskvitteringModtagAnvenderRequestType + */ + public function setDistributionContext(\ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType $distributionContext): self + { + $this->DistributionContext = $distributionContext; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingskvitteringModtagAnvenderResponseType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingskvitteringModtagAnvenderResponseType.php new file mode 100644 index 00000000..12bbc501 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingskvitteringModtagAnvenderResponseType.php @@ -0,0 +1,17 @@ +setForretningskvittering($forretningskvittering) + ->setDistributionContext($distributionContext) + ->setCallContext($callContext) + ->setAuthorityContext($authorityContext); + } + /** + * Get Forretningskvittering value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType + */ + public function getForretningskvittering(): \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType + { + return $this->Forretningskvittering; + } + /** + * Set Forretningskvittering value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType $forretningskvittering + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingskvitteringModtagRequestType + */ + public function setForretningskvittering(\ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType $forretningskvittering): self + { + $this->Forretningskvittering = $forretningskvittering; + + return $this; + } + /** + * Get DistributionContext value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + */ + public function getDistributionContext(): \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + { + return $this->DistributionContext; + } + /** + * Set DistributionContext value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType $distributionContext + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingskvitteringModtagRequestType + */ + public function setDistributionContext(\ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType $distributionContext): self + { + $this->DistributionContext = $distributionContext; + + return $this; + } + /** + * Get CallContext value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\CallContextType|null + */ + public function getCallContext(): ?\ItkDev\Serviceplatformen\SF2900\StructType\CallContextType + { + return $this->CallContext; + } + /** + * Set CallContext value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\CallContextType $callContext + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingskvitteringModtagRequestType + */ + public function setCallContext(?\ItkDev\Serviceplatformen\SF2900\StructType\CallContextType $callContext = null): self + { + $this->CallContext = $callContext; + + return $this; + } + /** + * Get AuthorityContext value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType|null + */ + public function getAuthorityContext(): ?\ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType + { + return $this->AuthorityContext; + } + /** + * Set AuthorityContext value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType $authorityContext + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingskvitteringModtagRequestType + */ + public function setAuthorityContext(?\ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType $authorityContext = null): self + { + $this->AuthorityContext = $authorityContext; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingskvitteringModtagResponseType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingskvitteringModtagResponseType.php new file mode 100644 index 00000000..e547b5a6 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingskvitteringModtagResponseType.php @@ -0,0 +1,17 @@ +setAfsendendeMyndighed($afsendendeMyndighed) + ->setRoutingMyndighed($routingMyndighed) + ->setRoutingKLEEmne($routingKLEEmne) + ->setRoutingHandlingFacet($routingHandlingFacet); + } + /** + * Get AfsendendeMyndighed value + * @return string + */ + public function getAfsendendeMyndighed(): string + { + return $this->AfsendendeMyndighed; + } + /** + * Set AfsendendeMyndighed value + * @param string $afsendendeMyndighed + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerListRequest + */ + public function setAfsendendeMyndighed(string $afsendendeMyndighed): self + { + // validation for constraint: string + if (!is_null($afsendendeMyndighed) && !is_string($afsendendeMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($afsendendeMyndighed, true), gettype($afsendendeMyndighed)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]) + if (!is_null($afsendendeMyndighed) && !preg_match('/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', (string) $afsendendeMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', var_export($afsendendeMyndighed, true)), __LINE__); + } + $this->AfsendendeMyndighed = $afsendendeMyndighed; + + return $this; + } + /** + * Get RoutingMyndighed value + * @return string + */ + public function getRoutingMyndighed(): string + { + return $this->RoutingMyndighed; + } + /** + * Set RoutingMyndighed value + * @param string $routingMyndighed + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerListRequest + */ + public function setRoutingMyndighed(string $routingMyndighed): self + { + // validation for constraint: string + if (!is_null($routingMyndighed) && !is_string($routingMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($routingMyndighed, true), gettype($routingMyndighed)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]) + if (!is_null($routingMyndighed) && !preg_match('/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', (string) $routingMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', var_export($routingMyndighed, true)), __LINE__); + } + $this->RoutingMyndighed = $routingMyndighed; + + return $this; + } + /** + * Get RoutingKLEEmne value + * @return string + */ + public function getRoutingKLEEmne(): string + { + return $this->RoutingKLEEmne; + } + /** + * Set RoutingKLEEmne value + * @param string $routingKLEEmne + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerListRequest + */ + public function setRoutingKLEEmne(string $routingKLEEmne): self + { + // validation for constraint: string + if (!is_null($routingKLEEmne) && !is_string($routingKLEEmne)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($routingKLEEmne, true), gettype($routingKLEEmne)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][.][0-9][0-9][.][0-9][0-9]) + if (!is_null($routingKLEEmne) && !preg_match('/[0-9][0-9][.][0-9][0-9][.][0-9][0-9]/', (string) $routingKLEEmne)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][.][0-9][0-9][.][0-9][0-9]/', var_export($routingKLEEmne, true)), __LINE__); + } + $this->RoutingKLEEmne = $routingKLEEmne; + + return $this; + } + /** + * Get RoutingHandlingFacet value + * @return string|null + */ + public function getRoutingHandlingFacet(): ?string + { + return $this->RoutingHandlingFacet; + } + /** + * Set RoutingHandlingFacet value + * @param string $routingHandlingFacet + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerListRequest + */ + public function setRoutingHandlingFacet(?string $routingHandlingFacet = null): self + { + // validation for constraint: string + if (!is_null($routingHandlingFacet) && !is_string($routingHandlingFacet)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($routingHandlingFacet, true), gettype($routingHandlingFacet)), __LINE__); + } + // validation for constraint: pattern([A-Z,Æ,Ø,Å][0-9][0-9]) + if (!is_null($routingHandlingFacet) && !preg_match('/[A-Z,Æ,Ø,Å][0-9][0-9]/', (string) $routingHandlingFacet)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[A-Z,Æ,Ø,Å][0-9][0-9]/', var_export($routingHandlingFacet, true)), __LINE__); + } + $this->RoutingHandlingFacet = $routingHandlingFacet; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsmodtagerListRequestType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsmodtagerListRequestType.php new file mode 100644 index 00000000..e42b0710 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsmodtagerListRequestType.php @@ -0,0 +1,116 @@ +setRouting($routing) + ->setCallContext($callContext) + ->setAuthorityContext($authorityContext); + } + /** + * Get Routing value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerListRequest + */ + public function getRouting(): \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerListRequest + { + return $this->Routing; + } + /** + * Set Routing value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerListRequest $routing + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerListRequestType + */ + public function setRouting(\ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerListRequest $routing): self + { + $this->Routing = $routing; + + return $this; + } + /** + * Get CallContext value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\CallContextType|null + */ + public function getCallContext(): ?\ItkDev\Serviceplatformen\SF2900\StructType\CallContextType + { + return $this->CallContext; + } + /** + * Set CallContext value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\CallContextType $callContext + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerListRequestType + */ + public function setCallContext(?\ItkDev\Serviceplatformen\SF2900\StructType\CallContextType $callContext = null): self + { + $this->CallContext = $callContext; + + return $this; + } + /** + * Get AuthorityContext value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType|null + */ + public function getAuthorityContext(): ?\ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType + { + return $this->AuthorityContext; + } + /** + * Set AuthorityContext value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType $authorityContext + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerListRequestType + */ + public function setAuthorityContext(?\ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType $authorityContext = null): self + { + $this->AuthorityContext = $authorityContext; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsmodtagerListResponseType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsmodtagerListResponseType.php new file mode 100644 index 00000000..20c35c2c --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsmodtagerListResponseType.php @@ -0,0 +1,54 @@ +setSystemer($systemer); + } + /** + * Get Systemer value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\TilgaengeligeModtagereType + */ + public function getSystemer(): \ItkDev\Serviceplatformen\SF2900\StructType\TilgaengeligeModtagereType + { + return $this->Systemer; + } + /** + * Set Systemer value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\TilgaengeligeModtagereType $systemer + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerListResponseType + */ + public function setSystemer(\ItkDev\Serviceplatformen\SF2900\StructType\TilgaengeligeModtagereType $systemer): self + { + $this->Systemer = $systemer; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsmodtagerValiderRequestType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsmodtagerValiderRequestType.php new file mode 100644 index 00000000..9d12ab45 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsmodtagerValiderRequestType.php @@ -0,0 +1,156 @@ +setAfsendendeMyndighed($afsendendeMyndighed) + ->setRoutingListe($routingListe) + ->setCallContext($callContext) + ->setAuthorityContext($authorityContext); + } + /** + * Get AfsendendeMyndighed value + * @return string + */ + public function getAfsendendeMyndighed(): string + { + return $this->AfsendendeMyndighed; + } + /** + * Set AfsendendeMyndighed value + * @param string $afsendendeMyndighed + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerValiderRequestType + */ + public function setAfsendendeMyndighed(string $afsendendeMyndighed): self + { + // validation for constraint: string + if (!is_null($afsendendeMyndighed) && !is_string($afsendendeMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($afsendendeMyndighed, true), gettype($afsendendeMyndighed)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]) + if (!is_null($afsendendeMyndighed) && !preg_match('/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', (string) $afsendendeMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', var_export($afsendendeMyndighed, true)), __LINE__); + } + $this->AfsendendeMyndighed = $afsendendeMyndighed; + + return $this; + } + /** + * Get RoutingListe value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingListeType + */ + public function getRoutingListe(): \ItkDev\Serviceplatformen\SF2900\StructType\RoutingListeType + { + return $this->RoutingListe; + } + /** + * Set RoutingListe value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\RoutingListeType $routingListe + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerValiderRequestType + */ + public function setRoutingListe(\ItkDev\Serviceplatformen\SF2900\StructType\RoutingListeType $routingListe): self + { + $this->RoutingListe = $routingListe; + + return $this; + } + /** + * Get CallContext value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\CallContextType|null + */ + public function getCallContext(): ?\ItkDev\Serviceplatformen\SF2900\StructType\CallContextType + { + return $this->CallContext; + } + /** + * Set CallContext value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\CallContextType $callContext + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerValiderRequestType + */ + public function setCallContext(?\ItkDev\Serviceplatformen\SF2900\StructType\CallContextType $callContext = null): self + { + $this->CallContext = $callContext; + + return $this; + } + /** + * Get AuthorityContext value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType|null + */ + public function getAuthorityContext(): ?\ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType + { + return $this->AuthorityContext; + } + /** + * Set AuthorityContext value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType $authorityContext + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerValiderRequestType + */ + public function setAuthorityContext(?\ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType $authorityContext = null): self + { + $this->AuthorityContext = $authorityContext; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsmodtagerValiderResponseType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsmodtagerValiderResponseType.php new file mode 100644 index 00000000..f4708df6 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsmodtagerValiderResponseType.php @@ -0,0 +1,54 @@ +setRoutingListe($routingListe); + } + /** + * Get RoutingListe value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResposneListeType + */ + public function getRoutingListe(): \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResposneListeType + { + return $this->RoutingListe; + } + /** + * Set RoutingListe value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResposneListeType $routingListe + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsmodtagerValiderResponseType + */ + public function setRoutingListe(\ItkDev\Serviceplatformen\SF2900\StructType\RoutingResposneListeType $routingListe): self + { + $this->RoutingListe = $routingListe; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsobjektAfsendRequestType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsobjektAfsendRequestType.php new file mode 100644 index 00000000..a7e19910 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsobjektAfsendRequestType.php @@ -0,0 +1,116 @@ +setAnmodning($anmodning) + ->setCallContext($callContext) + ->setAuthorityContext($authorityContext); + } + /** + * Get anmodning value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AnmodRequestType + */ + public function getAnmodning(): \ItkDev\Serviceplatformen\SF2900\StructType\AnmodRequestType + { + return $this->anmodning; + } + /** + * Set anmodning value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\AnmodRequestType $anmodning + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsobjektAfsendRequestType + */ + public function setAnmodning(\ItkDev\Serviceplatformen\SF2900\StructType\AnmodRequestType $anmodning): self + { + $this->anmodning = $anmodning; + + return $this; + } + /** + * Get CallContext value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\CallContextType|null + */ + public function getCallContext(): ?\ItkDev\Serviceplatformen\SF2900\StructType\CallContextType + { + return $this->CallContext; + } + /** + * Set CallContext value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\CallContextType $callContext + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsobjektAfsendRequestType + */ + public function setCallContext(?\ItkDev\Serviceplatformen\SF2900\StructType\CallContextType $callContext = null): self + { + $this->CallContext = $callContext; + + return $this; + } + /** + * Get AuthorityContext value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType|null + */ + public function getAuthorityContext(): ?\ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType + { + return $this->AuthorityContext; + } + /** + * Set AuthorityContext value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType $authorityContext + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsobjektAfsendRequestType + */ + public function setAuthorityContext(?\ItkDev\Serviceplatformen\SF2900\StructType\AuthorityContextType $authorityContext = null): self + { + $this->AuthorityContext = $authorityContext; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsobjektAfsendResponseType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsobjektAfsendResponseType.php new file mode 100644 index 00000000..676eb9ae --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsobjektAfsendResponseType.php @@ -0,0 +1,84 @@ +setForretningsKvittering($forretningsKvittering) + ->setDistributionContext($distributionContext); + } + /** + * Get ForretningsKvittering value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType + */ + public function getForretningsKvittering(): \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType + { + return $this->ForretningsKvittering; + } + /** + * Set ForretningsKvittering value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType $forretningsKvittering + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsobjektAfsendResponseType + */ + public function setForretningsKvittering(\ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType $forretningsKvittering): self + { + $this->ForretningsKvittering = $forretningsKvittering; + + return $this; + } + /** + * Get DistributionContext value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + */ + public function getDistributionContext(): \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType + { + return $this->DistributionContext; + } + /** + * Set DistributionContext value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType $distributionContext + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsobjektAfsendResponseType + */ + public function setDistributionContext(\ItkDev\Serviceplatformen\SF2900\StructType\DistributionContextType $distributionContext): self + { + $this->DistributionContext = $distributionContext; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsobjektModtagRequestType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsobjektModtagRequestType.php new file mode 100644 index 00000000..a89e8ddd --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsobjektModtagRequestType.php @@ -0,0 +1,54 @@ +setAnmodning($anmodning); + } + /** + * Get anmodning value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\AnmodRequestType + */ + public function getAnmodning(): \ItkDev\Serviceplatformen\SF2900\StructType\AnmodRequestType + { + return $this->anmodning; + } + /** + * Set anmodning value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\AnmodRequestType $anmodning + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsobjektModtagRequestType + */ + public function setAnmodning(\ItkDev\Serviceplatformen\SF2900\StructType\AnmodRequestType $anmodning): self + { + $this->anmodning = $anmodning; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsobjektModtagResponseType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsobjektModtagResponseType.php new file mode 100644 index 00000000..22e9afec --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FordelingsobjektModtagResponseType.php @@ -0,0 +1,54 @@ +setForretningsKvittering($forretningsKvittering); + } + /** + * Get ForretningsKvittering value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType + */ + public function getForretningsKvittering(): \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType + { + return $this->ForretningsKvittering; + } + /** + * Set ForretningsKvittering value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType $forretningsKvittering + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FordelingsobjektModtagResponseType + */ + public function setForretningsKvittering(\ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType $forretningsKvittering): self + { + $this->ForretningsKvittering = $forretningsKvittering; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FormularType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FormularType.php new file mode 100644 index 00000000..df58e516 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FormularType.php @@ -0,0 +1,156 @@ +setTitelTekst($titelTekst) + ->setFormatNavn($formatNavn) + ->setFormularIndhold($formularIndhold) + ->setFormularXML($formularXML); + } + /** + * Get TitelTekst value + * @return string + */ + public function getTitelTekst(): string + { + return $this->TitelTekst; + } + /** + * Set TitelTekst value + * @param string $titelTekst + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FormularType + */ + public function setTitelTekst(string $titelTekst): self + { + // validation for constraint: string + if (!is_null($titelTekst) && !is_string($titelTekst)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($titelTekst, true), gettype($titelTekst)), __LINE__); + } + $this->TitelTekst = $titelTekst; + + return $this; + } + /** + * Get FormatNavn value + * @return string + */ + public function getFormatNavn(): string + { + return $this->FormatNavn; + } + /** + * Set FormatNavn value + * @param string $formatNavn + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FormularType + */ + public function setFormatNavn(string $formatNavn): self + { + // validation for constraint: string + if (!is_null($formatNavn) && !is_string($formatNavn)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($formatNavn, true), gettype($formatNavn)), __LINE__); + } + $this->FormatNavn = $formatNavn; + + return $this; + } + /** + * Get FormularIndhold value + * @return string + */ + public function getFormularIndhold(): string + { + return $this->FormularIndhold; + } + /** + * Set FormularIndhold value + * @param string $formularIndhold + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FormularType + */ + public function setFormularIndhold(string $formularIndhold): self + { + // validation for constraint: string + if (!is_null($formularIndhold) && !is_string($formularIndhold)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($formularIndhold, true), gettype($formularIndhold)), __LINE__); + } + $this->FormularIndhold = $formularIndhold; + + return $this; + } + /** + * Get FormularXML value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FormularXMLType + */ + public function getFormularXML(): \ItkDev\Serviceplatformen\SF2900\StructType\FormularXMLType + { + return $this->FormularXML; + } + /** + * Set FormularXML value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\FormularXMLType $formularXML + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FormularType + */ + public function setFormularXML(\ItkDev\Serviceplatformen\SF2900\StructType\FormularXMLType $formularXML): self + { + $this->FormularXML = $formularXML; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FormularXMLType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FormularXMLType.php new file mode 100644 index 00000000..ec4308a7 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/FormularXMLType.php @@ -0,0 +1,65 @@ +setAny($any); + } + /** + * Get any value + * @uses \DOMDocument::loadXML() + * @param bool $asDomDocument true: returns \DOMDocument, false: returns XML string + * @return \DOMDocument|string|null + */ + public function getAny(bool $asDomDocument = false) + { + $domDocument = null; + if (!empty($this->any) && $asDomDocument) { + $domDocument = new \DOMDocument('1.0', 'UTF-8'); + $domDocument->loadXML($this->any); + } + return $asDomDocument ? $domDocument : $this->any; + } + /** + * Set any value + * @uses \DOMDocument::hasChildNodes() + * @uses \DOMDocument::saveXML() + * @uses \DOMNode::item() + * @param \DOMDocument|string|null $any + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FormularXMLType + */ + public function setAny($any = null): self + { + // validation for constraint: xml + if (!is_null($any) && !$any instanceof \DOMDocument && (!is_string($any) || (is_string($any) && (empty($any) || (($anyDoc = new \DOMDocument()) && false === $anyDoc->loadXML($any)))))) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a valid XML string', var_export($any, true)), __LINE__); + } + $this->any = ($any instanceof \DOMDocument) ? $any->saveXML($any->hasChildNodes() ? $any->childNodes->item(0) : null) : $any; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/ForretningskvitteringType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/ForretningskvitteringType.php new file mode 100644 index 00000000..05489e69 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/ForretningskvitteringType.php @@ -0,0 +1,162 @@ +setForretningsValideringsKode($forretningsValideringsKode) + ->setKvitteringstype($kvitteringstype) + ->setBegrundelse($begrundelse) + ->setFejlListe($fejlListe); + } + /** + * Get ForretningsValideringsKode value + * @return string + */ + public function getForretningsValideringsKode(): string + { + return $this->ForretningsValideringsKode; + } + /** + * Set ForretningsValideringsKode value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\ForretningsValideringsKodeType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\ForretningsValideringsKodeType::getValidValues() + * @throws InvalidArgumentException + * @param string $forretningsValideringsKode + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType + */ + public function setForretningsValideringsKode(string $forretningsValideringsKode): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\ForretningsValideringsKodeType::valueIsValid($forretningsValideringsKode)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\ForretningsValideringsKodeType', is_array($forretningsValideringsKode) ? implode(', ', $forretningsValideringsKode) : var_export($forretningsValideringsKode, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\ForretningsValideringsKodeType::getValidValues())), __LINE__); + } + $this->ForretningsValideringsKode = $forretningsValideringsKode; + + return $this; + } + /** + * Get Kvitteringstype value + * @return string + */ + public function getKvitteringstype(): string + { + return $this->Kvitteringstype; + } + /** + * Set Kvitteringstype value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\KvitteringstypeType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\KvitteringstypeType::getValidValues() + * @throws InvalidArgumentException + * @param string $kvitteringstype + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType + */ + public function setKvitteringstype(string $kvitteringstype): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\KvitteringstypeType::valueIsValid($kvitteringstype)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\KvitteringstypeType', is_array($kvitteringstype) ? implode(', ', $kvitteringstype) : var_export($kvitteringstype, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\KvitteringstypeType::getValidValues())), __LINE__); + } + $this->Kvitteringstype = $kvitteringstype; + + return $this; + } + /** + * Get Begrundelse value + * @return string|null + */ + public function getBegrundelse(): ?string + { + return $this->Begrundelse; + } + /** + * Set Begrundelse value + * @param string $begrundelse + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType + */ + public function setBegrundelse(?string $begrundelse = null): self + { + // validation for constraint: string + if (!is_null($begrundelse) && !is_string($begrundelse)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($begrundelse, true), gettype($begrundelse)), __LINE__); + } + $this->Begrundelse = $begrundelse; + + return $this; + } + /** + * Get FejlListe value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FejlListeType|null + */ + public function getFejlListe(): ?\ItkDev\Serviceplatformen\SF2900\StructType\FejlListeType + { + return $this->FejlListe; + } + /** + * Set FejlListe value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\FejlListeType $fejlListe + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ForretningskvitteringType + */ + public function setFejlListe(?\ItkDev\Serviceplatformen\SF2900\StructType\FejlListeType $fejlListe = null): self + { + $this->FejlListe = $fejlListe; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalNotatEgenskaberType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalNotatEgenskaberType.php new file mode 100644 index 00000000..8a1549c0 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalNotatEgenskaberType.php @@ -0,0 +1,92 @@ +setNotat($notat) + ->setTitel($titel); + } + /** + * Get Notat value + * @return string + */ + public function getNotat(): string + { + return $this->Notat; + } + /** + * Set Notat value + * @param string $notat + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalNotatEgenskaberType + */ + public function setNotat(string $notat): self + { + // validation for constraint: string + if (!is_null($notat) && !is_string($notat)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($notat, true), gettype($notat)), __LINE__); + } + $this->Notat = $notat; + + return $this; + } + /** + * Get Titel value + * @return string|null + */ + public function getTitel(): ?string + { + return $this->Titel; + } + /** + * Set Titel value + * @param string $titel + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalNotatEgenskaberType + */ + public function setTitel(?string $titel = null): self + { + // validation for constraint: string + if (!is_null($titel) && !is_string($titel)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($titel, true), gettype($titel)), __LINE__); + } + $this->Titel = $titel; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalPartType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalPartType.php new file mode 100644 index 00000000..2509e428 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalPartType.php @@ -0,0 +1,91 @@ +setObjekttype($objekttype) + ->setReferenceID($referenceID); + } + /** + * Get Objekttype value + * @return string + */ + public function getObjekttype(): string + { + return $this->Objekttype; + } + /** + * Set Objekttype value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\JournalPartObjekttypeType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\JournalPartObjekttypeType::getValidValues() + * @throws InvalidArgumentException + * @param string $objekttype + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPartType + */ + public function setObjekttype(string $objekttype): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\JournalPartObjekttypeType::valueIsValid($objekttype)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\JournalPartObjekttypeType', is_array($objekttype) ? implode(', ', $objekttype) : var_export($objekttype, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\JournalPartObjekttypeType::getValidValues())), __LINE__); + } + $this->Objekttype = $objekttype; + + return $this; + } + /** + * Get ReferenceID value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN + */ + public function getReferenceID(): \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN + { + return $this->ReferenceID; + } + /** + * Set ReferenceID value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN $referenceID + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPartType + */ + public function setReferenceID(\ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN $referenceID): self + { + $this->ReferenceID = $referenceID; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalPostRegistreringType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalPostRegistreringType.php new file mode 100644 index 00000000..47482884 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalPostRegistreringType.php @@ -0,0 +1,219 @@ +setFraTidsPunkt($fraTidsPunkt) + ->setLivscyklusKode($livscyklusKode) + ->setRegistreringItSystem($registreringItSystem) + ->setRelationListe($relationListe) + ->setImportTidspunkt($importTidspunkt) + ->setBrugerRef($brugerRef); + } + /** + * Get FraTidsPunkt value + * @return string + */ + public function getFraTidsPunkt(): string + { + return $this->FraTidsPunkt; + } + /** + * Set FraTidsPunkt value + * @param string $fraTidsPunkt + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRegistreringType + */ + public function setFraTidsPunkt(string $fraTidsPunkt): self + { + // validation for constraint: string + if (!is_null($fraTidsPunkt) && !is_string($fraTidsPunkt)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($fraTidsPunkt, true), gettype($fraTidsPunkt)), __LINE__); + } + $this->FraTidsPunkt = $fraTidsPunkt; + + return $this; + } + /** + * Get LivscyklusKode value + * @return string + */ + public function getLivscyklusKode(): string + { + return $this->LivscyklusKode; + } + /** + * Set LivscyklusKode value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\LivscyklusKodeType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\LivscyklusKodeType::getValidValues() + * @throws InvalidArgumentException + * @param string $livscyklusKode + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRegistreringType + */ + public function setLivscyklusKode(string $livscyklusKode): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\LivscyklusKodeType::valueIsValid($livscyklusKode)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\LivscyklusKodeType', is_array($livscyklusKode) ? implode(', ', $livscyklusKode) : var_export($livscyklusKode, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\LivscyklusKodeType::getValidValues())), __LINE__); + } + $this->LivscyklusKode = $livscyklusKode; + + return $this; + } + /** + * Get RegistreringItSystem value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN + */ + public function getRegistreringItSystem(): \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN + { + return $this->RegistreringItSystem; + } + /** + * Set RegistreringItSystem value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN $registreringItSystem + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRegistreringType + */ + public function setRegistreringItSystem(\ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN $registreringItSystem): self + { + $this->RegistreringItSystem = $registreringItSystem; + + return $this; + } + /** + * Get RelationListe value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRelationsListeType + */ + public function getRelationListe(): \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRelationsListeType + { + return $this->RelationListe; + } + /** + * Set RelationListe value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRelationsListeType $relationListe + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRegistreringType + */ + public function setRelationListe(\ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRelationsListeType $relationListe): self + { + $this->RelationListe = $relationListe; + + return $this; + } + /** + * Get ImportTidspunkt value + * @return string|null + */ + public function getImportTidspunkt(): ?string + { + return $this->ImportTidspunkt; + } + /** + * Set ImportTidspunkt value + * @param string $importTidspunkt + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRegistreringType + */ + public function setImportTidspunkt(?string $importTidspunkt = null): self + { + // validation for constraint: string + if (!is_null($importTidspunkt) && !is_string($importTidspunkt)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($importTidspunkt, true), gettype($importTidspunkt)), __LINE__); + } + $this->ImportTidspunkt = $importTidspunkt; + + return $this; + } + /** + * Get BrugerRef value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN|null + */ + public function getBrugerRef(): ?\ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN + { + return $this->BrugerRef; + } + /** + * Set BrugerRef value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN $brugerRef + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRegistreringType + */ + public function setBrugerRef(?\ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN $brugerRef = null): self + { + $this->BrugerRef = $brugerRef; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalPostRelationsListeType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalPostRelationsListeType.php new file mode 100644 index 00000000..87a51d23 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalPostRelationsListeType.php @@ -0,0 +1,102 @@ +setJournalPost($journalPost); + } + /** + * Get JournalPost value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType[] + */ + public function getJournalPost(): array + { + return $this->JournalPost; + } + /** + * This method is responsible for validating the value(s) passed to the setJournalPost method + * This method is willingly generated in order to preserve the one-line inline validation within the setJournalPost method + * This has to validate that each item contained by the array match the itemType constraint + * @param array $values + * @return string A non-empty message if the values does not match the validation rules + */ + public static function validateJournalPostForArrayConstraintFromSetJournalPost(?array $values = []): string + { + if (!is_array($values)) { + return ''; + } + $message = ''; + $invalidValues = []; + foreach ($values as $journalPostRelationsListeTypeJournalPostItem) { + // validation for constraint: itemType + if (!$journalPostRelationsListeTypeJournalPostItem instanceof \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType) { + $invalidValues[] = is_object($journalPostRelationsListeTypeJournalPostItem) ? get_class($journalPostRelationsListeTypeJournalPostItem) : sprintf('%s(%s)', gettype($journalPostRelationsListeTypeJournalPostItem), var_export($journalPostRelationsListeTypeJournalPostItem, true)); + } + } + if (!empty($invalidValues)) { + $message = sprintf('The JournalPost property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType, %s given', is_object($invalidValues) ? get_class($invalidValues) : (is_array($invalidValues) ? implode(', ', $invalidValues) : gettype($invalidValues))); + } + unset($invalidValues); + + return $message; + } + /** + * Set JournalPost value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType[] $journalPost + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRelationsListeType + */ + public function setJournalPost(array $journalPost): self + { + // validation for constraint: array + if ('' !== ($journalPostArrayErrorMessage = self::validateJournalPostForArrayConstraintFromSetJournalPost($journalPost))) { + throw new InvalidArgumentException($journalPostArrayErrorMessage, __LINE__); + } + $this->JournalPost = $journalPost; + + return $this; + } + /** + * Add item to JournalPost value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType $item + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostRelationsListeType + */ + public function addToJournalPost(\ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType $item): self + { + // validation for constraint: itemType + if (!$item instanceof \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType) { + throw new InvalidArgumentException(sprintf('The JournalPost property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType, %s given', is_object($item) ? get_class($item) : (is_array($item) ? implode(', ', $item) : gettype($item))), __LINE__); + } + $this->JournalPost[] = $item; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalPostType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalPostType.php new file mode 100644 index 00000000..675e57b0 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalPostType.php @@ -0,0 +1,215 @@ +setVirkning($virkning) + ->setRolle($rolle) + ->setIndeks($indeks) + ->setJournalnotatAttributter($journalnotatAttributter) + ->setDokument($dokument) + ->setJournalpostAttributter($journalpostAttributter); + } + /** + * Get Virkning value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + */ + public function getVirkning(): \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + { + return $this->Virkning; + } + /** + * Set Virkning value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType $virkning + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType + */ + public function setVirkning(\ItkDev\Serviceplatformen\SF2900\StructType\VirkningType $virkning): self + { + $this->Virkning = $virkning; + + return $this; + } + /** + * Get Rolle value + * @return string + */ + public function getRolle(): string + { + return $this->Rolle; + } + /** + * Set Rolle value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\JournalPostRolleType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\JournalPostRolleType::getValidValues() + * @throws InvalidArgumentException + * @param string $rolle + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType + */ + public function setRolle(string $rolle): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\JournalPostRolleType::valueIsValid($rolle)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\JournalPostRolleType', is_array($rolle) ? implode(', ', $rolle) : var_export($rolle, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\JournalPostRolleType::getValidValues())), __LINE__); + } + $this->Rolle = $rolle; + + return $this; + } + /** + * Get Indeks value + * @return string + */ + public function getIndeks(): string + { + return $this->Indeks; + } + /** + * Set Indeks value + * @param string $indeks + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType + */ + public function setIndeks(string $indeks): self + { + // validation for constraint: string + if (!is_null($indeks) && !is_string($indeks)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($indeks, true), gettype($indeks)), __LINE__); + } + $this->Indeks = $indeks; + + return $this; + } + /** + * Get JournalnotatAttributter value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalNotatEgenskaberType + */ + public function getJournalnotatAttributter(): \ItkDev\Serviceplatformen\SF2900\StructType\JournalNotatEgenskaberType + { + return $this->JournalnotatAttributter; + } + /** + * Set JournalnotatAttributter value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\JournalNotatEgenskaberType $journalnotatAttributter + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType + */ + public function setJournalnotatAttributter(\ItkDev\Serviceplatformen\SF2900\StructType\JournalNotatEgenskaberType $journalnotatAttributter): self + { + $this->JournalnotatAttributter = $journalnotatAttributter; + + return $this; + } + /** + * Get Dokument value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPartType|null + */ + public function getDokument(): ?\ItkDev\Serviceplatformen\SF2900\StructType\JournalPartType + { + return $this->Dokument; + } + /** + * Set Dokument value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\JournalPartType $dokument + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType + */ + public function setDokument(?\ItkDev\Serviceplatformen\SF2900\StructType\JournalPartType $dokument = null): self + { + $this->Dokument = $dokument; + + return $this; + } + /** + * Get JournalpostAttributter value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalpostEgenskaberType|null + */ + public function getJournalpostAttributter(): ?\ItkDev\Serviceplatformen\SF2900\StructType\JournalpostEgenskaberType + { + return $this->JournalpostAttributter; + } + /** + * Set JournalpostAttributter value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\JournalpostEgenskaberType $journalpostAttributter + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalPostType + */ + public function setJournalpostAttributter(?\ItkDev\Serviceplatformen\SF2900\StructType\JournalpostEgenskaberType $journalpostAttributter = null): self + { + $this->JournalpostAttributter = $journalpostAttributter; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalpostEgenskaberType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalpostEgenskaberType.php new file mode 100644 index 00000000..7c599c5f --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/JournalpostEgenskaberType.php @@ -0,0 +1,88 @@ +setDokumenttitel($dokumenttitel) + ->setOffentlighedUndtaget($offentlighedUndtaget); + } + /** + * Get Dokumenttitel value + * @return string|null + */ + public function getDokumenttitel(): ?string + { + return $this->Dokumenttitel; + } + /** + * Set Dokumenttitel value + * @param string $dokumenttitel + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalpostEgenskaberType + */ + public function setDokumenttitel(?string $dokumenttitel = null): self + { + // validation for constraint: string + if (!is_null($dokumenttitel) && !is_string($dokumenttitel)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($dokumenttitel, true), gettype($dokumenttitel)), __LINE__); + } + $this->Dokumenttitel = $dokumenttitel; + + return $this; + } + /** + * Get OffentlighedUndtaget value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\OffentlighedUndtagetType|null + */ + public function getOffentlighedUndtaget(): ?\ItkDev\Serviceplatformen\SF2900\StructType\OffentlighedUndtagetType + { + return $this->OffentlighedUndtaget; + } + /** + * Set OffentlighedUndtaget value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\OffentlighedUndtagetType $offentlighedUndtaget + * @return \ItkDev\Serviceplatformen\SF2900\StructType\JournalpostEgenskaberType + */ + public function setOffentlighedUndtaget(?\ItkDev\Serviceplatformen\SF2900\StructType\OffentlighedUndtagetType $offentlighedUndtaget = null): self + { + $this->OffentlighedUndtaget = $offentlighedUndtaget; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/MeddelelseType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/MeddelelseType.php new file mode 100644 index 00000000..fd681f41 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/MeddelelseType.php @@ -0,0 +1,88 @@ +setFormularType($formularType) + ->setFormular($formular); + } + /** + * Get FormularType value + * @return string + */ + public function getFormularType(): string + { + return $this->FormularType; + } + /** + * Set FormularType value + * @param string $formularType + * @return \ItkDev\Serviceplatformen\SF2900\StructType\MeddelelseType + */ + public function setFormularType(string $formularType): self + { + // validation for constraint: string + if (!is_null($formularType) && !is_string($formularType)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($formularType, true), gettype($formularType)), __LINE__); + } + $this->FormularType = $formularType; + + return $this; + } + /** + * Get Formular value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FormularType + */ + public function getFormular(): \ItkDev\Serviceplatformen\SF2900\StructType\FormularType + { + return $this->Formular; + } + /** + * Set Formular value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\FormularType $formular + * @return \ItkDev\Serviceplatformen\SF2900\StructType\MeddelelseType + */ + public function setFormular(\ItkDev\Serviceplatformen\SF2900\StructType\FormularType $formular): self + { + $this->Formular = $formular; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/ModtagerMedEndpointType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/ModtagerMedEndpointType.php new file mode 100644 index 00000000..f318ee35 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/ModtagerMedEndpointType.php @@ -0,0 +1,218 @@ +setSystemMyndighed($systemMyndighed) + ->setSystemUUID($systemUUID) + ->setSystemNavn($systemNavn) + ->setRoutingKLEEmne($routingKLEEmne) + ->setRoutingHandlingFacet($routingHandlingFacet); + } + /** + * Get SystemMyndighed value + * @return string + */ + public function getSystemMyndighed(): string + { + return $this->SystemMyndighed; + } + /** + * Set SystemMyndighed value + * @param string $systemMyndighed + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ModtagerMedEndpointType + */ + public function setSystemMyndighed(string $systemMyndighed): self + { + // validation for constraint: string + if (!is_null($systemMyndighed) && !is_string($systemMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($systemMyndighed, true), gettype($systemMyndighed)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]) + if (!is_null($systemMyndighed) && !preg_match('/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', (string) $systemMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', var_export($systemMyndighed, true)), __LINE__); + } + $this->SystemMyndighed = $systemMyndighed; + + return $this; + } + /** + * Get SystemUUID value + * @return string + */ + public function getSystemUUID(): string + { + return $this->SystemUUID; + } + /** + * Set SystemUUID value + * @param string $systemUUID + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ModtagerMedEndpointType + */ + public function setSystemUUID(string $systemUUID): self + { + // validation for constraint: string + if (!is_null($systemUUID) && !is_string($systemUUID)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($systemUUID, true), gettype($systemUUID)), __LINE__); + } + // validation for constraint: pattern([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}) + if (!is_null($systemUUID) && !preg_match('/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', (string) $systemUUID)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', var_export($systemUUID, true)), __LINE__); + } + $this->SystemUUID = $systemUUID; + + return $this; + } + /** + * Get SystemNavn value + * @return string + */ + public function getSystemNavn(): string + { + return $this->SystemNavn; + } + /** + * Set SystemNavn value + * @param string $systemNavn + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ModtagerMedEndpointType + */ + public function setSystemNavn(string $systemNavn): self + { + // validation for constraint: string + if (!is_null($systemNavn) && !is_string($systemNavn)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($systemNavn, true), gettype($systemNavn)), __LINE__); + } + $this->SystemNavn = $systemNavn; + + return $this; + } + /** + * Get RoutingKLEEmne value + * @return string + */ + public function getRoutingKLEEmne(): string + { + return $this->RoutingKLEEmne; + } + /** + * Set RoutingKLEEmne value + * @param string $routingKLEEmne + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ModtagerMedEndpointType + */ + public function setRoutingKLEEmne(string $routingKLEEmne): self + { + // validation for constraint: string + if (!is_null($routingKLEEmne) && !is_string($routingKLEEmne)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($routingKLEEmne, true), gettype($routingKLEEmne)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][.][0-9][0-9][.][0-9][0-9]) + if (!is_null($routingKLEEmne) && !preg_match('/[0-9][0-9][.][0-9][0-9][.][0-9][0-9]/', (string) $routingKLEEmne)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][.][0-9][0-9][.][0-9][0-9]/', var_export($routingKLEEmne, true)), __LINE__); + } + $this->RoutingKLEEmne = $routingKLEEmne; + + return $this; + } + /** + * Get RoutingHandlingFacet value + * @return string|null + */ + public function getRoutingHandlingFacet(): ?string + { + return $this->RoutingHandlingFacet; + } + /** + * Set RoutingHandlingFacet value + * @param string $routingHandlingFacet + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ModtagerMedEndpointType + */ + public function setRoutingHandlingFacet(?string $routingHandlingFacet = null): self + { + // validation for constraint: string + if (!is_null($routingHandlingFacet) && !is_string($routingHandlingFacet)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($routingHandlingFacet, true), gettype($routingHandlingFacet)), __LINE__); + } + // validation for constraint: pattern([A-Z,Æ,Ø,Å][0-9][0-9]) + if (!is_null($routingHandlingFacet) && !preg_match('/[A-Z,Æ,Ø,Å][0-9][0-9]/', (string) $routingHandlingFacet)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[A-Z,Æ,Ø,Å][0-9][0-9]/', var_export($routingHandlingFacet, true)), __LINE__); + } + $this->RoutingHandlingFacet = $routingHandlingFacet; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/ObjektIndholdType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/ObjektIndholdType.php new file mode 100644 index 00000000..3e189dad --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/ObjektIndholdType.php @@ -0,0 +1,240 @@ +setDistributionDokument($distributionDokument) + ->setDistributionJournalPost($distributionJournalPost) + ->setDistributionFormular($distributionFormular); + } + /** + * Get DistributionDokument value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionDokumentType|null + */ + public function getDistributionDokument(): ?\ItkDev\Serviceplatformen\SF2900\StructType\DistributionDokumentType + { + return $this->DistributionDokument ?? null; + } + /** + * This method is responsible for validating the value(s) passed to the setDistributionDokument method + * This method is willingly generated in order to preserve the one-line inline validation within the setDistributionDokument method + * This has to validate that the property which is being set is the only one among the given choices + * @param mixed $value + * @return string A non-empty message if the values does not match the validation rules + */ + public function validateDistributionDokumentForChoiceConstraintFromSetDistributionDokument($value): string + { + $message = ''; + if (is_null($value)) { + return $message; + } + $properties = [ + 'DistributionJournalPost', + 'DistributionFormular', + ]; + try { + foreach ($properties as $property) { + if (isset($this->{$property})) { + throw new InvalidArgumentException(sprintf('The property DistributionDokument can\'t be set as the property %s is already set. Only one property must be set among these properties: DistributionDokument, %s.', $property, implode(', ', $properties)), __LINE__); + } + } + } catch (InvalidArgumentException $e) { + $message = $e->getMessage(); + } + + return $message; + } + /** + * Set DistributionDokument value + * This property belongs to a choice that allows only one property to exist. It is + * therefore removable from the request, consequently if the value assigned to this + * property is null, the property is removed from this object + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\DistributionDokumentType $distributionDokument + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ObjektIndholdType + */ + public function setDistributionDokument(?\ItkDev\Serviceplatformen\SF2900\StructType\DistributionDokumentType $distributionDokument = null): self + { + // validation for constraint: choice(DistributionDokument, DistributionJournalPost, DistributionFormular) + if ('' !== ($distributionDokumentChoiceErrorMessage = self::validateDistributionDokumentForChoiceConstraintFromSetDistributionDokument($distributionDokument))) { + throw new InvalidArgumentException($distributionDokumentChoiceErrorMessage, __LINE__); + } + if (is_null($distributionDokument) || (is_array($distributionDokument) && empty($distributionDokument))) { + unset($this->DistributionDokument); + } else { + $this->DistributionDokument = $distributionDokument; + } + + return $this; + } + /** + * Get DistributionJournalPost value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionJournalPostType|null + */ + public function getDistributionJournalPost(): ?\ItkDev\Serviceplatformen\SF2900\StructType\DistributionJournalPostType + { + return $this->DistributionJournalPost ?? null; + } + /** + * This method is responsible for validating the value(s) passed to the setDistributionJournalPost method + * This method is willingly generated in order to preserve the one-line inline validation within the setDistributionJournalPost method + * This has to validate that the property which is being set is the only one among the given choices + * @param mixed $value + * @return string A non-empty message if the values does not match the validation rules + */ + public function validateDistributionJournalPostForChoiceConstraintFromSetDistributionJournalPost($value): string + { + $message = ''; + if (is_null($value)) { + return $message; + } + $properties = [ + 'DistributionDokument', + 'DistributionFormular', + ]; + try { + foreach ($properties as $property) { + if (isset($this->{$property})) { + throw new InvalidArgumentException(sprintf('The property DistributionJournalPost can\'t be set as the property %s is already set. Only one property must be set among these properties: DistributionJournalPost, %s.', $property, implode(', ', $properties)), __LINE__); + } + } + } catch (InvalidArgumentException $e) { + $message = $e->getMessage(); + } + + return $message; + } + /** + * Set DistributionJournalPost value + * This property belongs to a choice that allows only one property to exist. It is + * therefore removable from the request, consequently if the value assigned to this + * property is null, the property is removed from this object + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\DistributionJournalPostType $distributionJournalPost + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ObjektIndholdType + */ + public function setDistributionJournalPost(?\ItkDev\Serviceplatformen\SF2900\StructType\DistributionJournalPostType $distributionJournalPost = null): self + { + // validation for constraint: choice(DistributionDokument, DistributionJournalPost, DistributionFormular) + if ('' !== ($distributionJournalPostChoiceErrorMessage = self::validateDistributionJournalPostForChoiceConstraintFromSetDistributionJournalPost($distributionJournalPost))) { + throw new InvalidArgumentException($distributionJournalPostChoiceErrorMessage, __LINE__); + } + if (is_null($distributionJournalPost) || (is_array($distributionJournalPost) && empty($distributionJournalPost))) { + unset($this->DistributionJournalPost); + } else { + $this->DistributionJournalPost = $distributionJournalPost; + } + + return $this; + } + /** + * Get DistributionFormular value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DistributionFormularType|null + */ + public function getDistributionFormular(): ?\ItkDev\Serviceplatformen\SF2900\StructType\DistributionFormularType + { + return $this->DistributionFormular ?? null; + } + /** + * This method is responsible for validating the value(s) passed to the setDistributionFormular method + * This method is willingly generated in order to preserve the one-line inline validation within the setDistributionFormular method + * This has to validate that the property which is being set is the only one among the given choices + * @param mixed $value + * @return string A non-empty message if the values does not match the validation rules + */ + public function validateDistributionFormularForChoiceConstraintFromSetDistributionFormular($value): string + { + $message = ''; + if (is_null($value)) { + return $message; + } + $properties = [ + 'DistributionDokument', + 'DistributionJournalPost', + ]; + try { + foreach ($properties as $property) { + if (isset($this->{$property})) { + throw new InvalidArgumentException(sprintf('The property DistributionFormular can\'t be set as the property %s is already set. Only one property must be set among these properties: DistributionFormular, %s.', $property, implode(', ', $properties)), __LINE__); + } + } + } catch (InvalidArgumentException $e) { + $message = $e->getMessage(); + } + + return $message; + } + /** + * Set DistributionFormular value + * This property belongs to a choice that allows only one property to exist. It is + * therefore removable from the request, consequently if the value assigned to this + * property is null, the property is removed from this object + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\DistributionFormularType $distributionFormular + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ObjektIndholdType + */ + public function setDistributionFormular(?\ItkDev\Serviceplatformen\SF2900\StructType\DistributionFormularType $distributionFormular = null): self + { + // validation for constraint: choice(DistributionDokument, DistributionJournalPost, DistributionFormular) + if ('' !== ($distributionFormularChoiceErrorMessage = self::validateDistributionFormularForChoiceConstraintFromSetDistributionFormular($distributionFormular))) { + throw new InvalidArgumentException($distributionFormularChoiceErrorMessage, __LINE__); + } + if (is_null($distributionFormular) || (is_array($distributionFormular) && empty($distributionFormular))) { + unset($this->DistributionFormular); + } else { + $this->DistributionFormular = $distributionFormular; + } + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/OffentlighedUndtagetType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/OffentlighedUndtagetType.php new file mode 100644 index 00000000..e364876b --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/OffentlighedUndtagetType.php @@ -0,0 +1,92 @@ +setTitelAlternativTekst($titelAlternativTekst) + ->setHjemmelTekst($hjemmelTekst); + } + /** + * Get TitelAlternativTekst value + * @return string + */ + public function getTitelAlternativTekst(): string + { + return $this->TitelAlternativTekst; + } + /** + * Set TitelAlternativTekst value + * @param string $titelAlternativTekst + * @return \ItkDev\Serviceplatformen\SF2900\StructType\OffentlighedUndtagetType + */ + public function setTitelAlternativTekst(string $titelAlternativTekst): self + { + // validation for constraint: string + if (!is_null($titelAlternativTekst) && !is_string($titelAlternativTekst)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($titelAlternativTekst, true), gettype($titelAlternativTekst)), __LINE__); + } + $this->TitelAlternativTekst = $titelAlternativTekst; + + return $this; + } + /** + * Get HjemmelTekst value + * @return string + */ + public function getHjemmelTekst(): string + { + return $this->HjemmelTekst; + } + /** + * Set HjemmelTekst value + * @param string $hjemmelTekst + * @return \ItkDev\Serviceplatformen\SF2900\StructType\OffentlighedUndtagetType + */ + public function setHjemmelTekst(string $hjemmelTekst): self + { + // validation for constraint: string + if (!is_null($hjemmelTekst) && !is_string($hjemmelTekst)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($hjemmelTekst, true), gettype($hjemmelTekst)), __LINE__); + } + $this->HjemmelTekst = $hjemmelTekst; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/PartType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/PartType.php new file mode 100644 index 00000000..a480efb3 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/PartType.php @@ -0,0 +1,91 @@ +setObjektType($objektType) + ->setReferenceID($referenceID); + } + /** + * Get ObjektType value + * @return string + */ + public function getObjektType(): string + { + return $this->ObjektType; + } + /** + * Set ObjektType value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\PartObjektTypeType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\PartObjektTypeType::getValidValues() + * @throws InvalidArgumentException + * @param string $objektType + * @return \ItkDev\Serviceplatformen\SF2900\StructType\PartType + */ + public function setObjektType(string $objektType): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\PartObjektTypeType::valueIsValid($objektType)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\PartObjektTypeType', is_array($objektType) ? implode(', ', $objektType) : var_export($objektType, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\PartObjektTypeType::getValidValues())), __LINE__); + } + $this->ObjektType = $objektType; + + return $this; + } + /** + * Get ReferenceID value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN_Tekst + */ + public function getReferenceID(): \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN_Tekst + { + return $this->ReferenceID; + } + /** + * Set ReferenceID value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN_Tekst $referenceID + * @return \ItkDev\Serviceplatformen\SF2900\StructType\PartType + */ + public function setReferenceID(\ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN_Tekst $referenceID): self + { + $this->ReferenceID = $referenceID; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RelationsListe.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RelationsListe.php new file mode 100644 index 00000000..fe5b6cbc --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RelationsListe.php @@ -0,0 +1,84 @@ +setVariantListe($variantListe) + ->setDokumentPartListe($dokumentPartListe); + } + /** + * Get VariantListe value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantListeType + */ + public function getVariantListe(): \ItkDev\Serviceplatformen\SF2900\StructType\VariantListeType + { + return $this->VariantListe; + } + /** + * Set VariantListe value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\VariantListeType $variantListe + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RelationsListe + */ + public function setVariantListe(\ItkDev\Serviceplatformen\SF2900\StructType\VariantListeType $variantListe): self + { + $this->VariantListe = $variantListe; + + return $this; + } + /** + * Get DokumentPartListe value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartListeType|null + */ + public function getDokumentPartListe(): ?\ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartListeType + { + return $this->DokumentPartListe; + } + /** + * Set DokumentPartListe value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartListeType $dokumentPartListe + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RelationsListe + */ + public function setDokumentPartListe(?\ItkDev\Serviceplatformen\SF2900\StructType\DokumentPartListeType $dokumentPartListe = null): self + { + $this->DokumentPartListe = $dokumentPartListe; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingKLEInfo.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingKLEInfo.php new file mode 100644 index 00000000..45d2a0b8 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingKLEInfo.php @@ -0,0 +1,104 @@ +setRoutingKLEEmne($routingKLEEmne) + ->setRoutingHandlingFacet($routingHandlingFacet); + } + /** + * Get RoutingKLEEmne value + * @return string + */ + public function getRoutingKLEEmne(): string + { + return $this->RoutingKLEEmne; + } + /** + * Set RoutingKLEEmne value + * @param string $routingKLEEmne + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingKLEInfo + */ + public function setRoutingKLEEmne(string $routingKLEEmne): self + { + // validation for constraint: string + if (!is_null($routingKLEEmne) && !is_string($routingKLEEmne)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($routingKLEEmne, true), gettype($routingKLEEmne)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][.][0-9][0-9][.][0-9][0-9]) + if (!is_null($routingKLEEmne) && !preg_match('/[0-9][0-9][.][0-9][0-9][.][0-9][0-9]/', (string) $routingKLEEmne)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][.][0-9][0-9][.][0-9][0-9]/', var_export($routingKLEEmne, true)), __LINE__); + } + $this->RoutingKLEEmne = $routingKLEEmne; + + return $this; + } + /** + * Get RoutingHandlingFacet value + * @return string|null + */ + public function getRoutingHandlingFacet(): ?string + { + return $this->RoutingHandlingFacet; + } + /** + * Set RoutingHandlingFacet value + * @param string $routingHandlingFacet + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingKLEInfo + */ + public function setRoutingHandlingFacet(?string $routingHandlingFacet = null): self + { + // validation for constraint: string + if (!is_null($routingHandlingFacet) && !is_string($routingHandlingFacet)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($routingHandlingFacet, true), gettype($routingHandlingFacet)), __LINE__); + } + // validation for constraint: pattern([A-Z,Æ,Ø,Å][0-9][0-9]) + if (!is_null($routingHandlingFacet) && !preg_match('/[A-Z,Æ,Ø,Å][0-9][0-9]/', (string) $routingHandlingFacet)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[A-Z,Æ,Ø,Å][0-9][0-9]/', var_export($routingHandlingFacet, true)), __LINE__); + } + $this->RoutingHandlingFacet = $routingHandlingFacet; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingListeType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingListeType.php new file mode 100644 index 00000000..c7ea97a8 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingListeType.php @@ -0,0 +1,102 @@ +setRouting($routing); + } + /** + * Get Routing value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingType[] + */ + public function getRouting(): array + { + return $this->Routing; + } + /** + * This method is responsible for validating the value(s) passed to the setRouting method + * This method is willingly generated in order to preserve the one-line inline validation within the setRouting method + * This has to validate that each item contained by the array match the itemType constraint + * @param array $values + * @return string A non-empty message if the values does not match the validation rules + */ + public static function validateRoutingForArrayConstraintFromSetRouting(?array $values = []): string + { + if (!is_array($values)) { + return ''; + } + $message = ''; + $invalidValues = []; + foreach ($values as $routingListeTypeRoutingItem) { + // validation for constraint: itemType + if (!$routingListeTypeRoutingItem instanceof \ItkDev\Serviceplatformen\SF2900\StructType\RoutingType) { + $invalidValues[] = is_object($routingListeTypeRoutingItem) ? get_class($routingListeTypeRoutingItem) : sprintf('%s(%s)', gettype($routingListeTypeRoutingItem), var_export($routingListeTypeRoutingItem, true)); + } + } + if (!empty($invalidValues)) { + $message = sprintf('The Routing property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\RoutingType, %s given', is_object($invalidValues) ? get_class($invalidValues) : (is_array($invalidValues) ? implode(', ', $invalidValues) : gettype($invalidValues))); + } + unset($invalidValues); + + return $message; + } + /** + * Set Routing value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\RoutingType[] $routing + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingListeType + */ + public function setRouting(array $routing): self + { + // validation for constraint: array + if ('' !== ($routingArrayErrorMessage = self::validateRoutingForArrayConstraintFromSetRouting($routing))) { + throw new InvalidArgumentException($routingArrayErrorMessage, __LINE__); + } + $this->Routing = $routing; + + return $this; + } + /** + * Add item to Routing value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\RoutingType $item + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingListeType + */ + public function addToRouting(\ItkDev\Serviceplatformen\SF2900\StructType\RoutingType $item): self + { + // validation for constraint: itemType + if (!$item instanceof \ItkDev\Serviceplatformen\SF2900\StructType\RoutingType) { + throw new InvalidArgumentException(sprintf('The Routing property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\RoutingType, %s given', is_object($item) ? get_class($item) : (is_array($item) ? implode(', ', $item) : gettype($item))), __LINE__); + } + $this->Routing[] = $item; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingResponseType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingResponseType.php new file mode 100644 index 00000000..a8067e80 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingResponseType.php @@ -0,0 +1,138 @@ +setRoutingMyndighed($routingMyndighed) + ->setRoutingModtagerAktoer($routingModtagerAktoer) + ->setKanModtage($kanModtage); + } + /** + * Get RoutingMyndighed value + * @return string + */ + public function getRoutingMyndighed(): string + { + return $this->RoutingMyndighed; + } + /** + * Set RoutingMyndighed value + * @param string $routingMyndighed + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResponseType + */ + public function setRoutingMyndighed(string $routingMyndighed): self + { + // validation for constraint: string + if (!is_null($routingMyndighed) && !is_string($routingMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($routingMyndighed, true), gettype($routingMyndighed)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]) + if (!is_null($routingMyndighed) && !preg_match('/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', (string) $routingMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', var_export($routingMyndighed, true)), __LINE__); + } + $this->RoutingMyndighed = $routingMyndighed; + + return $this; + } + /** + * Get RoutingModtagerAktoer value + * @return string + */ + public function getRoutingModtagerAktoer(): string + { + return $this->RoutingModtagerAktoer; + } + /** + * Set RoutingModtagerAktoer value + * @param string $routingModtagerAktoer + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResponseType + */ + public function setRoutingModtagerAktoer(string $routingModtagerAktoer): self + { + // validation for constraint: string + if (!is_null($routingModtagerAktoer) && !is_string($routingModtagerAktoer)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($routingModtagerAktoer, true), gettype($routingModtagerAktoer)), __LINE__); + } + // validation for constraint: pattern([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}) + if (!is_null($routingModtagerAktoer) && !preg_match('/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', (string) $routingModtagerAktoer)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', var_export($routingModtagerAktoer, true)), __LINE__); + } + $this->RoutingModtagerAktoer = $routingModtagerAktoer; + + return $this; + } + /** + * Get KanModtage value + * @return bool + */ + public function getKanModtage(): bool + { + return $this->KanModtage; + } + /** + * Set KanModtage value + * @param bool $kanModtage + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResponseType + */ + public function setKanModtage(bool $kanModtage): self + { + // validation for constraint: boolean + if (!is_null($kanModtage) && !is_bool($kanModtage)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a bool, %s given', var_export($kanModtage, true), gettype($kanModtage)), __LINE__); + } + $this->KanModtage = $kanModtage; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingResposneListeType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingResposneListeType.php new file mode 100644 index 00000000..ccc2b300 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingResposneListeType.php @@ -0,0 +1,102 @@ +setRoutingModtager($routingModtager); + } + /** + * Get RoutingModtager value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResponseType[] + */ + public function getRoutingModtager(): array + { + return $this->RoutingModtager; + } + /** + * This method is responsible for validating the value(s) passed to the setRoutingModtager method + * This method is willingly generated in order to preserve the one-line inline validation within the setRoutingModtager method + * This has to validate that each item contained by the array match the itemType constraint + * @param array $values + * @return string A non-empty message if the values does not match the validation rules + */ + public static function validateRoutingModtagerForArrayConstraintFromSetRoutingModtager(?array $values = []): string + { + if (!is_array($values)) { + return ''; + } + $message = ''; + $invalidValues = []; + foreach ($values as $routingResposneListeTypeRoutingModtagerItem) { + // validation for constraint: itemType + if (!$routingResposneListeTypeRoutingModtagerItem instanceof \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResponseType) { + $invalidValues[] = is_object($routingResposneListeTypeRoutingModtagerItem) ? get_class($routingResposneListeTypeRoutingModtagerItem) : sprintf('%s(%s)', gettype($routingResposneListeTypeRoutingModtagerItem), var_export($routingResposneListeTypeRoutingModtagerItem, true)); + } + } + if (!empty($invalidValues)) { + $message = sprintf('The RoutingModtager property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResponseType, %s given', is_object($invalidValues) ? get_class($invalidValues) : (is_array($invalidValues) ? implode(', ', $invalidValues) : gettype($invalidValues))); + } + unset($invalidValues); + + return $message; + } + /** + * Set RoutingModtager value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResponseType[] $routingModtager + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResposneListeType + */ + public function setRoutingModtager(array $routingModtager): self + { + // validation for constraint: array + if ('' !== ($routingModtagerArrayErrorMessage = self::validateRoutingModtagerForArrayConstraintFromSetRoutingModtager($routingModtager))) { + throw new InvalidArgumentException($routingModtagerArrayErrorMessage, __LINE__); + } + $this->RoutingModtager = $routingModtager; + + return $this; + } + /** + * Add item to RoutingModtager value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResponseType $item + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResposneListeType + */ + public function addToRoutingModtager(\ItkDev\Serviceplatformen\SF2900\StructType\RoutingResponseType $item): self + { + // validation for constraint: itemType + if (!$item instanceof \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResponseType) { + throw new InvalidArgumentException(sprintf('The RoutingModtager property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\RoutingResponseType, %s given', is_object($item) ? get_class($item) : (is_array($item) ? implode(', ', $item) : gettype($item))), __LINE__); + } + $this->RoutingModtager[] = $item; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingType.php new file mode 100644 index 00000000..59fadb6b --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingType.php @@ -0,0 +1,104 @@ +setRoutingMyndighed($routingMyndighed) + ->setRoutingModtagerAktoer($routingModtagerAktoer); + } + /** + * Get RoutingMyndighed value + * @return string + */ + public function getRoutingMyndighed(): string + { + return $this->RoutingMyndighed; + } + /** + * Set RoutingMyndighed value + * @param string $routingMyndighed + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingType + */ + public function setRoutingMyndighed(string $routingMyndighed): self + { + // validation for constraint: string + if (!is_null($routingMyndighed) && !is_string($routingMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($routingMyndighed, true), gettype($routingMyndighed)), __LINE__); + } + // validation for constraint: pattern([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]) + if (!is_null($routingMyndighed) && !preg_match('/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', (string) $routingMyndighed)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/', var_export($routingMyndighed, true)), __LINE__); + } + $this->RoutingMyndighed = $routingMyndighed; + + return $this; + } + /** + * Get RoutingModtagerAktoer value + * @return string + */ + public function getRoutingModtagerAktoer(): string + { + return $this->RoutingModtagerAktoer; + } + /** + * Set RoutingModtagerAktoer value + * @param string $routingModtagerAktoer + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingType + */ + public function setRoutingModtagerAktoer(string $routingModtagerAktoer): self + { + // validation for constraint: string + if (!is_null($routingModtagerAktoer) && !is_string($routingModtagerAktoer)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($routingModtagerAktoer, true), gettype($routingModtagerAktoer)), __LINE__); + } + // validation for constraint: pattern([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}) + if (!is_null($routingModtagerAktoer) && !preg_match('/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', (string) $routingModtagerAktoer)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', var_export($routingModtagerAktoer, true)), __LINE__); + } + $this->RoutingModtagerAktoer = $routingModtagerAktoer; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingValg.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingValg.php new file mode 100644 index 00000000..ffe80a49 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/RoutingValg.php @@ -0,0 +1,180 @@ +setRoutingKLEEmneHandling($routingKLEEmneHandling) + ->setRoutingModtagerAktoer($routingModtagerAktoer); + } + /** + * Get RoutingKLEEmneHandling value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingKLEInfo|null + */ + public function getRoutingKLEEmneHandling(): ?\ItkDev\Serviceplatformen\SF2900\StructType\RoutingKLEInfo + { + return $this->RoutingKLEEmneHandling ?? null; + } + /** + * This method is responsible for validating the value(s) passed to the setRoutingKLEEmneHandling method + * This method is willingly generated in order to preserve the one-line inline validation within the setRoutingKLEEmneHandling method + * This has to validate that the property which is being set is the only one among the given choices + * @param mixed $value + * @return string A non-empty message if the values does not match the validation rules + */ + public function validateRoutingKLEEmneHandlingForChoiceConstraintFromSetRoutingKLEEmneHandling($value): string + { + $message = ''; + if (is_null($value)) { + return $message; + } + $properties = [ + 'RoutingModtagerAktoer', + ]; + try { + foreach ($properties as $property) { + if (isset($this->{$property})) { + throw new InvalidArgumentException(sprintf('The property RoutingKLEEmneHandling can\'t be set as the property %s is already set. Only one property must be set among these properties: RoutingKLEEmneHandling, %s.', $property, implode(', ', $properties)), __LINE__); + } + } + } catch (InvalidArgumentException $e) { + $message = $e->getMessage(); + } + + return $message; + } + /** + * Set RoutingKLEEmneHandling value + * This property belongs to a choice that allows only one property to exist. It is + * therefore removable from the request, consequently if the value assigned to this + * property is null, the property is removed from this object + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\RoutingKLEInfo $routingKLEEmneHandling + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingValg + */ + public function setRoutingKLEEmneHandling(\ItkDev\Serviceplatformen\SF2900\StructType\RoutingKLEInfo $routingKLEEmneHandling = null): self + { + // validation for constraint: choice(RoutingKLEEmneHandling, RoutingModtagerAktoer) + if ('' !== ($routingKLEEmneHandlingChoiceErrorMessage = self::validateRoutingKLEEmneHandlingForChoiceConstraintFromSetRoutingKLEEmneHandling($routingKLEEmneHandling))) { + throw new InvalidArgumentException($routingKLEEmneHandlingChoiceErrorMessage, __LINE__); + } + if (is_null($routingKLEEmneHandling) || (is_array($routingKLEEmneHandling) && empty($routingKLEEmneHandling))) { + unset($this->RoutingKLEEmneHandling); + } else { + $this->RoutingKLEEmneHandling = $routingKLEEmneHandling; + } + + return $this; + } + /** + * Get RoutingModtagerAktoer value + * @return string|null + */ + public function getRoutingModtagerAktoer(): ?string + { + return $this->RoutingModtagerAktoer ?? null; + } + /** + * This method is responsible for validating the value(s) passed to the setRoutingModtagerAktoer method + * This method is willingly generated in order to preserve the one-line inline validation within the setRoutingModtagerAktoer method + * This has to validate that the property which is being set is the only one among the given choices + * @param mixed $value + * @return string A non-empty message if the values does not match the validation rules + */ + public function validateRoutingModtagerAktoerForChoiceConstraintFromSetRoutingModtagerAktoer($value): string + { + $message = ''; + if (is_null($value)) { + return $message; + } + $properties = [ + 'RoutingKLEEmneHandling', + ]; + try { + foreach ($properties as $property) { + if (isset($this->{$property})) { + throw new InvalidArgumentException(sprintf('The property RoutingModtagerAktoer can\'t be set as the property %s is already set. Only one property must be set among these properties: RoutingModtagerAktoer, %s.', $property, implode(', ', $properties)), __LINE__); + } + } + } catch (InvalidArgumentException $e) { + $message = $e->getMessage(); + } + + return $message; + } + /** + * Set RoutingModtagerAktoer value + * This property belongs to a choice that allows only one property to exist. It is + * therefore removable from the request, consequently if the value assigned to this + * property is null, the property is removed from this object + * @throws InvalidArgumentException + * @param string $routingModtagerAktoer + * @return \ItkDev\Serviceplatformen\SF2900\StructType\RoutingValg + */ + public function setRoutingModtagerAktoer(string $routingModtagerAktoer = null): self + { + // validation for constraint: string + if (!is_null($routingModtagerAktoer) && !is_string($routingModtagerAktoer)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($routingModtagerAktoer, true), gettype($routingModtagerAktoer)), __LINE__); + } + // validation for constraint: choice(RoutingKLEEmneHandling, RoutingModtagerAktoer) + if ('' !== ($routingModtagerAktoerChoiceErrorMessage = self::validateRoutingModtagerAktoerForChoiceConstraintFromSetRoutingModtagerAktoer($routingModtagerAktoer))) { + throw new InvalidArgumentException($routingModtagerAktoerChoiceErrorMessage, __LINE__); + } + // validation for constraint: pattern([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}) + if (!is_null($routingModtagerAktoer) && !preg_match('/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', (string) $routingModtagerAktoer)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', var_export($routingModtagerAktoer, true)), __LINE__); + } + if (is_null($routingModtagerAktoer) || (is_array($routingModtagerAktoer) && empty($routingModtagerAktoer))) { + unset($this->RoutingModtagerAktoer); + } else { + $this->RoutingModtagerAktoer = $routingModtagerAktoer; + } + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/TilgaengeligeModtagereType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/TilgaengeligeModtagereType.php new file mode 100644 index 00000000..d618e9e0 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/TilgaengeligeModtagereType.php @@ -0,0 +1,102 @@ +setSystem($system); + } + /** + * Get System value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\ModtagerMedEndpointType[] + */ + public function getSystem(): ?array + { + return $this->System; + } + /** + * This method is responsible for validating the value(s) passed to the setSystem method + * This method is willingly generated in order to preserve the one-line inline validation within the setSystem method + * This has to validate that each item contained by the array match the itemType constraint + * @param array $values + * @return string A non-empty message if the values does not match the validation rules + */ + public static function validateSystemForArrayConstraintFromSetSystem(?array $values = []): string + { + if (!is_array($values)) { + return ''; + } + $message = ''; + $invalidValues = []; + foreach ($values as $tilgaengeligeModtagereTypeSystemItem) { + // validation for constraint: itemType + if (!$tilgaengeligeModtagereTypeSystemItem instanceof \ItkDev\Serviceplatformen\SF2900\StructType\ModtagerMedEndpointType) { + $invalidValues[] = is_object($tilgaengeligeModtagereTypeSystemItem) ? get_class($tilgaengeligeModtagereTypeSystemItem) : sprintf('%s(%s)', gettype($tilgaengeligeModtagereTypeSystemItem), var_export($tilgaengeligeModtagereTypeSystemItem, true)); + } + } + if (!empty($invalidValues)) { + $message = sprintf('The System property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\ModtagerMedEndpointType, %s given', is_object($invalidValues) ? get_class($invalidValues) : (is_array($invalidValues) ? implode(', ', $invalidValues) : gettype($invalidValues))); + } + unset($invalidValues); + + return $message; + } + /** + * Set System value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\ModtagerMedEndpointType[] $system + * @return \ItkDev\Serviceplatformen\SF2900\StructType\TilgaengeligeModtagereType + */ + public function setSystem(?array $system = null): self + { + // validation for constraint: array + if ('' !== ($systemArrayErrorMessage = self::validateSystemForArrayConstraintFromSetSystem($system))) { + throw new InvalidArgumentException($systemArrayErrorMessage, __LINE__); + } + $this->System = $system; + + return $this; + } + /** + * Add item to System value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\ModtagerMedEndpointType $item + * @return \ItkDev\Serviceplatformen\SF2900\StructType\TilgaengeligeModtagereType + */ + public function addToSystem(\ItkDev\Serviceplatformen\SF2900\StructType\ModtagerMedEndpointType $item): self + { + // validation for constraint: itemType + if (!$item instanceof \ItkDev\Serviceplatformen\SF2900\StructType\ModtagerMedEndpointType) { + throw new InvalidArgumentException(sprintf('The System property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\ModtagerMedEndpointType, %s given', is_object($item) ? get_class($item) : (is_array($item) ? implode(', ', $item) : gettype($item))), __LINE__); + } + $this->System[] = $item; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/TilstandListeType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/TilstandListeType.php new file mode 100644 index 00000000..944e7b60 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/TilstandListeType.php @@ -0,0 +1,102 @@ +setTilstand($tilstand); + } + /** + * Get Tilstand value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\TilstandType[] + */ + public function getTilstand(): array + { + return $this->Tilstand; + } + /** + * This method is responsible for validating the value(s) passed to the setTilstand method + * This method is willingly generated in order to preserve the one-line inline validation within the setTilstand method + * This has to validate that each item contained by the array match the itemType constraint + * @param array $values + * @return string A non-empty message if the values does not match the validation rules + */ + public static function validateTilstandForArrayConstraintFromSetTilstand(?array $values = []): string + { + if (!is_array($values)) { + return ''; + } + $message = ''; + $invalidValues = []; + foreach ($values as $tilstandListeTypeTilstandItem) { + // validation for constraint: itemType + if (!$tilstandListeTypeTilstandItem instanceof \ItkDev\Serviceplatformen\SF2900\StructType\TilstandType) { + $invalidValues[] = is_object($tilstandListeTypeTilstandItem) ? get_class($tilstandListeTypeTilstandItem) : sprintf('%s(%s)', gettype($tilstandListeTypeTilstandItem), var_export($tilstandListeTypeTilstandItem, true)); + } + } + if (!empty($invalidValues)) { + $message = sprintf('The Tilstand property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\TilstandType, %s given', is_object($invalidValues) ? get_class($invalidValues) : (is_array($invalidValues) ? implode(', ', $invalidValues) : gettype($invalidValues))); + } + unset($invalidValues); + + return $message; + } + /** + * Set Tilstand value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\TilstandType[] $tilstand + * @return \ItkDev\Serviceplatformen\SF2900\StructType\TilstandListeType + */ + public function setTilstand(array $tilstand): self + { + // validation for constraint: array + if ('' !== ($tilstandArrayErrorMessage = self::validateTilstandForArrayConstraintFromSetTilstand($tilstand))) { + throw new InvalidArgumentException($tilstandArrayErrorMessage, __LINE__); + } + $this->Tilstand = $tilstand; + + return $this; + } + /** + * Add item to Tilstand value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\TilstandType $item + * @return \ItkDev\Serviceplatformen\SF2900\StructType\TilstandListeType + */ + public function addToTilstand(\ItkDev\Serviceplatformen\SF2900\StructType\TilstandType $item): self + { + // validation for constraint: itemType + if (!$item instanceof \ItkDev\Serviceplatformen\SF2900\StructType\TilstandType) { + throw new InvalidArgumentException(sprintf('The Tilstand property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\TilstandType, %s given', is_object($item) ? get_class($item) : (is_array($item) ? implode(', ', $item) : gettype($item))), __LINE__); + } + $this->Tilstand[] = $item; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/TilstandType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/TilstandType.php new file mode 100644 index 00000000..ea939b2a --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/TilstandType.php @@ -0,0 +1,91 @@ +setFremdrift($fremdrift) + ->setVirkning($virkning); + } + /** + * Get Fremdrift value + * @return string + */ + public function getFremdrift(): string + { + return $this->Fremdrift; + } + /** + * Set Fremdrift value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\FremdriftType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\FremdriftType::getValidValues() + * @throws InvalidArgumentException + * @param string $fremdrift + * @return \ItkDev\Serviceplatformen\SF2900\StructType\TilstandType + */ + public function setFremdrift(string $fremdrift): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\FremdriftType::valueIsValid($fremdrift)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\FremdriftType', is_array($fremdrift) ? implode(', ', $fremdrift) : var_export($fremdrift, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\FremdriftType::getValidValues())), __LINE__); + } + $this->Fremdrift = $fremdrift; + + return $this; + } + /** + * Get Virkning value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + */ + public function getVirkning(): \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + { + return $this->Virkning; + } + /** + * Set Virkning value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType $virkning + * @return \ItkDev\Serviceplatformen\SF2900\StructType\TilstandType + */ + public function setVirkning(\ItkDev\Serviceplatformen\SF2900\StructType\VirkningType $virkning): self + { + $this->Virkning = $virkning; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/TransportkvitteringType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/TransportkvitteringType.php new file mode 100644 index 00000000..11cafabb --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/TransportkvitteringType.php @@ -0,0 +1,125 @@ +setTransportValideringsKode($transportValideringsKode) + ->setBegrundelse($begrundelse) + ->setFejlListe($fejlListe); + } + /** + * Get TransportValideringsKode value + * @return string + */ + public function getTransportValideringsKode(): string + { + return $this->TransportValideringsKode; + } + /** + * Set TransportValideringsKode value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\TransportValideringsKodeType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\TransportValideringsKodeType::getValidValues() + * @throws InvalidArgumentException + * @param string $transportValideringsKode + * @return \ItkDev\Serviceplatformen\SF2900\StructType\TransportkvitteringType + */ + public function setTransportValideringsKode(string $transportValideringsKode): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\TransportValideringsKodeType::valueIsValid($transportValideringsKode)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\TransportValideringsKodeType', is_array($transportValideringsKode) ? implode(', ', $transportValideringsKode) : var_export($transportValideringsKode, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\TransportValideringsKodeType::getValidValues())), __LINE__); + } + $this->TransportValideringsKode = $transportValideringsKode; + + return $this; + } + /** + * Get Begrundelse value + * @return string|null + */ + public function getBegrundelse(): ?string + { + return $this->Begrundelse; + } + /** + * Set Begrundelse value + * @param string $begrundelse + * @return \ItkDev\Serviceplatformen\SF2900\StructType\TransportkvitteringType + */ + public function setBegrundelse(?string $begrundelse = null): self + { + // validation for constraint: string + if (!is_null($begrundelse) && !is_string($begrundelse)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($begrundelse, true), gettype($begrundelse)), __LINE__); + } + $this->Begrundelse = $begrundelse; + + return $this; + } + /** + * Get FejlListe value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\FejlListeType|null + */ + public function getFejlListe(): ?\ItkDev\Serviceplatformen\SF2900\StructType\FejlListeType + { + return $this->FejlListe; + } + /** + * Set FejlListe value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\FejlListeType $fejlListe + * @return \ItkDev\Serviceplatformen\SF2900\StructType\TransportkvitteringType + */ + public function setFejlListe(?\ItkDev\Serviceplatformen\SF2900\StructType\FejlListeType $fejlListe = null): self + { + $this->FejlListe = $fejlListe; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/UUID_URN.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/UUID_URN.php new file mode 100644 index 00000000..6365dfe7 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/UUID_URN.php @@ -0,0 +1,186 @@ +setUUID($uUID) + ->setURN($uRN); + } + /** + * Get UUID value + * @return string|null + */ + public function getUUID(): ?string + { + return $this->UUID ?? null; + } + /** + * This method is responsible for validating the value(s) passed to the setUUID method + * This method is willingly generated in order to preserve the one-line inline validation within the setUUID method + * This has to validate that the property which is being set is the only one among the given choices + * @param mixed $value + * @return string A non-empty message if the values does not match the validation rules + */ + public function validateUUIDForChoiceConstraintFromSetUUID($value): string + { + $message = ''; + if (is_null($value)) { + return $message; + } + $properties = [ + 'URN', + ]; + try { + foreach ($properties as $property) { + if (isset($this->{$property})) { + throw new InvalidArgumentException(sprintf('The property UUID can\'t be set as the property %s is already set. Only one property must be set among these properties: UUID, %s.', $property, implode(', ', $properties)), __LINE__); + } + } + } catch (InvalidArgumentException $e) { + $message = $e->getMessage(); + } + + return $message; + } + /** + * Set UUID value + * This property belongs to a choice that allows only one property to exist. It is + * therefore removable from the request, consequently if the value assigned to this + * property is null, the property is removed from this object + * @throws InvalidArgumentException + * @param string $uUID + * @return \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN + */ + public function setUUID(?string $uUID = null): self + { + // validation for constraint: string + if (!is_null($uUID) && !is_string($uUID)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($uUID, true), gettype($uUID)), __LINE__); + } + // validation for constraint: choice(UUID, URN) + if ('' !== ($uUIDChoiceErrorMessage = self::validateUUIDForChoiceConstraintFromSetUUID($uUID))) { + throw new InvalidArgumentException($uUIDChoiceErrorMessage, __LINE__); + } + // validation for constraint: pattern([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}) + if (!is_null($uUID) && !preg_match('/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', (string) $uUID)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', var_export($uUID, true)), __LINE__); + } + if (is_null($uUID) || (is_array($uUID) && empty($uUID))) { + unset($this->UUID); + } else { + $this->UUID = $uUID; + } + + return $this; + } + /** + * Get URN value + * @return string|null + */ + public function getURN(): ?string + { + return $this->URN ?? null; + } + /** + * This method is responsible for validating the value(s) passed to the setURN method + * This method is willingly generated in order to preserve the one-line inline validation within the setURN method + * This has to validate that the property which is being set is the only one among the given choices + * @param mixed $value + * @return string A non-empty message if the values does not match the validation rules + */ + public function validateURNForChoiceConstraintFromSetURN($value): string + { + $message = ''; + if (is_null($value)) { + return $message; + } + $properties = [ + 'UUID', + ]; + try { + foreach ($properties as $property) { + if (isset($this->{$property})) { + throw new InvalidArgumentException(sprintf('The property URN can\'t be set as the property %s is already set. Only one property must be set among these properties: URN, %s.', $property, implode(', ', $properties)), __LINE__); + } + } + } catch (InvalidArgumentException $e) { + $message = $e->getMessage(); + } + + return $message; + } + /** + * Set URN value + * This property belongs to a choice that allows only one property to exist. It is + * therefore removable from the request, consequently if the value assigned to this + * property is null, the property is removed from this object + * @throws InvalidArgumentException + * @param string $uRN + * @return \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN + */ + public function setURN(?string $uRN = null): self + { + // validation for constraint: string + if (!is_null($uRN) && !is_string($uRN)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($uRN, true), gettype($uRN)), __LINE__); + } + // validation for constraint: choice(UUID, URN) + if ('' !== ($uRNChoiceErrorMessage = self::validateURNForChoiceConstraintFromSetURN($uRN))) { + throw new InvalidArgumentException($uRNChoiceErrorMessage, __LINE__); + } + // validation for constraint: pattern([uU][rR][nN]:[a-zA-Z0-9][a-zA-Z0-9-]{0,30}[a-zA-Z0-9]:[a-zA-Z0-9\(\)+,\\\-.:=@;$_!*'%/?#]+) + if (!is_null($uRN) && !preg_match('/[uU][rR][nN]:[a-zA-Z0-9][a-zA-Z0-9-]{0,30}[a-zA-Z0-9]:[a-zA-Z0-9\\(\\)+,\\\\\\-.:=@;$_!*\'%\/?#]+/', (string) $uRN)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[uU][rR][nN]:[a-zA-Z0-9][a-zA-Z0-9-]{0,30}[a-zA-Z0-9]:[a-zA-Z0-9\\(\\)+,\\\\\\-.:=@;$_!*\'%\/?#]+/', var_export($uRN, true)), __LINE__); + } + if (is_null($uRN) || (is_array($uRN) && empty($uRN))) { + unset($this->URN); + } else { + $this->URN = $uRN; + } + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/UUID_URN_Tekst.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/UUID_URN_Tekst.php new file mode 100644 index 00000000..4bfe4ab8 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/UUID_URN_Tekst.php @@ -0,0 +1,264 @@ +setUUID($uUID) + ->setURN($uRN) + ->setTekst($tekst); + } + /** + * Get UUID value + * @return string|null + */ + public function getUUID(): ?string + { + return $this->UUID ?? null; + } + /** + * This method is responsible for validating the value(s) passed to the setUUID method + * This method is willingly generated in order to preserve the one-line inline validation within the setUUID method + * This has to validate that the property which is being set is the only one among the given choices + * @param mixed $value + * @return string A non-empty message if the values does not match the validation rules + */ + public function validateUUIDForChoiceConstraintFromSetUUID($value): string + { + $message = ''; + if (is_null($value)) { + return $message; + } + $properties = [ + 'URN', + 'Tekst', + ]; + try { + foreach ($properties as $property) { + if (isset($this->{$property})) { + throw new InvalidArgumentException(sprintf('The property UUID can\'t be set as the property %s is already set. Only one property must be set among these properties: UUID, %s.', $property, implode(', ', $properties)), __LINE__); + } + } + } catch (InvalidArgumentException $e) { + $message = $e->getMessage(); + } + + return $message; + } + /** + * Set UUID value + * This property belongs to a choice that allows only one property to exist. It is + * therefore removable from the request, consequently if the value assigned to this + * property is null, the property is removed from this object + * @throws InvalidArgumentException + * @param string $uUID + * @return \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN_Tekst + */ + public function setUUID(?string $uUID = null): self + { + // validation for constraint: string + if (!is_null($uUID) && !is_string($uUID)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($uUID, true), gettype($uUID)), __LINE__); + } + // validation for constraint: choice(UUID, URN, Tekst) + if ('' !== ($uUIDChoiceErrorMessage = self::validateUUIDForChoiceConstraintFromSetUUID($uUID))) { + throw new InvalidArgumentException($uUIDChoiceErrorMessage, __LINE__); + } + // validation for constraint: pattern([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}) + if (!is_null($uUID) && !preg_match('/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', (string) $uUID)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/', var_export($uUID, true)), __LINE__); + } + if (is_null($uUID) || (is_array($uUID) && empty($uUID))) { + unset($this->UUID); + } else { + $this->UUID = $uUID; + } + + return $this; + } + /** + * Get URN value + * @return string|null + */ + public function getURN(): ?string + { + return $this->URN ?? null; + } + /** + * This method is responsible for validating the value(s) passed to the setURN method + * This method is willingly generated in order to preserve the one-line inline validation within the setURN method + * This has to validate that the property which is being set is the only one among the given choices + * @param mixed $value + * @return string A non-empty message if the values does not match the validation rules + */ + public function validateURNForChoiceConstraintFromSetURN($value): string + { + $message = ''; + if (is_null($value)) { + return $message; + } + $properties = [ + 'UUID', + 'Tekst', + ]; + try { + foreach ($properties as $property) { + if (isset($this->{$property})) { + throw new InvalidArgumentException(sprintf('The property URN can\'t be set as the property %s is already set. Only one property must be set among these properties: URN, %s.', $property, implode(', ', $properties)), __LINE__); + } + } + } catch (InvalidArgumentException $e) { + $message = $e->getMessage(); + } + + return $message; + } + /** + * Set URN value + * This property belongs to a choice that allows only one property to exist. It is + * therefore removable from the request, consequently if the value assigned to this + * property is null, the property is removed from this object + * @throws InvalidArgumentException + * @param string $uRN + * @return \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN_Tekst + */ + public function setURN(?string $uRN = null): self + { + // validation for constraint: string + if (!is_null($uRN) && !is_string($uRN)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($uRN, true), gettype($uRN)), __LINE__); + } + // validation for constraint: choice(UUID, URN, Tekst) + if ('' !== ($uRNChoiceErrorMessage = self::validateURNForChoiceConstraintFromSetURN($uRN))) { + throw new InvalidArgumentException($uRNChoiceErrorMessage, __LINE__); + } + // validation for constraint: pattern([uU][rR][nN]:[a-zA-Z0-9][a-zA-Z0-9-]{0,30}[a-zA-Z0-9]:[a-zA-Z0-9\(\)+,\\\-.:=@;$_!*'%/?#]+) + if (!is_null($uRN) && !preg_match('/[uU][rR][nN]:[a-zA-Z0-9][a-zA-Z0-9-]{0,30}[a-zA-Z0-9]:[a-zA-Z0-9\\(\\)+,\\\\\\-.:=@;$_!*\'%\/?#]+/', (string) $uRN)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a literal that is among the set of character sequences denoted by the regular expression /[uU][rR][nN]:[a-zA-Z0-9][a-zA-Z0-9-]{0,30}[a-zA-Z0-9]:[a-zA-Z0-9\\(\\)+,\\\\\\-.:=@;$_!*\'%\/?#]+/', var_export($uRN, true)), __LINE__); + } + if (is_null($uRN) || (is_array($uRN) && empty($uRN))) { + unset($this->URN); + } else { + $this->URN = $uRN; + } + + return $this; + } + /** + * Get Tekst value + * @return string|null + */ + public function getTekst(): ?string + { + return $this->Tekst ?? null; + } + /** + * This method is responsible for validating the value(s) passed to the setTekst method + * This method is willingly generated in order to preserve the one-line inline validation within the setTekst method + * This has to validate that the property which is being set is the only one among the given choices + * @param mixed $value + * @return string A non-empty message if the values does not match the validation rules + */ + public function validateTekstForChoiceConstraintFromSetTekst($value): string + { + $message = ''; + if (is_null($value)) { + return $message; + } + $properties = [ + 'UUID', + 'URN', + ]; + try { + foreach ($properties as $property) { + if (isset($this->{$property})) { + throw new InvalidArgumentException(sprintf('The property Tekst can\'t be set as the property %s is already set. Only one property must be set among these properties: Tekst, %s.', $property, implode(', ', $properties)), __LINE__); + } + } + } catch (InvalidArgumentException $e) { + $message = $e->getMessage(); + } + + return $message; + } + /** + * Set Tekst value + * This property belongs to a choice that allows only one property to exist. It is + * therefore removable from the request, consequently if the value assigned to this + * property is null, the property is removed from this object + * @throws InvalidArgumentException + * @param string $tekst + * @return \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN_Tekst + */ + public function setTekst(?string $tekst = null): self + { + // validation for constraint: string + if (!is_null($tekst) && !is_string($tekst)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($tekst, true), gettype($tekst)), __LINE__); + } + // validation for constraint: choice(UUID, URN, Tekst) + if ('' !== ($tekstChoiceErrorMessage = self::validateTekstForChoiceConstraintFromSetTekst($tekst))) { + throw new InvalidArgumentException($tekstChoiceErrorMessage, __LINE__); + } + if (is_null($tekst) || (is_array($tekst) && empty($tekst))) { + unset($this->Tekst); + } else { + $this->Tekst = $tekst; + } + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/VariantAttributterType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/VariantAttributterType.php new file mode 100644 index 00000000..81b1704c --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/VariantAttributterType.php @@ -0,0 +1,194 @@ +setVariantType($variantType) + ->setProduktion($produktion) + ->setOffentliggoerelse($offentliggoerelse) + ->setArkivering($arkivering) + ->setDelvistScannet($delvistScannet); + } + /** + * Get VariantType value + * @return string + */ + public function getVariantType(): string + { + return $this->VariantType; + } + /** + * Set VariantType value + * @param string $variantType + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantAttributterType + */ + public function setVariantType(string $variantType): self + { + // validation for constraint: string + if (!is_null($variantType) && !is_string($variantType)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($variantType, true), gettype($variantType)), __LINE__); + } + $this->VariantType = $variantType; + + return $this; + } + /** + * Get Produktion value + * @return string|null + */ + public function getProduktion(): ?string + { + return $this->Produktion; + } + /** + * Set Produktion value + * @param string $produktion + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantAttributterType + */ + public function setProduktion(?string $produktion = null): self + { + // validation for constraint: string + if (!is_null($produktion) && !is_string($produktion)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($produktion, true), gettype($produktion)), __LINE__); + } + $this->Produktion = $produktion; + + return $this; + } + /** + * Get Offentliggoerelse value + * @return bool|null + */ + public function getOffentliggoerelse(): ?bool + { + return $this->Offentliggoerelse; + } + /** + * Set Offentliggoerelse value + * @param bool $offentliggoerelse + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantAttributterType + */ + public function setOffentliggoerelse(?bool $offentliggoerelse = null): self + { + // validation for constraint: boolean + if (!is_null($offentliggoerelse) && !is_bool($offentliggoerelse)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a bool, %s given', var_export($offentliggoerelse, true), gettype($offentliggoerelse)), __LINE__); + } + $this->Offentliggoerelse = $offentliggoerelse; + + return $this; + } + /** + * Get Arkivering value + * @return bool|null + */ + public function getArkivering(): ?bool + { + return $this->Arkivering; + } + /** + * Set Arkivering value + * @param bool $arkivering + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantAttributterType + */ + public function setArkivering(?bool $arkivering = null): self + { + // validation for constraint: boolean + if (!is_null($arkivering) && !is_bool($arkivering)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a bool, %s given', var_export($arkivering, true), gettype($arkivering)), __LINE__); + } + $this->Arkivering = $arkivering; + + return $this; + } + /** + * Get DelvistScannet value + * @return bool|null + */ + public function getDelvistScannet(): ?bool + { + return $this->DelvistScannet; + } + /** + * Set DelvistScannet value + * @param bool $delvistScannet + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantAttributterType + */ + public function setDelvistScannet(?bool $delvistScannet = null): self + { + // validation for constraint: boolean + if (!is_null($delvistScannet) && !is_bool($delvistScannet)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a bool, %s given', var_export($delvistScannet, true), gettype($delvistScannet)), __LINE__); + } + $this->DelvistScannet = $delvistScannet; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/VariantListeType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/VariantListeType.php new file mode 100644 index 00000000..2a588aff --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/VariantListeType.php @@ -0,0 +1,102 @@ +setVariant($variant); + } + /** + * Get Variant value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantType[] + */ + public function getVariant(): array + { + return $this->Variant; + } + /** + * This method is responsible for validating the value(s) passed to the setVariant method + * This method is willingly generated in order to preserve the one-line inline validation within the setVariant method + * This has to validate that each item contained by the array match the itemType constraint + * @param array $values + * @return string A non-empty message if the values does not match the validation rules + */ + public static function validateVariantForArrayConstraintFromSetVariant(?array $values = []): string + { + if (!is_array($values)) { + return ''; + } + $message = ''; + $invalidValues = []; + foreach ($values as $variantListeTypeVariantItem) { + // validation for constraint: itemType + if (!$variantListeTypeVariantItem instanceof \ItkDev\Serviceplatformen\SF2900\StructType\VariantType) { + $invalidValues[] = is_object($variantListeTypeVariantItem) ? get_class($variantListeTypeVariantItem) : sprintf('%s(%s)', gettype($variantListeTypeVariantItem), var_export($variantListeTypeVariantItem, true)); + } + } + if (!empty($invalidValues)) { + $message = sprintf('The Variant property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\VariantType, %s given', is_object($invalidValues) ? get_class($invalidValues) : (is_array($invalidValues) ? implode(', ', $invalidValues) : gettype($invalidValues))); + } + unset($invalidValues); + + return $message; + } + /** + * Set Variant value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\VariantType[] $variant + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantListeType + */ + public function setVariant(array $variant): self + { + // validation for constraint: array + if ('' !== ($variantArrayErrorMessage = self::validateVariantForArrayConstraintFromSetVariant($variant))) { + throw new InvalidArgumentException($variantArrayErrorMessage, __LINE__); + } + $this->Variant = $variant; + + return $this; + } + /** + * Add item to Variant value + * @throws InvalidArgumentException + * @param \ItkDev\Serviceplatformen\SF2900\StructType\VariantType $item + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantListeType + */ + public function addToVariant(\ItkDev\Serviceplatformen\SF2900\StructType\VariantType $item): self + { + // validation for constraint: itemType + if (!$item instanceof \ItkDev\Serviceplatformen\SF2900\StructType\VariantType) { + throw new InvalidArgumentException(sprintf('The Variant property can only contain items of type \ItkDev\Serviceplatformen\SF2900\StructType\VariantType, %s given', is_object($item) ? get_class($item) : (is_array($item) ? implode(', ', $item) : gettype($item))), __LINE__); + } + $this->Variant[] = $item; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/VariantType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/VariantType.php new file mode 100644 index 00000000..e67f00ff --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/VariantType.php @@ -0,0 +1,185 @@ +setVirkning($virkning) + ->setRolle($rolle) + ->setIndeks($indeks) + ->setVariantAttributter($variantAttributter) + ->setDelAttributter($delAttributter); + } + /** + * Get Virkning value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + */ + public function getVirkning(): \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + { + return $this->Virkning; + } + /** + * Set Virkning value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType $virkning + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantType + */ + public function setVirkning(\ItkDev\Serviceplatformen\SF2900\StructType\VirkningType $virkning): self + { + $this->Virkning = $virkning; + + return $this; + } + /** + * Get Rolle value + * @return string + */ + public function getRolle(): string + { + return $this->Rolle; + } + /** + * Set Rolle value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\VariantRolleType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\VariantRolleType::getValidValues() + * @throws InvalidArgumentException + * @param string $rolle + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantType + */ + public function setRolle(string $rolle): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\VariantRolleType::valueIsValid($rolle)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\VariantRolleType', is_array($rolle) ? implode(', ', $rolle) : var_export($rolle, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\VariantRolleType::getValidValues())), __LINE__); + } + $this->Rolle = $rolle; + + return $this; + } + /** + * Get Indeks value + * @return string + */ + public function getIndeks(): string + { + return $this->Indeks; + } + /** + * Set Indeks value + * @param string $indeks + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantType + */ + public function setIndeks(string $indeks): self + { + // validation for constraint: string + if (!is_null($indeks) && !is_string($indeks)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($indeks, true), gettype($indeks)), __LINE__); + } + $this->Indeks = $indeks; + + return $this; + } + /** + * Get VariantAttributter value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantAttributterType + */ + public function getVariantAttributter(): \ItkDev\Serviceplatformen\SF2900\StructType\VariantAttributterType + { + return $this->VariantAttributter; + } + /** + * Set VariantAttributter value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\VariantAttributterType $variantAttributter + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantType + */ + public function setVariantAttributter(\ItkDev\Serviceplatformen\SF2900\StructType\VariantAttributterType $variantAttributter): self + { + $this->VariantAttributter = $variantAttributter; + + return $this; + } + /** + * Get DelAttributter value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\DelAttributterType + */ + public function getDelAttributter(): \ItkDev\Serviceplatformen\SF2900\StructType\DelAttributterType + { + return $this->DelAttributter; + } + /** + * Set DelAttributter value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\DelAttributterType $delAttributter + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VariantType + */ + public function setDelAttributter(\ItkDev\Serviceplatformen\SF2900\StructType\DelAttributterType $delAttributter): self + { + $this->DelAttributter = $delAttributter; + + return $this; + } +} diff --git a/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/VirkningType.php b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/VirkningType.php new file mode 100644 index 00000000..9fda3702 --- /dev/null +++ b/generated-classes/ItkDev/Serviceplatformen/SF2900/StructType/VirkningType.php @@ -0,0 +1,193 @@ +setAktoer($aktoer) + ->setAktoerType($aktoerType) + ->setFraTidspunkt($fraTidspunkt) + ->setTilTidspunkt($tilTidspunkt) + ->setNoteTekst($noteTekst); + } + /** + * Get Aktoer value + * @return \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN + */ + public function getAktoer(): \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN + { + return $this->Aktoer; + } + /** + * Set Aktoer value + * @param \ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN $aktoer + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + */ + public function setAktoer(\ItkDev\Serviceplatformen\SF2900\StructType\UUID_URN $aktoer): self + { + $this->Aktoer = $aktoer; + + return $this; + } + /** + * Get AktoerType value + * @return string + */ + public function getAktoerType(): string + { + return $this->AktoerType; + } + /** + * Set AktoerType value + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\AktoerTypeType::valueIsValid() + * @uses \ItkDev\Serviceplatformen\SF2900\EnumType\AktoerTypeType::getValidValues() + * @throws InvalidArgumentException + * @param string $aktoerType + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + */ + public function setAktoerType(string $aktoerType): self + { + // validation for constraint: enumeration + if (!\ItkDev\Serviceplatformen\SF2900\EnumType\AktoerTypeType::valueIsValid($aktoerType)) { + throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \ItkDev\Serviceplatformen\SF2900\EnumType\AktoerTypeType', is_array($aktoerType) ? implode(', ', $aktoerType) : var_export($aktoerType, true), implode(', ', \ItkDev\Serviceplatformen\SF2900\EnumType\AktoerTypeType::getValidValues())), __LINE__); + } + $this->AktoerType = $aktoerType; + + return $this; + } + /** + * Get FraTidspunkt value + * @return string|null + */ + public function getFraTidspunkt(): ?string + { + return $this->FraTidspunkt; + } + /** + * Set FraTidspunkt value + * @param string $fraTidspunkt + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + */ + public function setFraTidspunkt(?string $fraTidspunkt = null): self + { + // validation for constraint: string + if (!is_null($fraTidspunkt) && !is_string($fraTidspunkt)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($fraTidspunkt, true), gettype($fraTidspunkt)), __LINE__); + } + $this->FraTidspunkt = $fraTidspunkt; + + return $this; + } + /** + * Get TilTidspunkt value + * @return string|null + */ + public function getTilTidspunkt(): ?string + { + return $this->TilTidspunkt; + } + /** + * Set TilTidspunkt value + * @param string $tilTidspunkt + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + */ + public function setTilTidspunkt(?string $tilTidspunkt = null): self + { + // validation for constraint: string + if (!is_null($tilTidspunkt) && !is_string($tilTidspunkt)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($tilTidspunkt, true), gettype($tilTidspunkt)), __LINE__); + } + $this->TilTidspunkt = $tilTidspunkt; + + return $this; + } + /** + * Get NoteTekst value + * @return string|null + */ + public function getNoteTekst(): ?string + { + return $this->NoteTekst; + } + /** + * Set NoteTekst value + * @param string $noteTekst + * @return \ItkDev\Serviceplatformen\SF2900\StructType\VirkningType + */ + public function setNoteTekst(?string $noteTekst = null): self + { + // validation for constraint: string + if (!is_null($noteTekst) && !is_string($noteTekst)) { + throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($noteTekst, true), gettype($noteTekst)), __LINE__); + } + $this->NoteTekst = $noteTekst; + + return $this; + } +} diff --git a/lib/digitaliseringskataloget/Sftp/BusinessReceipt.php b/lib/digitaliseringskataloget/Sftp/BusinessReceipt.php new file mode 100644 index 00000000..86c439d2 --- /dev/null +++ b/lib/digitaliseringskataloget/Sftp/BusinessReceipt.php @@ -0,0 +1,11 @@ +fileTransferUUID; + } + + /** + * Sets a new fileTransferUUID + * + * @param string $fileTransferUUID + * @return self + */ + public function setFileTransferUUID($fileTransferUUID) + { + $this->fileTransferUUID = $fileTransferUUID; + return $this; + } + + /** + * Gets as filename + * + * @return string + */ + public function getFilename() + { + return $this->filename; + } + + /** + * Sets a new filename + * + * @param string $filename + * @return self + */ + public function setFilename($filename) + { + $this->filename = $filename; + return $this; + } + + /** + * Gets as recipient + * + * @return string + */ + public function getRecipient() + { + return $this->recipient; + } + + /** + * Sets a new recipient + * + * @param string $recipient + * @return self + */ + public function setRecipient($recipient) + { + $this->recipient = $recipient; + return $this; + } + + /** + * Gets as fileAcceptance + * + * @return string + */ + public function getFileAcceptance() + { + return $this->fileAcceptance; + } + + /** + * Sets a new fileAcceptance + * + * @param string $fileAcceptance + * @return self + */ + public function setFileAcceptance($fileAcceptance) + { + $this->fileAcceptance = $fileAcceptance; + return $this; + } + + /** + * Gets as reason + * + * @return string + */ + public function getReason() + { + return $this->reason; + } + + /** + * Sets a new reason + * + * @param string $reason + * @return self + */ + public function setReason($reason) + { + $this->reason = $reason; + return $this; + } +} + diff --git a/lib/digitaliseringskataloget/Sftp/BusinessResponse.php b/lib/digitaliseringskataloget/Sftp/BusinessResponse.php new file mode 100644 index 00000000..298a6859 --- /dev/null +++ b/lib/digitaliseringskataloget/Sftp/BusinessResponse.php @@ -0,0 +1,11 @@ +responseMessage; + } + + /** + * Sets a new responseMessage + * + * @param string $responseMessage + * @return self + */ + public function setResponseMessage($responseMessage) + { + $this->responseMessage = $responseMessage; + return $this; + } + + /** + * Adds as errorMessage + * + * @return self + * @param \Digitaliseringskataloget\Sftp\ErrorMessageType $errorMessage + */ + public function addToErrorMessage(\Digitaliseringskataloget\Sftp\ErrorMessageType $errorMessage) + { + $this->errorMessage[] = $errorMessage; + return $this; + } + + /** + * isset errorMessage + * + * @param int|string $index + * @return bool + */ + public function issetErrorMessage($index) + { + return isset($this->errorMessage[$index]); + } + + /** + * unset errorMessage + * + * @param int|string $index + * @return void + */ + public function unsetErrorMessage($index) + { + unset($this->errorMessage[$index]); + } + + /** + * Gets as errorMessage + * + * @return \Digitaliseringskataloget\Sftp\ErrorMessageType[] + */ + public function getErrorMessage() + { + return $this->errorMessage; + } + + /** + * Sets a new errorMessage + * + * @param \Digitaliseringskataloget\Sftp\ErrorMessageType[] $errorMessage + * @return self + */ + public function setErrorMessage(?array $errorMessage = null) + { + $this->errorMessage = $errorMessage; + return $this; + } +} + diff --git a/lib/digitaliseringskataloget/Sftp/ErrorMessageType.php b/lib/digitaliseringskataloget/Sftp/ErrorMessageType.php new file mode 100644 index 00000000..ec36f914 --- /dev/null +++ b/lib/digitaliseringskataloget/Sftp/ErrorMessageType.php @@ -0,0 +1,94 @@ +errorCode; + } + + /** + * Sets a new errorCode + * + * @param int $errorCode + * @return self + */ + public function setErrorCode($errorCode) + { + $this->errorCode = $errorCode; + return $this; + } + + /** + * Gets as errorCodeDescription + * + * @return string + */ + public function getErrorCodeDescription() + { + return $this->errorCodeDescription; + } + + /** + * Sets a new errorCodeDescription + * + * @param string $errorCodeDescription + * @return self + */ + public function setErrorCodeDescription($errorCodeDescription) + { + $this->errorCodeDescription = $errorCodeDescription; + return $this; + } + + /** + * Gets as errorDescription + * + * @return string + */ + public function getErrorDescription() + { + return $this->errorDescription; + } + + /** + * Sets a new errorDescription + * + * @param string $errorDescription + * @return self + */ + public function setErrorDescription($errorDescription) + { + $this->errorDescription = $errorDescription; + return $this; + } +} + diff --git a/lib/digitaliseringskataloget/Sftp/FileContentDescriptorType.php b/lib/digitaliseringskataloget/Sftp/FileContentDescriptorType.php new file mode 100644 index 00000000..7c89b54d --- /dev/null +++ b/lib/digitaliseringskataloget/Sftp/FileContentDescriptorType.php @@ -0,0 +1,40 @@ +sFTPDynamicRoutingInfo; + } + + /** + * Sets a new sFTPDynamicRoutingInfo + * + * @param \Digitaliseringskataloget\Sftp\SFTPDynamicRoutingInfoType $sFTPDynamicRoutingInfo + * @return self + */ + public function setSFTPDynamicRoutingInfo(?\Digitaliseringskataloget\Sftp\SFTPDynamicRoutingInfoType $sFTPDynamicRoutingInfo = null) + { + $this->sFTPDynamicRoutingInfo = $sFTPDynamicRoutingInfo; + return $this; + } +} + diff --git a/lib/digitaliseringskataloget/Sftp/FileDescriptorType.php b/lib/digitaliseringskataloget/Sftp/FileDescriptorType.php new file mode 100644 index 00000000..fcb55bc8 --- /dev/null +++ b/lib/digitaliseringskataloget/Sftp/FileDescriptorType.php @@ -0,0 +1,184 @@ +fileName; + } + + /** + * Sets a new fileName + * + * @param string $fileName + * @return self + */ + public function setFileName($fileName) + { + $this->fileName = $fileName; + return $this; + } + + /** + * Gets as sizeInBytes + * + * @return int + */ + public function getSizeInBytes() + { + return $this->sizeInBytes; + } + + /** + * Sets a new sizeInBytes + * + * @param int $sizeInBytes + * @return self + */ + public function setSizeInBytes($sizeInBytes) + { + $this->sizeInBytes = $sizeInBytes; + return $this; + } + + /** + * Gets as sender + * + * @return string + */ + public function getSender() + { + return $this->sender; + } + + /** + * Sets a new sender + * + * @param string $sender + * @return self + */ + public function setSender($sender) + { + $this->sender = $sender; + return $this; + } + + /** + * Gets as sendersFileId + * + * @return string + */ + public function getSendersFileId() + { + return $this->sendersFileId; + } + + /** + * Sets a new sendersFileId + * + * @param string $sendersFileId + * @return self + */ + public function setSendersFileId($sendersFileId) + { + $this->sendersFileId = $sendersFileId; + return $this; + } + + /** + * Adds as recipients + * + * @return self + * @param string $recipients + */ + public function addToRecipients($recipients) + { + $this->recipients[] = $recipients; + return $this; + } + + /** + * isset recipients + * + * @param int|string $index + * @return bool + */ + public function issetRecipients($index) + { + return isset($this->recipients[$index]); + } + + /** + * unset recipients + * + * @param int|string $index + * @return void + */ + public function unsetRecipients($index) + { + unset($this->recipients[$index]); + } + + /** + * Gets as recipients + * + * @return string[] + */ + public function getRecipients() + { + return $this->recipients; + } + + /** + * Sets a new recipients + * + * @param string $recipients + * @return self + */ + public function setRecipients(array $recipients) + { + $this->recipients = $recipients; + return $this; + } +} + diff --git a/lib/digitaliseringskataloget/Sftp/FileMetadata.php b/lib/digitaliseringskataloget/Sftp/FileMetadata.php new file mode 100644 index 00000000..5795c3dc --- /dev/null +++ b/lib/digitaliseringskataloget/Sftp/FileMetadata.php @@ -0,0 +1,11 @@ +fileTransferUUID; + } + + /** + * Sets a new fileTransferUUID + * + * @param string $fileTransferUUID + * @return self + */ + public function setFileTransferUUID($fileTransferUUID) + { + $this->fileTransferUUID = $fileTransferUUID; + return $this; + } + + /** + * Gets as fileDescriptor + * + * @return \Digitaliseringskataloget\Sftp\FileDescriptorType + */ + public function getFileDescriptor() + { + return $this->fileDescriptor; + } + + /** + * Sets a new fileDescriptor + * + * @param \Digitaliseringskataloget\Sftp\FileDescriptorType $fileDescriptor + * @return self + */ + public function setFileDescriptor(\Digitaliseringskataloget\Sftp\FileDescriptorType $fileDescriptor) + { + $this->fileDescriptor = $fileDescriptor; + return $this; + } + + /** + * Gets as fileContentDescriptor + * + * @return \Digitaliseringskataloget\Sftp\FileContentDescriptorType + */ + public function getFileContentDescriptor() + { + return $this->fileContentDescriptor; + } + + /** + * Sets a new fileContentDescriptor + * + * @param \Digitaliseringskataloget\Sftp\FileContentDescriptorType $fileContentDescriptor + * @return self + */ + public function setFileContentDescriptor(\Digitaliseringskataloget\Sftp\FileContentDescriptorType $fileContentDescriptor) + { + $this->fileContentDescriptor = $fileContentDescriptor; + return $this; + } +} + diff --git a/lib/digitaliseringskataloget/Sftp/ReceiptType.php b/lib/digitaliseringskataloget/Sftp/ReceiptType.php new file mode 100644 index 00000000..efcc6787 --- /dev/null +++ b/lib/digitaliseringskataloget/Sftp/ReceiptType.php @@ -0,0 +1,40 @@ +message; + } + + /** + * Sets a new message + * + * @param string $message + * @return self + */ + public function setMessage($message) + { + $this->message = $message; + return $this; + } +} + diff --git a/lib/digitaliseringskataloget/Sftp/RouteParameterType.php b/lib/digitaliseringskataloget/Sftp/RouteParameterType.php new file mode 100644 index 00000000..71f4ae8b --- /dev/null +++ b/lib/digitaliseringskataloget/Sftp/RouteParameterType.php @@ -0,0 +1,14 @@ +value($value); + } + + /** + * Gets or sets the inner value + * + * @param \DateTime $value + * @return \DateTime + */ + public function value() + { + if ($args = func_get_args()) { + $this->__value = $args[0]; + } + return $this->__value; + } + + /** + * Gets a string value + * + * @return string + */ + public function __toString() + { + return strval($this->__value); + } +} + diff --git a/lib/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfo.php b/lib/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfo.php new file mode 100644 index 00000000..7441400b --- /dev/null +++ b/lib/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfo.php @@ -0,0 +1,11 @@ +infRef; + } + + /** + * Sets a new infRef + * + * @param string $infRef + * @return self + */ + public function setInfRef($infRef) + { + $this->infRef = $infRef; + return $this; + } + + /** + * Gets as senderItSystem + * + * @return string + */ + public function getSenderItSystem() + { + return $this->senderItSystem; + } + + /** + * Sets a new senderItSystem + * + * @param string $senderItSystem + * @return self + */ + public function setSenderItSystem($senderItSystem) + { + $this->senderItSystem = $senderItSystem; + return $this; + } + + /** + * Gets as senderAuthority + * + * @return string + */ + public function getSenderAuthority() + { + return $this->senderAuthority; + } + + /** + * Sets a new senderAuthority + * + * @param string $senderAuthority + * @return self + */ + public function setSenderAuthority($senderAuthority) + { + $this->senderAuthority = $senderAuthority; + return $this; + } + + /** + * Gets as transactionId + * + * @return string + */ + public function getTransactionId() + { + return $this->transactionId; + } + + /** + * Sets a new transactionId + * + * @param string $transactionId + * @return self + */ + public function setTransactionId($transactionId) + { + $this->transactionId = $transactionId; + return $this; + } + + /** + * Gets as senderTimestamp + * + * @return \DateTime + */ + public function getSenderTimestamp() + { + return $this->senderTimestamp; + } + + /** + * Sets a new senderTimestamp + * + * @param \DateTime $senderTimestamp + * @return self + */ + public function setSenderTimestamp(\DateTime $senderTimestamp) + { + $this->senderTimestamp = $senderTimestamp; + return $this; + } + + /** + * Gets as recipientItSystem + * + * @return string + */ + public function getRecipientItSystem() + { + return $this->recipientItSystem; + } + + /** + * Sets a new recipientItSystem + * + * @param string $recipientItSystem + * @return self + */ + public function setRecipientItSystem($recipientItSystem) + { + $this->recipientItSystem = $recipientItSystem; + return $this; + } + + /** + * Gets as recipientAuthority + * + * @return string + */ + public function getRecipientAuthority() + { + return $this->recipientAuthority; + } + + /** + * Sets a new recipientAuthority + * + * @param string $recipientAuthority + * @return self + */ + public function setRecipientAuthority($recipientAuthority) + { + $this->recipientAuthority = $recipientAuthority; + return $this; + } + + /** + * Adds as routeParameter + * + * @return self + * @param \Digitaliseringskataloget\Sftp\RouteParameterType $routeParameter + */ + public function addToRouteParameterList(\Digitaliseringskataloget\Sftp\RouteParameterType $routeParameter) + { + $this->routeParameterList[] = $routeParameter; + return $this; + } + + /** + * isset routeParameterList + * + * @param int|string $index + * @return bool + */ + public function issetRouteParameterList($index) + { + return isset($this->routeParameterList[$index]); + } + + /** + * unset routeParameterList + * + * @param int|string $index + * @return void + */ + public function unsetRouteParameterList($index) + { + unset($this->routeParameterList[$index]); + } + + /** + * Gets as routeParameterList + * + * @return \Digitaliseringskataloget\Sftp\RouteParameterType[] + */ + public function getRouteParameterList() + { + return $this->routeParameterList; + } + + /** + * Sets a new routeParameterList + * + * @param \Digitaliseringskataloget\Sftp\RouteParameterType[] $routeParameterList + * @return self + */ + public function setRouteParameterList(?array $routeParameterList = null) + { + $this->routeParameterList = $routeParameterList; + return $this; + } +} + diff --git a/lib/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfoType/RouteParameterListAType.php b/lib/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfoType/RouteParameterListAType.php new file mode 100644 index 00000000..c868816e --- /dev/null +++ b/lib/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfoType/RouteParameterListAType.php @@ -0,0 +1,91 @@ +routeParameter[] = $routeParameter; + return $this; + } + + /** + * isset routeParameter + * + * Supplerende parameter der anvendes i routing, når routing er konfigureret til det. + * Hvis der skal anvendes en RouteParameter, er det defineret specifikt for den enkelte integration. + * + * @param int|string $index + * @return bool + */ + public function issetRouteParameter($index) + { + return isset($this->routeParameter[$index]); + } + + /** + * unset routeParameter + * + * Supplerende parameter der anvendes i routing, når routing er konfigureret til det. + * Hvis der skal anvendes en RouteParameter, er det defineret specifikt for den enkelte integration. + * + * @param int|string $index + * @return void + */ + public function unsetRouteParameter($index) + { + unset($this->routeParameter[$index]); + } + + /** + * Gets as routeParameter + * + * Supplerende parameter der anvendes i routing, når routing er konfigureret til det. + * Hvis der skal anvendes en RouteParameter, er det defineret specifikt for den enkelte integration. + * + * @return \Digitaliseringskataloget\Sftp\RouteParameterType[] + */ + public function getRouteParameter() + { + return $this->routeParameter; + } + + /** + * Sets a new routeParameter + * + * Supplerende parameter der anvendes i routing, når routing er konfigureret til det. + * Hvis der skal anvendes en RouteParameter, er det defineret specifikt for den enkelte integration. + * + * @param \Digitaliseringskataloget\Sftp\RouteParameterType[] $routeParameter + * @return self + */ + public function setRouteParameter(array $routeParameter) + { + $this->routeParameter = $routeParameter; + return $this; + } +} + diff --git a/lib/digitaliseringskataloget/Sftp/TechnicalReceipt.php b/lib/digitaliseringskataloget/Sftp/TechnicalReceipt.php new file mode 100644 index 00000000..75f4f870 --- /dev/null +++ b/lib/digitaliseringskataloget/Sftp/TechnicalReceipt.php @@ -0,0 +1,11 @@ +fileTransferUUID; + } + + /** + * Sets a new fileTransferUUID + * + * @param string $fileTransferUUID + * @return self + */ + public function setFileTransferUUID($fileTransferUUID) + { + $this->fileTransferUUID = $fileTransferUUID; + return $this; + } + + /** + * Gets as sendersFileId + * + * @return string + */ + public function getSendersFileId() + { + return $this->sendersFileId; + } + + /** + * Sets a new sendersFileId + * + * @param string $sendersFileId + * @return self + */ + public function setSendersFileId($sendersFileId) + { + $this->sendersFileId = $sendersFileId; + return $this; + } + + /** + * Gets as receipt + * + * @return \Digitaliseringskataloget\Sftp\ReceiptType + */ + public function getReceipt() + { + return $this->receipt; + } + + /** + * Sets a new receipt + * + * @param \Digitaliseringskataloget\Sftp\ReceiptType $receipt + * @return self + */ + public function setReceipt(?\Digitaliseringskataloget\Sftp\ReceiptType $receipt = null) + { + $this->receipt = $receipt; + return $this; + } + + /** + * Adds as errorMessage + * + * @return self + * @param \Digitaliseringskataloget\Sftp\ErrorMessageType $errorMessage + */ + public function addToErrorMessage(\Digitaliseringskataloget\Sftp\ErrorMessageType $errorMessage) + { + $this->errorMessage[] = $errorMessage; + return $this; + } + + /** + * isset errorMessage + * + * @param int|string $index + * @return bool + */ + public function issetErrorMessage($index) + { + return isset($this->errorMessage[$index]); + } + + /** + * unset errorMessage + * + * @param int|string $index + * @return void + */ + public function unsetErrorMessage($index) + { + unset($this->errorMessage[$index]); + } + + /** + * Gets as errorMessage + * + * @return \Digitaliseringskataloget\Sftp\ErrorMessageType[] + */ + public function getErrorMessage() + { + return $this->errorMessage; + } + + /** + * Sets a new errorMessage + * + * @param \Digitaliseringskataloget\Sftp\ErrorMessageType[] $errorMessage + * @return self + */ + public function setErrorMessage(?array $errorMessage = null) + { + $this->errorMessage = $errorMessage; + return $this; + } +} + diff --git a/lib/digitaliseringskataloget/Sftp/Trigger.php b/lib/digitaliseringskataloget/Sftp/Trigger.php new file mode 100644 index 00000000..0b048267 --- /dev/null +++ b/lib/digitaliseringskataloget/Sftp/Trigger.php @@ -0,0 +1,11 @@ +fileDescriptor; + } + + /** + * Sets a new fileDescriptor + * + * @param \Digitaliseringskataloget\Sftp\FileDescriptorType $fileDescriptor + * @return self + */ + public function setFileDescriptor(\Digitaliseringskataloget\Sftp\FileDescriptorType $fileDescriptor) + { + $this->fileDescriptor = $fileDescriptor; + return $this; + } + + /** + * Gets as fileContentDescriptor + * + * @return \Digitaliseringskataloget\Sftp\FileContentDescriptorType + */ + public function getFileContentDescriptor() + { + return $this->fileContentDescriptor; + } + + /** + * Sets a new fileContentDescriptor + * + * @param \Digitaliseringskataloget\Sftp\FileContentDescriptorType $fileContentDescriptor + * @return self + */ + public function setFileContentDescriptor(\Digitaliseringskataloget\Sftp\FileContentDescriptorType $fileContentDescriptor) + { + $this->fileContentDescriptor = $fileContentDescriptor; + return $this; + } +} + diff --git a/lib/metadata/digitaliseringskataloget/Sftp/BusinessReceipt.yml b/lib/metadata/digitaliseringskataloget/Sftp/BusinessReceipt.yml new file mode 100644 index 00000000..8476bab5 --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/BusinessReceipt.yml @@ -0,0 +1,15 @@ +Digitaliseringskataloget\Sftp\BusinessReceipt: + xml_namespaces: + memo: 'https://DigitalPost.dk/MeMo-1' + gln: 'https://www.gs1.dk/gs1-standarder/identifikation/gln-global-location-number/' + udd: 'https://www.dst.dk/da/TilSalg/Forskningsservice/Dokumentation/hoejkvalitetsvariable/elevregister-2/udd#' + rid: 'https://www.nets.eu/dk-da/l%C3%B8sninger/nemid/nemid-tjenesteudbyder/supplerende-tjenester/pid-rid-cpr-tjenester' + pnum: 'https://indberet.virk.dk/myndigheder/stat/ERST/P-enhedsloesningen' + form: 'http://www.form-online.dk/' + kle: 'http://kle-online.dk/' + dmv: 'https://motorregister.skat.dk/' + grd: 'https://data.gov.dk/model/core/' + sor: 'https://services.nsi.dk/en/Services/SOR' + sftp: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' + xml_root_name: 'sftp:BusinessReceipt' + xml_root_namespace: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' diff --git a/lib/metadata/digitaliseringskataloget/Sftp/BusinessReceiptType.yml b/lib/metadata/digitaliseringskataloget/Sftp/BusinessReceiptType.yml new file mode 100644 index 00000000..ccddeb6b --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/BusinessReceiptType.yml @@ -0,0 +1,42 @@ +Digitaliseringskataloget\Sftp\BusinessReceiptType: + properties: + fileTransferUUID: + expose: true + access_type: public_method + serialized_name: FileTransferUUID + accessor: + getter: getFileTransferUUID + setter: setFileTransferUUID + type: string + filename: + expose: true + access_type: public_method + serialized_name: Filename + accessor: + getter: getFilename + setter: setFilename + type: string + recipient: + expose: true + access_type: public_method + serialized_name: Recipient + accessor: + getter: getRecipient + setter: setRecipient + type: string + fileAcceptance: + expose: true + access_type: public_method + serialized_name: FileAcceptance + accessor: + getter: getFileAcceptance + setter: setFileAcceptance + type: string + reason: + expose: true + access_type: public_method + serialized_name: Reason + accessor: + getter: getReason + setter: setReason + type: string diff --git a/lib/metadata/digitaliseringskataloget/Sftp/BusinessResponse.yml b/lib/metadata/digitaliseringskataloget/Sftp/BusinessResponse.yml new file mode 100644 index 00000000..6c1703ac --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/BusinessResponse.yml @@ -0,0 +1,15 @@ +Digitaliseringskataloget\Sftp\BusinessResponse: + xml_namespaces: + memo: 'https://DigitalPost.dk/MeMo-1' + gln: 'https://www.gs1.dk/gs1-standarder/identifikation/gln-global-location-number/' + udd: 'https://www.dst.dk/da/TilSalg/Forskningsservice/Dokumentation/hoejkvalitetsvariable/elevregister-2/udd#' + rid: 'https://www.nets.eu/dk-da/l%C3%B8sninger/nemid/nemid-tjenesteudbyder/supplerende-tjenester/pid-rid-cpr-tjenester' + pnum: 'https://indberet.virk.dk/myndigheder/stat/ERST/P-enhedsloesningen' + form: 'http://www.form-online.dk/' + kle: 'http://kle-online.dk/' + dmv: 'https://motorregister.skat.dk/' + grd: 'https://data.gov.dk/model/core/' + sor: 'https://services.nsi.dk/en/Services/SOR' + sftp: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' + xml_root_name: 'sftp:BusinessResponse' + xml_root_namespace: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' diff --git a/lib/metadata/digitaliseringskataloget/Sftp/BusinessResponseType.yml b/lib/metadata/digitaliseringskataloget/Sftp/BusinessResponseType.yml new file mode 100644 index 00000000..e3b964e8 --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/BusinessResponseType.yml @@ -0,0 +1,21 @@ +Digitaliseringskataloget\Sftp\BusinessResponseType: + properties: + responseMessage: + expose: true + access_type: public_method + serialized_name: ResponseMessage + accessor: + getter: getResponseMessage + setter: setResponseMessage + type: string + errorMessage: + expose: true + access_type: public_method + serialized_name: ErrorMessage + accessor: + getter: getErrorMessage + setter: setErrorMessage + xml_list: + inline: true + entry_name: ErrorMessage + type: array diff --git a/lib/metadata/digitaliseringskataloget/Sftp/ErrorMessageType.yml b/lib/metadata/digitaliseringskataloget/Sftp/ErrorMessageType.yml new file mode 100644 index 00000000..7503a8c0 --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/ErrorMessageType.yml @@ -0,0 +1,26 @@ +Digitaliseringskataloget\Sftp\ErrorMessageType: + properties: + errorCode: + expose: true + access_type: public_method + serialized_name: ErrorCode + accessor: + getter: getErrorCode + setter: setErrorCode + type: int + errorCodeDescription: + expose: true + access_type: public_method + serialized_name: ErrorCodeDescription + accessor: + getter: getErrorCodeDescription + setter: setErrorCodeDescription + type: string + errorDescription: + expose: true + access_type: public_method + serialized_name: ErrorDescription + accessor: + getter: getErrorDescription + setter: setErrorDescription + type: string diff --git a/lib/metadata/digitaliseringskataloget/Sftp/FileContentDescriptorType.yml b/lib/metadata/digitaliseringskataloget/Sftp/FileContentDescriptorType.yml new file mode 100644 index 00000000..f3dfa419 --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/FileContentDescriptorType.yml @@ -0,0 +1,10 @@ +Digitaliseringskataloget\Sftp\FileContentDescriptorType: + properties: + sFTPDynamicRoutingInfo: + expose: true + access_type: public_method + serialized_name: SFTPDynamicRoutingInfo + accessor: + getter: getSFTPDynamicRoutingInfo + setter: setSFTPDynamicRoutingInfo + type: Digitaliseringskataloget\Sftp\SFTPDynamicRoutingInfoType diff --git a/lib/metadata/digitaliseringskataloget/Sftp/FileDescriptorType.yml b/lib/metadata/digitaliseringskataloget/Sftp/FileDescriptorType.yml new file mode 100644 index 00000000..a5856cb6 --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/FileDescriptorType.yml @@ -0,0 +1,45 @@ +Digitaliseringskataloget\Sftp\FileDescriptorType: + properties: + fileName: + expose: true + access_type: public_method + serialized_name: FileName + accessor: + getter: getFileName + setter: setFileName + type: string + sizeInBytes: + expose: true + access_type: public_method + serialized_name: SizeInBytes + accessor: + getter: getSizeInBytes + setter: setSizeInBytes + type: int + sender: + expose: true + access_type: public_method + serialized_name: Sender + accessor: + getter: getSender + setter: setSender + type: string + sendersFileId: + expose: true + access_type: public_method + serialized_name: SendersFileId + accessor: + getter: getSendersFileId + setter: setSendersFileId + type: string + recipients: + expose: true + access_type: public_method + serialized_name: Recipients + accessor: + getter: getRecipients + setter: setRecipients + xml_list: + inline: true + entry_name: Recipients + type: array diff --git a/lib/metadata/digitaliseringskataloget/Sftp/FileMetadata.yml b/lib/metadata/digitaliseringskataloget/Sftp/FileMetadata.yml new file mode 100644 index 00000000..a67078df --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/FileMetadata.yml @@ -0,0 +1,15 @@ +Digitaliseringskataloget\Sftp\FileMetadata: + xml_namespaces: + memo: 'https://DigitalPost.dk/MeMo-1' + gln: 'https://www.gs1.dk/gs1-standarder/identifikation/gln-global-location-number/' + udd: 'https://www.dst.dk/da/TilSalg/Forskningsservice/Dokumentation/hoejkvalitetsvariable/elevregister-2/udd#' + rid: 'https://www.nets.eu/dk-da/l%C3%B8sninger/nemid/nemid-tjenesteudbyder/supplerende-tjenester/pid-rid-cpr-tjenester' + pnum: 'https://indberet.virk.dk/myndigheder/stat/ERST/P-enhedsloesningen' + form: 'http://www.form-online.dk/' + kle: 'http://kle-online.dk/' + dmv: 'https://motorregister.skat.dk/' + grd: 'https://data.gov.dk/model/core/' + sor: 'https://services.nsi.dk/en/Services/SOR' + sftp: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' + xml_root_name: 'sftp:FileMetadata' + xml_root_namespace: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' diff --git a/lib/metadata/digitaliseringskataloget/Sftp/FileMetadataType.yml b/lib/metadata/digitaliseringskataloget/Sftp/FileMetadataType.yml new file mode 100644 index 00000000..978631a4 --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/FileMetadataType.yml @@ -0,0 +1,26 @@ +Digitaliseringskataloget\Sftp\FileMetadataType: + properties: + fileTransferUUID: + expose: true + access_type: public_method + serialized_name: FileTransferUUID + accessor: + getter: getFileTransferUUID + setter: setFileTransferUUID + type: string + fileDescriptor: + expose: true + access_type: public_method + serialized_name: FileDescriptor + accessor: + getter: getFileDescriptor + setter: setFileDescriptor + type: Digitaliseringskataloget\Sftp\FileDescriptorType + fileContentDescriptor: + expose: true + access_type: public_method + serialized_name: FileContentDescriptor + accessor: + getter: getFileContentDescriptor + setter: setFileContentDescriptor + type: Digitaliseringskataloget\Sftp\FileContentDescriptorType diff --git a/lib/metadata/digitaliseringskataloget/Sftp/ReceiptType.yml b/lib/metadata/digitaliseringskataloget/Sftp/ReceiptType.yml new file mode 100644 index 00000000..4451f6a4 --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/ReceiptType.yml @@ -0,0 +1,10 @@ +Digitaliseringskataloget\Sftp\ReceiptType: + properties: + message: + expose: true + access_type: public_method + serialized_name: Message + accessor: + getter: getMessage + setter: setMessage + type: string diff --git a/lib/metadata/digitaliseringskataloget/Sftp/RouteParameterType.yml b/lib/metadata/digitaliseringskataloget/Sftp/RouteParameterType.yml new file mode 100644 index 00000000..ceb8523b --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/RouteParameterType.yml @@ -0,0 +1,2 @@ +Digitaliseringskataloget\Sftp\RouteParameterType: + properties: { } diff --git a/lib/metadata/digitaliseringskataloget/Sftp/RouteSelectionValueDate.yml b/lib/metadata/digitaliseringskataloget/Sftp/RouteSelectionValueDate.yml new file mode 100644 index 00000000..156a4938 --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/RouteSelectionValueDate.yml @@ -0,0 +1,24 @@ +Digitaliseringskataloget\Sftp\RouteSelectionValueDate: + xml_namespaces: + memo: 'https://DigitalPost.dk/MeMo-1' + gln: 'https://www.gs1.dk/gs1-standarder/identifikation/gln-global-location-number/' + udd: 'https://www.dst.dk/da/TilSalg/Forskningsservice/Dokumentation/hoejkvalitetsvariable/elevregister-2/udd#' + rid: 'https://www.nets.eu/dk-da/l%C3%B8sninger/nemid/nemid-tjenesteudbyder/supplerende-tjenester/pid-rid-cpr-tjenester' + pnum: 'https://indberet.virk.dk/myndigheder/stat/ERST/P-enhedsloesningen' + form: 'http://www.form-online.dk/' + kle: 'http://kle-online.dk/' + dmv: 'https://motorregister.skat.dk/' + grd: 'https://data.gov.dk/model/core/' + sor: 'https://services.nsi.dk/en/Services/SOR' + sftp: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' + xml_root_name: 'sftp:RouteSelectionValueDate' + xml_root_namespace: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' + properties: + __value: + expose: true + xml_value: true + access_type: public_method + accessor: + getter: value + setter: value + type: GoetasWebservices\Xsd\XsdToPhp\XMLSchema\Date diff --git a/lib/metadata/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfo.yml b/lib/metadata/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfo.yml new file mode 100644 index 00000000..7235bf46 --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfo.yml @@ -0,0 +1,15 @@ +Digitaliseringskataloget\Sftp\SFTPDynamicRoutingInfo: + xml_namespaces: + memo: 'https://DigitalPost.dk/MeMo-1' + gln: 'https://www.gs1.dk/gs1-standarder/identifikation/gln-global-location-number/' + udd: 'https://www.dst.dk/da/TilSalg/Forskningsservice/Dokumentation/hoejkvalitetsvariable/elevregister-2/udd#' + rid: 'https://www.nets.eu/dk-da/l%C3%B8sninger/nemid/nemid-tjenesteudbyder/supplerende-tjenester/pid-rid-cpr-tjenester' + pnum: 'https://indberet.virk.dk/myndigheder/stat/ERST/P-enhedsloesningen' + form: 'http://www.form-online.dk/' + kle: 'http://kle-online.dk/' + dmv: 'https://motorregister.skat.dk/' + grd: 'https://data.gov.dk/model/core/' + sor: 'https://services.nsi.dk/en/Services/SOR' + sftp: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' + xml_root_name: 'sftp:SFTPDynamicRoutingInfo' + xml_root_namespace: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' diff --git a/lib/metadata/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfoType.RouteParameterListAType.yml b/lib/metadata/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfoType.RouteParameterListAType.yml new file mode 100644 index 00000000..78aa8c4a --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfoType.RouteParameterListAType.yml @@ -0,0 +1,13 @@ +Digitaliseringskataloget\Sftp\SFTPDynamicRoutingInfoType\RouteParameterListAType: + properties: + routeParameter: + expose: true + access_type: public_method + serialized_name: RouteParameter + accessor: + getter: getRouteParameter + setter: setRouteParameter + xml_list: + inline: true + entry_name: RouteParameter + type: array diff --git a/lib/metadata/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfoType.yml b/lib/metadata/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfoType.yml new file mode 100644 index 00000000..08df2318 --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/SFTPDynamicRoutingInfoType.yml @@ -0,0 +1,70 @@ +Digitaliseringskataloget\Sftp\SFTPDynamicRoutingInfoType: + properties: + infRef: + expose: true + access_type: public_method + serialized_name: InfRef + accessor: + getter: getInfRef + setter: setInfRef + type: string + senderItSystem: + expose: true + access_type: public_method + serialized_name: SenderIt-system + accessor: + getter: getSenderItSystem + setter: setSenderItSystem + type: string + senderAuthority: + expose: true + access_type: public_method + serialized_name: SenderAuthority + accessor: + getter: getSenderAuthority + setter: setSenderAuthority + type: string + transactionId: + expose: true + access_type: public_method + serialized_name: TransactionId + accessor: + getter: getTransactionId + setter: setTransactionId + type: string + senderTimestamp: + expose: true + access_type: public_method + serialized_name: SenderTimestamp + accessor: + getter: getSenderTimestamp + setter: setSenderTimestamp + type: GoetasWebservices\Xsd\XsdToPhp\XMLSchema\DateTime + recipientItSystem: + expose: true + access_type: public_method + serialized_name: RecipientIt-system + accessor: + getter: getRecipientItSystem + setter: setRecipientItSystem + type: string + recipientAuthority: + expose: true + access_type: public_method + serialized_name: RecipientAuthority + accessor: + getter: getRecipientAuthority + setter: setRecipientAuthority + type: string + routeParameterList: + expose: true + access_type: public_method + serialized_name: RouteParameterList + accessor: + getter: getRouteParameterList + setter: setRouteParameterList + type: array + xml_list: + inline: false + entry_name: RouteParameter + skip_when_empty: true diff --git a/lib/metadata/digitaliseringskataloget/Sftp/TechnicalReceipt.yml b/lib/metadata/digitaliseringskataloget/Sftp/TechnicalReceipt.yml new file mode 100644 index 00000000..3a7e8b91 --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/TechnicalReceipt.yml @@ -0,0 +1,15 @@ +Digitaliseringskataloget\Sftp\TechnicalReceipt: + xml_namespaces: + memo: 'https://DigitalPost.dk/MeMo-1' + gln: 'https://www.gs1.dk/gs1-standarder/identifikation/gln-global-location-number/' + udd: 'https://www.dst.dk/da/TilSalg/Forskningsservice/Dokumentation/hoejkvalitetsvariable/elevregister-2/udd#' + rid: 'https://www.nets.eu/dk-da/l%C3%B8sninger/nemid/nemid-tjenesteudbyder/supplerende-tjenester/pid-rid-cpr-tjenester' + pnum: 'https://indberet.virk.dk/myndigheder/stat/ERST/P-enhedsloesningen' + form: 'http://www.form-online.dk/' + kle: 'http://kle-online.dk/' + dmv: 'https://motorregister.skat.dk/' + grd: 'https://data.gov.dk/model/core/' + sor: 'https://services.nsi.dk/en/Services/SOR' + sftp: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' + xml_root_name: 'sftp:TechnicalReceipt' + xml_root_namespace: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' diff --git a/lib/metadata/digitaliseringskataloget/Sftp/TechnicalReceiptType.yml b/lib/metadata/digitaliseringskataloget/Sftp/TechnicalReceiptType.yml new file mode 100644 index 00000000..eb7d33c5 --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/TechnicalReceiptType.yml @@ -0,0 +1,37 @@ +Digitaliseringskataloget\Sftp\TechnicalReceiptType: + properties: + fileTransferUUID: + expose: true + access_type: public_method + serialized_name: FileTransferUUID + accessor: + getter: getFileTransferUUID + setter: setFileTransferUUID + type: string + sendersFileId: + expose: true + access_type: public_method + serialized_name: SendersFileId + accessor: + getter: getSendersFileId + setter: setSendersFileId + type: string + receipt: + expose: true + access_type: public_method + serialized_name: Receipt + accessor: + getter: getReceipt + setter: setReceipt + type: Digitaliseringskataloget\Sftp\ReceiptType + errorMessage: + expose: true + access_type: public_method + serialized_name: ErrorMessage + accessor: + getter: getErrorMessage + setter: setErrorMessage + xml_list: + inline: true + entry_name: ErrorMessage + type: array diff --git a/lib/metadata/digitaliseringskataloget/Sftp/Trigger.yml b/lib/metadata/digitaliseringskataloget/Sftp/Trigger.yml new file mode 100644 index 00000000..e532890c --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/Trigger.yml @@ -0,0 +1,15 @@ +Digitaliseringskataloget\Sftp\Trigger: + xml_namespaces: + memo: 'https://DigitalPost.dk/MeMo-1' + gln: 'https://www.gs1.dk/gs1-standarder/identifikation/gln-global-location-number/' + udd: 'https://www.dst.dk/da/TilSalg/Forskningsservice/Dokumentation/hoejkvalitetsvariable/elevregister-2/udd#' + rid: 'https://www.nets.eu/dk-da/l%C3%B8sninger/nemid/nemid-tjenesteudbyder/supplerende-tjenester/pid-rid-cpr-tjenester' + pnum: 'https://indberet.virk.dk/myndigheder/stat/ERST/P-enhedsloesningen' + form: 'http://www.form-online.dk/' + kle: 'http://kle-online.dk/' + dmv: 'https://motorregister.skat.dk/' + grd: 'https://data.gov.dk/model/core/' + sor: 'https://services.nsi.dk/en/Services/SOR' + sftp: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' + xml_root_name: 'sftp:Trigger' + xml_root_namespace: 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types' diff --git a/lib/metadata/digitaliseringskataloget/Sftp/TriggerType.yml b/lib/metadata/digitaliseringskataloget/Sftp/TriggerType.yml new file mode 100644 index 00000000..9bd54070 --- /dev/null +++ b/lib/metadata/digitaliseringskataloget/Sftp/TriggerType.yml @@ -0,0 +1,18 @@ +Digitaliseringskataloget\Sftp\TriggerType: + properties: + fileDescriptor: + expose: true + access_type: public_method + serialized_name: FileDescriptor + accessor: + getter: getFileDescriptor + setter: setFileDescriptor + type: Digitaliseringskataloget\Sftp\FileDescriptorType + fileContentDescriptor: + expose: true + access_type: public_method + serialized_name: FileContentDescriptor + accessor: + getter: getFileContentDescriptor + setter: setFileContentDescriptor + type: Digitaliseringskataloget\Sftp\FileContentDescriptorType diff --git a/resources/sf2900/DistributionServiceMsg.xsd b/resources/sf2900/DistributionServiceMsg.xsd new file mode 100644 index 00000000..e1d529bc --- /dev/null +++ b/resources/sf2900/DistributionServiceMsg.xsd @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/sf2900/SF2900_EP_MS1-2/DistributionServiceAnvenderV2.wsdl b/resources/sf2900/SF2900_EP_MS1-2/DistributionServiceAnvenderV2.wsdl new file mode 100644 index 00000000..0aece94a --- /dev/null +++ b/resources/sf2900/SF2900_EP_MS1-2/DistributionServiceAnvenderV2.wsdl @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/sf2900/SF2900_EP_MS1-2/DistributionServiceModtagerV2.wsdl b/resources/sf2900/SF2900_EP_MS1-2/DistributionServiceModtagerV2.wsdl new file mode 100644 index 00000000..820feeae --- /dev/null +++ b/resources/sf2900/SF2900_EP_MS1-2/DistributionServiceModtagerV2.wsdl @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/sf2900/SF2900_EP_MS1-2/DistributionServiceMsgV2.xsd b/resources/sf2900/SF2900_EP_MS1-2/DistributionServiceMsgV2.xsd new file mode 100644 index 00000000..b650b15a --- /dev/null +++ b/resources/sf2900/SF2900_EP_MS1-2/DistributionServiceMsgV2.xsd @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/sf2900/SF2900_EP_MS1-2/DistributionServiceTypesV2.xsd b/resources/sf2900/SF2900_EP_MS1-2/DistributionServiceTypesV2.xsd new file mode 100644 index 00000000..480238ef --- /dev/null +++ b/resources/sf2900/SF2900_EP_MS1-2/DistributionServiceTypesV2.xsd @@ -0,0 +1,550 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/sf2900/sp/AuthorityContext_1.xsd b/resources/sf2900/sp/AuthorityContext_1.xsd new file mode 100644 index 00000000..53462455 --- /dev/null +++ b/resources/sf2900/sp/AuthorityContext_1.xsd @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/sf2900/sp/CallContext_1.xsd b/resources/sf2900/sp/CallContext_1.xsd new file mode 100644 index 00000000..545b0bef --- /dev/null +++ b/resources/sf2900/sp/CallContext_1.xsd @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/sf2900/sp/InvocationContext_1.xsd b/resources/sf2900/sp/InvocationContext_1.xsd new file mode 100644 index 00000000..e7ab2230 --- /dev/null +++ b/resources/sf2900/sp/InvocationContext_1.xsd @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/sf2900/sp/Kvittering_1.xsd b/resources/sf2900/sp/Kvittering_1.xsd new file mode 100644 index 00000000..7a7ed234 --- /dev/null +++ b/resources/sf2900/sp/Kvittering_1.xsd @@ -0,0 +1,70 @@ + + + + + + Version 1.0.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/sf2900/sp/ServiceplatformFaultMessage_1.wsdl b/resources/sf2900/sp/ServiceplatformFaultMessage_1.wsdl new file mode 100644 index 00000000..d0d05928 --- /dev/null +++ b/resources/sf2900/sp/ServiceplatformFaultMessage_1.wsdl @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + diff --git a/resources/sf2900/sp/ServiceplatformFault_1.xsd b/resources/sf2900/sp/ServiceplatformFault_1.xsd new file mode 100644 index 00000000..92b85d47 --- /dev/null +++ b/resources/sf2900/sp/ServiceplatformFault_1.xsd @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/sf2900/sp/TransportKvitteringFaultMessage_1.wsdl b/resources/sf2900/sp/TransportKvitteringFaultMessage_1.wsdl new file mode 100644 index 00000000..e2b694bf --- /dev/null +++ b/resources/sf2900/sp/TransportKvitteringFaultMessage_1.wsdl @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + diff --git a/resources/sf2900/sp/service.properties b/resources/sf2900/sp/service.properties new file mode 100644 index 00000000..566997c0 --- /dev/null +++ b/resources/sf2900/sp/service.properties @@ -0,0 +1,2 @@ +service.uuid=74d3c5f5-1b3c-4c6d-8366-1241f055d332 +service.entityID=http://sp.serviceplatformen.dk/service/fordeling/3 \ No newline at end of file diff --git a/resources/sf2900/wsdl/context/DistributionService.wsdl b/resources/sf2900/wsdl/context/DistributionService.wsdl new file mode 100644 index 00000000..8122fd25 --- /dev/null +++ b/resources/sf2900/wsdl/context/DistributionService.wsdl @@ -0,0 +1,135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/sf2900/wsdl/context/policies.wsdl b/resources/sf2900/wsdl/context/policies.wsdl new file mode 100644 index 00000000..fb482aab --- /dev/null +++ b/resources/sf2900/wsdl/context/policies.wsdl @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/sf2900/wsdl/token/DistributionService.wsdl b/resources/sf2900/wsdl/token/DistributionService.wsdl new file mode 100644 index 00000000..8122fd25 --- /dev/null +++ b/resources/sf2900/wsdl/token/DistributionService.wsdl @@ -0,0 +1,135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/sf2900/wsdl/token/policies.wsdl b/resources/sf2900/wsdl/token/policies.wsdl new file mode 100644 index 00000000..635b7af4 --- /dev/null +++ b/resources/sf2900/wsdl/token/policies.wsdl @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/sf2900/xsd/DistributionServiceTypes.xsd b/resources/sf2900/xsd/DistributionServiceTypes.xsd new file mode 100644 index 00000000..17e40cdb --- /dev/null +++ b/resources/sf2900/xsd/DistributionServiceTypes.xsd @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Certificate/CertificateLocatorHelper.php b/src/Certificate/CertificateLocatorHelper.php new file mode 100644 index 00000000..8aa881e9 --- /dev/null +++ b/src/Certificate/CertificateLocatorHelper.php @@ -0,0 +1,91 @@ +getCertificateLocator($spec, $passphrase); + } + + private function getCertificateLocator(string $spec, string $passphrase): CertificateLocatorInterface + { + if (str_contains($spec, '=')) { + parse_str($spec, $options); + $resolver = $this->getCertificateOptionsResolver(); + $options = $resolver->resolve($options); + + $httpClient = new GuzzleAdapter(new Client()); + $requestFactory = new RequestFactory(); + + $vaultToken = new VaultToken($httpClient, $requestFactory); + + $token = $vaultToken->getToken( + $options['tenant-id'], + $options['client-id'], + $options['client-secret'], + ); + + $vault = new VaultSecret( + $httpClient, + $requestFactory, + $options['name'], + $token->getAccessToken() + ); + + return new AzureKeyVaultCertificateLocator( + $vault, + $options['secret'], + $options['version'], + $passphrase + ); + } else { + $path = realpath($spec) ?: null; + if (null === $path) { + throw new InvalidOptionException(sprintf('Invalid path %s', $spec)); + } + + return new FilesystemCertificateLocator($path, $passphrase); + } + } + + private function getCertificateOptionsResolver(): OptionsResolver + { + $resolver = new OptionsResolver(); + $resolver + ->setRequired([ + 'tenant-id', + 'client-id', + 'client-secret', + 'name', + 'secret', + 'version', + ]) + ->setInfo('tenant-id', 'The tenant id') + ->setInfo('client-id', 'The client id') + ->setInfo('client-secret', 'The client secret') + ->setInfo('name', 'The certificate name') + ->setInfo('secret', 'The certificate secret') + ->setInfo('version', 'The certificate version') + ; + + return $resolver; + } +} diff --git a/src/Command/SF2900/AbstractCommand.php b/src/Command/SF2900/AbstractCommand.php new file mode 100644 index 00000000..33a9fa62 --- /dev/null +++ b/src/Command/SF2900/AbstractCommand.php @@ -0,0 +1,143 @@ +baseOptions = []; + $this->commandOptionNames = []; + + // Index by option name. + $options = array_filter($definition, static fn ($item) => $item instanceof InputOption); + foreach ($options as $option) { + $name = $option->getName(); + if (in_array($name, $this->commandOptionNames)) { + $this->commandOptionNames[$name] = $option; + } else { + $this->baseOptions[$name] = $option; + } + } + } + + /** + * @return (InputOption|InputArgument)[] + */ + protected function getDefinitionItems(): array + { + return [ + new InputOption('production', null, InputOption::VALUE_NONE, 'production mode'), + new InputOption('sender-id', null, InputOption::VALUE_REQUIRED, 'sender-id (CVR)'), + new InputOption('routing-kle', null, InputOption::VALUE_REQUIRED, 'routing-kle'), + new InputOption('routing-handling-facet', null, InputOption::VALUE_REQUIRED, 'routing-handling-facet'), + new InputOption('certificate', null, InputOption::VALUE_REQUIRED, 'Path to certificate or a query string with Azure Key Vault information (see help for details)'), + new InputOption('certificate-passphrase', null, InputOption::VALUE_REQUIRED, 'certificate passphrase', ''), + new InputOption('sftp-host', null, InputOption::VALUE_REQUIRED, 'SFTP host', default: 'sftpexttest.serviceplatformen.dk'), + new InputOption('sftp-username', null, InputOption::VALUE_REQUIRED, 'SFTP username'), + new InputOption('sftp-private-key', null, InputOption::VALUE_REQUIRED, 'SFTP private key filename'), + ]; + } + + protected function configure() + { + $definition = $this->getDefinitionItems(); + $this->setDefinition(new InputDefinition($definition)); + + $help = $this->buildHelp(); + $this->setHelp($help); + $this->buildOptions($definition); + } + + protected function buildHelp(): string + { + return <<configureOptions(new OptionsResolver())->resolve($options); + } + + protected function configureOptions(OptionsResolver $resolver): OptionsResolver + { + return $resolver + ->setRequired([ + 'certificate', + 'sender-id', + ]) + ->setDefaults([ + 'certificate-passphrase' => '', + 'sftp-host' => 'sftpexttest.serviceplatformen.dk', + 'sftp-username' => null, + 'sftp-private-key' => null, + 'production' => false, + 'routing-kle' => '', + 'routing-handling-facet' => '', + ]) + ; + } + + protected function getOptionsDetails(OptionsResolver $resolver, string $indent = '') + { + $lines = []; + $options = $resolver->getDefinedOptions(); + + $maxOptionLength = max(...array_map('strlen', $options)); + foreach ($options as $option) { + $info = $resolver->getInfo($option); + $lines[] = $info ? sprintf('%s %s', str_pad($option, $maxOptionLength), $info) : $option; + } + + return implode(PHP_EOL, array_map(static function ($line) use ($indent) { + return $indent.$line; + }, $lines)); + } +} diff --git a/src/Command/SF2900/FordelingsmodtagerListCommand.php b/src/Command/SF2900/FordelingsmodtagerListCommand.php new file mode 100644 index 00000000..5f57dc62 --- /dev/null +++ b/src/Command/SF2900/FordelingsmodtagerListCommand.php @@ -0,0 +1,75 @@ +resolveOptions( + array_filter( + $input->getOptions(), + fn (string $name) => isset($this->baseOptions[$name]) || isset($this->commandOptions[$name]), + ARRAY_FILTER_USE_KEY + ) + ); + + if (null === $options['routing-kle']) { + throw new InvalidOptionException('Option "routing-kle" is required.'); + } + + $certificateLocator = $this->getCertificateLocator($options['certificate'], $options['certificate-passphrase']); + + $sf2900 = new SF2900( + $this->eventDispatcher, + [ + 'authority_cvr' => $options['sender-id'], + 'certificate_locator' => $certificateLocator, + 'test_mode' => !$options['production'], + 'sftp' => [ + 'host' => $options['sftp-host'], + 'username' => $options['sftp-username'], + 'private-key' => $options['sftp-private-key'], + ], + ] + ); + + $result = $sf2900->getModtagerList( + routingMyndighed: $options['sender-id'], + routingKLEEmne: $options['routing-kle'], + routingHandlingFacet: $options['routing-handling-facet'], + ); + + assert(null !== $result); + $systems = $result->getSystemer()->getSystem() ?? []; + $io->writeln(1 === count($systems) ? '1 system found' : sprintf('%d systems found', count($systems))); + foreach ($systems as $system) { + $io->section($system->getSystemNavn()); + $io->writeln(Yaml::dump(json_decode(json_encode($system), true))); + } + + return Command::SUCCESS; + } +} diff --git a/src/Command/SF2900/FordelingsobjektAfsendCommand.php b/src/Command/SF2900/FordelingsobjektAfsendCommand.php new file mode 100644 index 00000000..4825bd0f --- /dev/null +++ b/src/Command/SF2900/FordelingsobjektAfsendCommand.php @@ -0,0 +1,283 @@ +resolveOptions( + array_filter( + $input->getOptions(), + fn (string $name) => isset($this->baseOptions[$name]) || isset($this->commandOptions[$name]), + ARRAY_FILTER_USE_KEY + ) + ); + + if (null === $options['routing-kle']) { + throw new InvalidOptionException('Option "routing-kle" is required.'); + } + + $certificateLocator = $this->getCertificateLocator($options['certificate'], $options['certificate-passphrase']); + + $sf2900 = new SF2900( + $this->eventDispatcher, + [ + 'authority_cvr' => $options['sender-id'], + 'certificate_locator' => $certificateLocator, + 'test_mode' => !$options['production'], + 'sftp' => [ + 'host' => $options['sftp-host'], + 'username' => $options['sftp-username'], + 'private-key' => $options['sftp-private-key'], + ], + ] + ); + + $registreringItSystem = $options['registrering-it-system']; + $aktoer = $registreringItSystem; + + $id = Serializer::createUuid(); + $now = new \DateTimeImmutable(); + $type = $options['type']; + $document = match ($type) { + ObjektTypeType::VALUE_JOURNALPOST => new DistributionJournalPostType( + iD: $id, + kLEEmneForslag: $options['routing-kle'], + registrering: new JournalPostRegistreringType( + fraTidsPunkt: SF2900::formatDateTime($now), + livscyklusKode: LivscyklusKodeType::VALUE_OPRETTET, + registreringItSystem: new UUID_URN($registreringItSystem), + relationListe: new JournalPostRelationsListeType([ + new JournalPostType( + virkning: new VirkningType( + aktoer: new UUID_URN($aktoer), + aktoerType: AktoerTypeType::VALUE_IT_SYSTEM, + // fraTidsPunkt: null, + // tilTidspunkt: null, + // noteTekst: null, + ), + rolle: JournalPostRolleType::VALUE_JOURNALPOST, + // @todo What is "indeks"? + indeks: '1', + journalnotatAttributter: new JournalNotatEgenskaberType( + notat: __FILE__, + titel: __METHOD__, + ) + ), + ]) + ), + ), + + ObjektTypeType::VALUE_DOKUMENT => new DistributionDokumentType( + iD: $id, + kLEEmneForslag: $options['routing-kle'], + // handlingFacetForslag: null, + registrering: new DokumentRegistreringType( + fraTidsPunkt: SF2900::formatDateTime($now), + livscyklusKode: LivscyklusKodeType::VALUE_OPRETTET, + registreringItSystem: new UUID_URN($registreringItSystem), + relationListe: new RelationsListe( + variantListe: new VariantListeType([ + new VariantType( + virkning: new VirkningType( + aktoer: new UUID_URN($aktoer), + aktoerType: AktoerTypeType::VALUE_IT_SYSTEM, + // fraTidsPunkt: null, + // tilTidspunkt: null, + // noteTekst: null, + ), + rolle: VariantRolleType::VALUE_VARIANT, + indeks: '1', + variantAttributter: new VariantAttributterType( + variantType: 'PDF', + ), + delAttributter: new DelAttributterType( + delTekst: 'Hele dokumentet', + ), + ), + ]), + ), + tilstandsListe: [ + new TilstandListeType( + tilstand: [ + new TilstandType( + // @todo + fremdrift: FremdriftType::VALUE_ENDELIGT, + virkning: new VirkningType( + aktoer: new UUID_URN($aktoer), + aktoerType: AktoerTypeType::VALUE_IT_SYSTEM, + // fraTidsPunkt: null, + // tilTidspunkt: null, + // noteTekst: null, + ), + ), + ] + ), + ], + attributListe: new AttributterListeType([ + new AttributterType( + brugervendtNoegleTekst: __METHOD__, + titelTekst: __FILE__, + beskrivelseTekst: __FILE__, + dokumenttype: DokumenttypeType::VALUE_ANDEN, + retning: RetningType::VALUE_UDGAAENDE, + brevdato: SF2900::formatDate($now), + virkning: new VirkningType( + aktoer: new UUID_URN($aktoer), + aktoerType: AktoerTypeType::VALUE_IT_SYSTEM, + // fraTidsPunkt: null, + // tilTidspunkt: null, + // noteTekst: null, + ), + ), + ]), + // importTidspunkt: null, + // brugerRef: null, + ) + ), + + // ObjektTypeType::VALUE_FORMULAR => '', + + default => throw new InvalidArgumentException(sprintf('Invalid type: %s', $type)), + }; + + $dokumentFilNavn = null; + if ($document instanceof DistributionDokumentType) { + $file = $options['file']; + if (null === $file) { + throw new MissingArgumentException('File is required'); + } + $dokumentFilNavn = $sf2900->sftp()->putFile($file); + } + + $transactionId = Serializer::createUuid(); + try { + $result = $sf2900->afsend( + transactionId: $transactionId, + document: $document, + routingMyndighed: $options['sender-id'], + routingKLEEmne: $options['routing-kle'], + routingHandlingFacet: $options['routing-handling-facet'], + routingModtagerAktoer: $options['routing-modtager-aktoer'], + dokumentFilNavn: $dokumentFilNavn, + ); + $io->writeln(var_export($result, true)); + } catch (SoapException $exception) { + $io->writeln($exception->getRequest()); + $io->error($exception->getResponse()); + + throw $exception; + } + + return Command::SUCCESS; + } + + protected function configureOptions(OptionsResolver $resolver): OptionsResolver + { + return parent::configureOptions($resolver) + ->setDefault('type', ObjektTypeType::VALUE_JOURNALPOST) + ->setDefault('file', null) + ->setDefault('routing-modtager-aktoer', null) + ->setAllowedValues('routing-modtager-aktoer', static function (?string $value): bool { + if (null !== $value) { + try { + new Uuid($value); + } catch (\Exception) { + return false; + } + } + + return true; + }) + ->setRequired('registrering-it-system') + ->setAllowedTypes('registrering-it-system', 'string') + ->setAllowedValues('registrering-it-system', static function (string $value): bool { + try { + new Uuid($value); + } catch (\Exception) { + return false; + } + + return true; + }); + } +} diff --git a/src/Service/Exception/MissingArgumentException.php b/src/Service/Exception/MissingArgumentException.php new file mode 100644 index 00000000..3242f2d8 --- /dev/null +++ b/src/Service/Exception/MissingArgumentException.php @@ -0,0 +1,18 @@ +request; + } + + public function getResponse(): ?AbstractStructBase + { + return $this->response; + } +} diff --git a/src/Service/SF2900/Event/AfterServiceCallEvent.php b/src/Service/SF2900/Event/AfterServiceCallEvent.php new file mode 100644 index 00000000..bce50306 --- /dev/null +++ b/src/Service/SF2900/Event/AfterServiceCallEvent.php @@ -0,0 +1,15 @@ +options = $this->resolveOptions($options); + $this->sftp = new SftpHelper($this->options['sftp']); + } + + public function sftp(): SftpHelper + { + return $this->sftp; + } + + public function getLastRequest(): AbstractStructBase + { + return $this->lastRequest; + } + + public function getModtagerList( + string $routingMyndighed, + string $routingKLEEmne, + ?string $routingHandlingFacet = null, + ): ?FordelingsmodtagerListResponseType { + $request = $this->buildFordelingsmodtagerListRequest( + routingMyndighed: $routingMyndighed, + routingKLEEmne: $routingKLEEmne, + routingHandlingFacet: $routingHandlingFacet + ); + + /** @var ?FordelingsmodtagerListResponseType $response */ + $response = $this->callService( + serviceClass: Fordelingsmodtager::class, + serviceMethod: 'FordelingsmodtagerList', + request: $request + ); + + return $response; + } + + /** + * @throws SoapException + */ + public function afsend( + string $transactionId, + DistributionDokumentType|DistributionJournalPostType|DistributionFormularType $document, + string $routingMyndighed, + string $routingKLEEmne, + ?string $routingHandlingFacet = null, + ?string $routingModtagerAktoer = null, + ?string $dokumentFilNavn = null, + ): ?FordelingsobjektAfsendResponseType { + if ($document instanceof DistributionDokumentType && null === $dokumentFilNavn) { + throw new MissingArgumentException(sprintf('documentFilNavn must be set for %s request.', $document::class)); + } + + $request = $this->buildFordelingsobjektAfsendRequest( + transactionId: $transactionId, + document: $document, + routingMyndighed: $routingMyndighed, + routingKLEEmne: $routingKLEEmne, + routingHandlingFacet: $routingHandlingFacet, + routingModtagerAktoer: $routingModtagerAktoer, + dokumentFilNavn: $dokumentFilNavn, + ); + + /** @var ?FordelingsobjektAfsendResponseType $response */ + $response = $this->callService( + serviceClass: Fordelingsobjekt::class, + serviceMethod: 'FordelingsobjektAfsend', + request: $request + ); + + return $response; + } + + public function modtag( + ForretningskvitteringType $forretningsKvittering, + DistributionContextType $distributionContext, + ?AuthorityContextType $authorityContext = null, + ): ?FordelingskvitteringModtagResponseType { + $authorityContext ??= new AuthorityContextType($this->options['authority_cvr']); + + $request = new FordelingskvitteringModtagRequestType( + forretningskvittering: $forretningsKvittering, + distributionContext: $distributionContext, + authorityContext: $authorityContext, + ); + + /** @var ?FordelingskvitteringModtagResponseType $response */ + $response = $this->callService( + serviceClass: Fordelingskvittering::class, + serviceMethod: 'FordelingskvitteringModtag', + request: $request, + ); + + return $response; + } + + private function resolveOptions(array $options): array + { + $resolveSftpOptions = static function (OptionsResolver $resolver, Options $parent): void { + $resolver + ->setDefaults([ + // https://digitaliseringskataloget.dk/files/integration-files/260220200803/20200226_Vejledning%20til%20Serviceplatformens%20SFTP%20Service.pdf#page=14 + 'host' => $parent['test_mode'] + ? 'sftpexttest.serviceplatformen.dk' + : 'sftp.serviceplatformen.dk', + 'port' => 22, + ]) + ->setAllowedTypes('host', 'string') + ->setAllowedTypes('port', 'int') + ->setRequired('username') + ->setAllowedTypes('username', 'string') + ->setRequired('private_key') + ->setAllowedTypes('private_key', 'string') + ->setDefault('private_key_passphrase', null) + ->setAllowedTypes('private_key_passphrase', ['string', 'null']); + }; + + return (new OptionsResolver()) + ->setRequired('certificate') + ->setAllowedTypes('certificate', ['string', CertificateLocatorInterface::class]) + ->setRequired('authority_cvr') + ->addAllowedTypes('authority_cvr', 'string') + ->setDefaults([ + 'debug' => false, + 'test_mode' => true, + 'certificate_passphrase' => '', + 'service_endpoint_domain' => static function (Options $options) { + return $options['test_mode'] + ? 'https://exttest.serviceplatformen.dk' + : 'https://prod.serviceplatformen.dk'; + }, + ]) + ->setRequired('sftp') + ->setDefault('sftp', $resolveSftpOptions) + // Defining nested options via setDefault() is deprecated since Symfony 7.3 + // (cf. https://symfony.com/doc/current/components/options_resolver.html#nested-options) + // ->setOptions('sftp', $resolveSftpOptions) + ->resolve($options); + } + + public function getSoapLocation(string $location): string + { + return $this->options['service_endpoint_domain'] + .parse_url($location, PHP_URL_PATH); + } + + public static function formatDateTime(\DateTimeInterface $dateTime): string + { + return $dateTime->format(self::DATETIME_FORMAT); + } + + public static function formatDate(\DateTimeInterface $dateTime): string + { + return $dateTime->format(self::DATE_FORMAT); + } + + /** + * Perform service request using a local certificate. + * + * @throws \ItkDev\Serviceplatformen\Certificate\Exception\CertificateLocatorException + * + * @todo (How) Can we do this in a better way? + */ + private function callService( + string $serviceClass, + string $serviceMethod, + AbstractStructBase $request, + ): ?AbstractStructBase { + $this->lastRequest = $request; + + [$localCert, $passphrase] = $this->getLocalCert(); + + try { + $event = new BeforeServiceCallEvent( + request: $request, + ); + $this->eventDispatcher->dispatch($event); + + $service = (new $serviceClass([ + SoapClientInterface::WSDL_URL => __DIR__.'/../../../resources/sf2900/wsdl/context/DistributionService.wsdl', + SoapClientInterface::WSDL_CLASSMAP => ClassMap::get(), + SoapClientInterface::WSDL_LOCAL_CERT => $localCert, + SoapClientInterface::WSDL_PASSPHRASE => $passphrase, + ])) + ->setSF2900($this); + + $response = $service->{$serviceMethod}($request) ?: null; + + $event = new AfterServiceCallEvent( + request: $request, + response: $response, + ); + $this->eventDispatcher->dispatch($event); + + return $response; + } finally { + if (file_exists($localCert)) { + unlink($localCert); + } + } + } + + /** + * Get local certificate in PEM format. + * + * @return array[string, string] + * [filename, passphrase] + * + * @throws \ItkDev\Serviceplatformen\Certificate\Exception\CertificateLocatorException + */ + private function getLocalCert(): array + { + // @todo Does this only work with a file system certificate locator?! + $certificate = $this->options['certificate']; + $certificatePassphrase = $this->options['certificate_passphrase']; + + $localCertFilename = tempnam(sys_get_temp_dir(), 'cert'); + if ($certificate instanceof CertificateLocatorInterface) { + $certificates = $certificate->getCertificates(); + $output = [null, null]; + openssl_x509_export($certificates['cert'], $output[0]); + $certificatePassphrase = ''; + openssl_pkey_export($certificates['pkey'], $output[1], $certificatePassphrase); + file_put_contents($localCertFilename, join(PHP_EOL, $output)); + } else { + file_put_contents($localCertFilename, $certificate); + } + + return [ + $localCertFilename, + $certificatePassphrase, + ]; + } + + private function buildFordelingsmodtagerListRequest( + string $routingMyndighed, + ?string $routingKLEEmne, + ?string $routingHandlingFacet = null, + ?string $afsendendeMyndighed = null, + ?string $authorityContextMunicipalityCVR = null, + ): FordelingsmodtagerListRequestType { + $afsendendeMyndighed ??= $this->options['authority_cvr']; + $authorityContextMunicipalityCVR ??= $afsendendeMyndighed; + + $routing = new FordelingsmodtagerListRequest( + afsendendeMyndighed: $afsendendeMyndighed, + routingMyndighed: $routingMyndighed, + routingKLEEmne: $routingKLEEmne, + routingHandlingFacet: $routingHandlingFacet + ); + $authorityContext = new AuthorityContextType($authorityContextMunicipalityCVR); + + return new FordelingsmodtagerListRequestType( + routing: $routing, + authorityContext: $authorityContext + ); + } + + private function buildFordelingsobjektAfsendRequest( + string $transactionId, + DistributionDokumentType|DistributionJournalPostType|DistributionFormularType $document, + string $routingMyndighed, + string $routingKLEEmne, + ?string $routingHandlingFacet = null, + ?string $afsendendeMyndighed = null, + ?string $authorityContextMunicipalityCVR = null, + ?string $routingModtagerAktoer = null, + ?string $dokumentFilNavn = null, + ): FordelingsobjektAfsendRequestType { + $afsendendeMyndighed ??= $this->options['authority_cvr']; + $authorityContextMunicipalityCVR ??= $afsendendeMyndighed; + + $objectIndhold = new ObjektIndholdType(); + if ($document instanceof DistributionDokumentType) { + $type = ObjektTypeType::VALUE_DOKUMENT; + $objectIndhold->setDistributionDokument($document); + } elseif ($document instanceof DistributionJournalPostType) { + $type = ObjektTypeType::VALUE_JOURNALPOST; + $objectIndhold->setDistributionJournalPost($document); + } elseif ($document instanceof DistributionFormularType) { + $type = ObjektTypeType::VALUE_FORMULAR; + $objectIndhold->setDistributionFormular($document); + } else { + throw new \Exception(sprintf('Invalid document class: %s', $document::class)); + } + + $distributionObject = new DistributionObjectType( + objektType: $type, + objektIndhold: $objectIndhold, + ); + + $routingValg = null !== $routingModtagerAktoer + ? new RoutingValg(routingModtagerAktoer: $routingModtagerAktoer) + : new RoutingValg( + routingKLEEmneHandling: new RoutingKLEInfo( + routingKLEEmne: $routingKLEEmne, + routingHandlingFacet: $routingHandlingFacet, + ), + ); + + $distributionContext = new DistributionContextType( + anvenderTransaktionsID: $transactionId, + afsendendeMyndighed: $afsendendeMyndighed, + routingMyndighed: $routingMyndighed, + routingValg: $routingValg, + distributionTransktionsID: null, + digitalPostMeddelelsesID: null, + dokumentFilNavn: $dokumentFilNavn, + ); + $anmodning = new AnmodRequestType( + distributionContext: $distributionContext, + distributionObject: $distributionObject, + ); + + $authorityContext = new AuthorityContextType($authorityContextMunicipalityCVR); + + return new FordelingsobjektAfsendRequestType( + anmodning: $anmodning, + authorityContext: $authorityContext, + ); + } +} diff --git a/src/Service/SF2900/SF2900/SftpHelper.php b/src/Service/SF2900/SF2900/SftpHelper.php new file mode 100644 index 00000000..3d5e99df --- /dev/null +++ b/src/Service/SF2900/SF2900/SftpHelper.php @@ -0,0 +1,119 @@ +putContents($contents, $filename ?? basename($file), $sftpFilename); + } + + /** + * Put contents in outgoing folder on SFTP server. + */ + public function putContents(string $contents, string $filename, ?string $sftpFilename = null): string + { + $sftp = $this->getSftp(); + $sftpFilename ??= uniqid('sf2900_').'_'.$filename; + if (!$sftp->put($sftpFilename, $contents)) { + throw new SftpException(sprintf('Error putting file %s: %s', $filename, $sftp->getLastError())); + } + + return $sftpFilename; + } + + /** + * Get contents from ingoing folder on SFTP server. + */ + public function getContents(string $filename, string $dir = self::INCOMING_FOLDER, bool $delete = false, bool|string $localFile = false): string + { + $sftp = $this->getSftp($dir); + $contents = $sftp->get($filename, local_file: $localFile); + if (false === $contents) { + throw new SftpException(sprintf('Error getting contents of file %s: %s', $filename, $sftp->getLastError())); + } + + if ($delete) { + $this->delete($filename, $dir); + } + + return $contents; + } + + public function delete(string $filename, string $dir = self::INCOMING_FOLDER) + { + $sftp = $this->getSftp($dir); + if (!$sftp->delete($filename)) { + throw new SftpException(sprintf('Error deleting file %s: %s', $filename, $sftp->getLastError())); + } + } + + public function getFiles(string $dir, bool $recursive = false, bool $raw = false): array + { + $sftp = $this->getSftp($dir); + $files = $raw ? $sftp->rawlist(recursive: $recursive) : $sftp->nlist(recursive: $recursive); + if (false === $files) { + throw new SftpException(sprintf('Cannot list files: %s', $sftp->getLastError())); + } + + return $files; + } + + private function getSftp(string $dir = self::OUTGOING_FOLDER): SFTP + { + $username = $this->options['username']; + if (empty($username)) { + throw new SftpException('SFTP username is required.'); + } + $privateKey = $this->options['private_key']; + if (empty($privateKey)) { + throw new SftpException('Private SFTP key is required.'); + } + $privateKeyPassword = $this->options['private_key_passphrase']; + + // https://digitaliseringskataloget.dk/files/integration-files/120720221330/Kom%20godt%20i%20gang%20-%20filudveksling%20%28SFTP%29.pdf#page=6 + $key = PublicKeyLoader::load($privateKey, $privateKeyPassword ?? ''); + + $host = $this->options['host']; + $sftp = new SFTP($host, $this->options['port']); + if (!$sftp->login($username, $key)) { + throw new SftpException(sprintf('Cannot log in to SFTP host %s: %s', $host, $sftp->getLastError())); + } + + if (!$sftp->chdir($dir)) { + throw new SftpException(sprintf('Cannot change SFTP directory to %s: %s', $dir, $sftp->getLastError())); + } + + return $sftp; + } +} diff --git a/src/Service/SF2900/Serializer.php b/src/Service/SF2900/Serializer.php new file mode 100644 index 00000000..fbd2679a --- /dev/null +++ b/src/Service/SF2900/Serializer.php @@ -0,0 +1,110 @@ + 'lib/metadata/digitaliseringskataloget/Sftp', + ]; + + private SerializerInterface $serializer; + + /** + * Serialize data as XML. + */ + public function serialize($data): string + { + $xml = $this->serializer()->serialize($data, 'xml'); + + return $this->normalizeXml($xml); + } + + /** + * Unserialize an XML string. + * + * @template T + * + * @param class-string $type + * + * @return T + */ + public function deserialize(string $xml, string $type): mixed + { + return $this->serializer()->deserialize($xml, $type, 'xml'); + } + + /** + * Format date time as Zulu time. + * + * @see https://stackoverflow.com/a/57701653/2502647 + */ + public static function formatDateTimeZulu(\DateTimeInterface $dateTime): string + { + return (new \DateTimeImmutable($dateTime->format(\DateTimeInterface::ATOM), new \DateTimeZone('UTC'))) + ->format('Y-m-d\TH:i:s\Z'); + } + + public static function createUuid(): string + { + return Uuid::v4()->toRfc4122(); + } + + /** + * Helper function to load XML into a DOM document. + * + * We need to be able to handle very long node values (base64 encoded PDF files). + */ + public static function loadXML(string $xml, ?\DOMDocument $document = null): \DOMDocument + { + $document ??= new \DOMDocument(); + + $document->loadXML($xml, LIBXML_PARSEHUGE); + + return $document; + } + + private function normalizeXml(string $xml): string + { + $document = static::loadXML($xml); + + return $document->saveXML(); + } + + private function serializer(): SerializerInterface + { + if (!isset($this->serializer)) { + $serializerBuilder = SerializerBuilder::create(); + + foreach (self::NAMESPACE2METADATA as $namespacePrefix => $dir) { + $serializerBuilder->addMetadataDir(__DIR__.'/../../../'.$dir, $namespacePrefix); + } + + $serializerBuilder->configureHandlers(function (HandlerRegistryInterface $handler) use ($serializerBuilder) { + $serializerBuilder->addDefaultHandlers(); + $handler->registerSubscribingHandler(new BaseTypesHandler()); + $handler->registerSubscribingHandler(new XmlSchemaDateHandler()); + }); + + $this->serializer = $serializerBuilder->build(); + } + + return $this->serializer; + } +} diff --git a/src/Service/SF2900/SoapClient.php b/src/Service/SF2900/SoapClient.php new file mode 100644 index 00000000..cde57138 --- /dev/null +++ b/src/Service/SF2900/SoapClient.php @@ -0,0 +1,35 @@ +lastRequest = $request; + + $location = $this->sf2900->getSoapLocation($location); + + return parent::__doRequest($request, $location, $action, $version, $oneWay); + } + + public function __getLastRequest(): ?string + { + return $this->lastRequest ?? parent::__getLastRequest(); + } +} diff --git a/src/Service/SF2900/SoapClientBase.php b/src/Service/SF2900/SoapClientBase.php new file mode 100644 index 00000000..ff54bf2c --- /dev/null +++ b/src/Service/SF2900/SoapClientBase.php @@ -0,0 +1,56 @@ + SOAP_1_1, + ] + parent::getDefaultWsdlOptions(); + } + + public function setSF2900(SF2900 $sf2900): static + { + $this->sf2900 = $sf2900; + + return $this; + } + + public function getSoapClient(): ?SoapClient + { + $soapClient = parent::getSoapClient(); + assert($soapClient instanceof SoapClient); + $soapClient->sf2900 = $this->sf2900; + + return $soapClient; + } + + public function saveLastError(string $methodName, \SoapFault $soapFault): static + { + // Throw a SOAP exception rather than just storing a SOAP fault as the parent class does. + throw new SoapException($soapFault, $this->getLastRequest(), $this->getLastResponse()); + } +} diff --git a/xsd2php-config.yml b/xsd2php-config.yml index 3f19a803..5ba5b90f 100644 --- a/xsd2php-config.yml +++ b/xsd2php-config.yml @@ -48,6 +48,8 @@ xsd2php: 'urn:oio:fjernprint:1.0.0': 'Oio\Fjernprint' 'urn:oio:sagdok:3.0.0': 'Oio\Sagdok' + 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types': 'Digitaliseringskataloget\Sftp' + destinations_php: # These must also be set in autoload.psr-4 in composer.json. 'DigitalPost\MeMo': 'lib/DigitalPost/MeMo/' @@ -67,6 +69,8 @@ xsd2php: 'Oio': 'lib/Oio' + 'Digitaliseringskataloget\Sftp': 'lib/digitaliseringskataloget/Sftp' + destinations_jms: # These must also be set in src/Service/SF1601/Serializer.php 'DigitalPost\MeMo': 'lib/metadata/DigitalPost/MeMo/' @@ -86,6 +90,8 @@ xsd2php: 'Oio': 'lib/metadata/Oio' + 'Digitaliseringskataloget\Sftp': 'lib/metadata/digitaliseringskataloget/Sftp' + xml_namespaces: # prefix: namespace 'memo': 'https://DigitalPost.dk/MeMo-1' @@ -98,3 +104,4 @@ xsd2php: 'dmv': 'https://motorregister.skat.dk/' 'grd': 'https://data.gov.dk/model/core/' 'sor': 'https://services.nsi.dk/en/Services/SOR' + 'sftp': 'http://serviceplatformen.dk/xml/wsdl/soap11/SFTP/1/types'