From b35d55e3f57630551f0b773674bd1f5c44585ede Mon Sep 17 00:00:00 2001 From: "Singal, Kapil (ks220y)" Date: Thu, 9 Aug 2018 20:47:29 +0000 Subject: Controller Blueprints MS Creating the base directory structure for Controller Blueprints MicroService Change-Id: I1ccf7fc76446048af3b2822f9155bb634657aee3 Issue-ID: CCSDK-410 Signed-off-by: Singal, Kapil (ks220y) --- ms/controllerblueprints/.gitignore | 22 + ms/controllerblueprints/README.md | 0 ms/controllerblueprints/README_FIRST.txt | 0 .../application/etc/SecurityFilterExpressions.cfg | 71 + .../etc/SecurityFilterExpressionsPool.properties | 22 + ms/controllerblueprints/application/etc/run.source | 16 + .../Definitions/activation-blueprint.json | 411 + .../Mappings/baseconfig-mapping.json | 3 + .../baseconfiguration/Plans/ActivateProcess.bpmn | 66 + .../Scripts/SamplePythonComponentNode.py | 8 + .../baseconfiguration/Scripts/__init__.py | 0 .../baseconfiguration/TOSCA-Metadata/TOSCA.meta | 8 + .../Templates/baseconfig-template.vtl | 1 + .../load/blueprints/baseconfiguration/__init__.py | 0 .../artifact_type/artifact-mapping-resource.json | 8 + .../artifact_type/artifact-script-python.json | 8 + .../artifact_type/artifact-template-velocity.json | 8 + .../tosca.artifacts.Implementation.json | 5 + .../model_type/data_type/datatype-property.json | 27 + .../data_type/datatype-resource-assignment.json | 46 + .../load/model_type/data_type/dt-license-key.json | 11 + .../load/model_type/data_type/dt-v4-aggregate.json | 15 + .../data_type/tosca.datatypes.Credential.json | 31 + .../node_type/artifact-config-template.json | 37 + .../node_type/component-config-generator.json | 72 + .../node_type/component-netconf-executor.json | 79 + .../node_type/component-resource-assignment.json | 68 + .../model_type/node_type/dg-activate-netconf.json | 66 + .../model_type/node_type/dg-config-generator.json | 65 + .../node_type/dg-resource-assign-activate.json | 70 + .../node_type/dg-resource-assignment.json | 65 + .../model_type/node_type/vnf-netconf-device.json | 42 + .../opt/app/onap/config/application.properties | 75 + .../application/opt/app/onap/config/logback.xml | 36 + ms/controllerblueprints/application/pom.xml | 242 + .../application/src/assembly/distribution.xml | 80 + .../application/src/main/dc/docker-compose.yaml | 36 + .../application/src/main/docker/Dockerfile | 17 + .../application/src/main/docker/startService.sh | 8 + .../controllerblueprints/ApplicationConstants.java | 27 + .../ControllerBluprintsApplication.java | 38 + .../ControllerBluprintsFilterConfiguration.java | 37 + .../apps/controllerblueprints/CorsConfig.java | 52 + .../apps/controllerblueprints/DatabaseConfig.java | 61 + .../controllerblueprints/JerseyConfiguration.java | 102 + .../controllerblueprints/WebMvcConfiguration.java | 37 + .../application/src/main/resources/sql/data.sql | 0 .../src/main/resources/sql/schema-local.sql | 87 + .../application/src/main/resources/sql/schema.sql | 82 + .../main/resources/swagger-ui/dist/css/print.css | 1 + .../main/resources/swagger-ui/dist/css/reset.css | 1 + .../main/resources/swagger-ui/dist/css/screen.css | 1 + .../main/resources/swagger-ui/dist/css/style.css | 1 + .../resources/swagger-ui/dist/css/typography.css | 0 .../swagger-ui/dist/fonts/DroidSans-Bold.ttf | Bin 0 -> 42480 bytes .../resources/swagger-ui/dist/fonts/DroidSans.ttf | Bin 0 -> 41028 bytes .../resources/swagger-ui/dist/images/collapse.gif | Bin 0 -> 69 bytes .../resources/swagger-ui/dist/images/expand.gif | Bin 0 -> 73 bytes .../swagger-ui/dist/images/explorer_icons.png | Bin 0 -> 5115 bytes .../swagger-ui/dist/images/favicon-16x16.png | Bin 0 -> 445 bytes .../swagger-ui/dist/images/favicon-32x32.png | Bin 0 -> 1141 bytes .../resources/swagger-ui/dist/images/favicon.ico | Bin 0 -> 5430 bytes .../swagger-ui/dist/images/logo_small.png | Bin 0 -> 455 bytes .../swagger-ui/dist/images/pet_store_api.png | Bin 0 -> 631 bytes .../resources/swagger-ui/dist/images/throbber.gif | Bin 0 -> 9257 bytes .../swagger-ui/dist/images/wordnik_api.png | Bin 0 -> 670 bytes .../src/main/resources/swagger-ui/dist/index.html | 125 + .../src/main/resources/swagger-ui/dist/lang/ca.js | 53 + .../src/main/resources/swagger-ui/dist/lang/el.js | 56 + .../src/main/resources/swagger-ui/dist/lang/en.js | 56 + .../src/main/resources/swagger-ui/dist/lang/es.js | 53 + .../src/main/resources/swagger-ui/dist/lang/fr.js | 54 + .../src/main/resources/swagger-ui/dist/lang/geo.js | 56 + .../src/main/resources/swagger-ui/dist/lang/it.js | 52 + .../src/main/resources/swagger-ui/dist/lang/ja.js | 56 + .../main/resources/swagger-ui/dist/lang/ko-kr.js | 53 + .../src/main/resources/swagger-ui/dist/lang/pl.js | 53 + .../src/main/resources/swagger-ui/dist/lang/pt.js | 53 + .../src/main/resources/swagger-ui/dist/lang/ru.js | 56 + .../src/main/resources/swagger-ui/dist/lang/tr.js | 53 + .../resources/swagger-ui/dist/lang/translator.js | 39 + .../main/resources/swagger-ui/dist/lang/zh-cn.js | 56 + .../resources/swagger-ui/dist/lib/backbone-min.js | 1 + .../main/resources/swagger-ui/dist/lib/es5-shim.js | 1 + .../swagger-ui/dist/lib/handlebars-4.0.5.js | 3 + .../swagger-ui/dist/lib/highlight.9.1.0.pack.js | 1 + .../dist/lib/highlight.9.1.0.pack_extended.js | 1 + .../swagger-ui/dist/lib/jquery-1.8.0.min.js | 3 + .../swagger-ui/dist/lib/jquery.ba-bbq.min.js | 1 + .../swagger-ui/dist/lib/jquery.slideto.min.js | 1 + .../swagger-ui/dist/lib/jquery.wiggle.min.js | 1 + .../resources/swagger-ui/dist/lib/js-yaml.min.js | 2 + .../swagger-ui/dist/lib/jsoneditor.min.js | 5 + .../resources/swagger-ui/dist/lib/lodash.min.js | 2 + .../main/resources/swagger-ui/dist/lib/marked.js | 1 + .../swagger-ui/dist/lib/object-assign-pollyfill.js | 1 + .../swagger-ui/dist/lib/sanitize-html.min.js | 4 + .../resources/swagger-ui/dist/lib/swagger-oauth.js | 1 + .../src/main/resources/swagger-ui/dist/o2c.html | 36 + .../main/resources/swagger-ui/dist/swagger-ui.js | 25378 +++++++++++++++++++ .../resources/swagger-ui/dist/swagger-ui.min.js | 15 + .../main/resources/swagger-ui/dist/swagger.json | 1957 ++ .../ControllerBluprintsApplicationTest.java | 54 + .../src/test/resources/application.properties | 65 + .../Definitions/activation-blueprint.json | 411 + .../Mappings/baseconfig-mapping.json | 3 + .../baseconfiguration/Plans/ActivateProcess.bpmn | 66 + .../Scripts/SamplePythonComponentNode.py | 8 + .../baseconfiguration/Scripts/__init__.py | 0 .../baseconfiguration/TOSCA-Metadata/TOSCA.meta | 8 + .../Templates/baseconfig-template.vtl | 1 + .../load/blueprints/baseconfiguration/__init__.py | 0 .../Definitions/sample-nodetype.json | 34 + .../Definitions/simple-baseconfig.json | 345 + .../Mappings/baseconfig-mapping.json | 3 + .../simple-baseconfig/Plans/ActivateProcess.bpmn | 66 + .../Scripts/SamplePythonComponentNode.py | 8 + .../simple-baseconfig/Scripts/__init__.py | 0 .../simple-baseconfig/TOSCA-Metadata/TOSCA.meta | 8 + .../Templates/base-config-template.vtl | 40 + .../Templates/baseconfig-template.vtl | 1 + .../Templates/licence-template.vtl | 4 + .../load/blueprints/simple-baseconfig/__init__.py | 0 .../artifact_type/artifact-mapping-resource.json | 8 + .../artifact_type/artifact-script-python.json | 8 + .../artifact_type/artifact-template-velocity.json | 8 + .../tosca.artifacts.Implementation.json | 5 + .../model_type/data_type/datatype-property.json | 27 + .../data_type/datatype-resource-assignment.json | 46 + .../load/model_type/data_type/dt-license-key.json | 11 + .../load/model_type/data_type/dt-v4-aggregate.json | 15 + .../data_type/tosca.datatypes.Credential.json | 31 + .../node_type/artifact-config-template.json | 37 + .../node_type/component-config-generator.json | 72 + .../node_type/component-netconf-executor.json | 79 + .../node_type/component-resource-assignment.json | 68 + .../model_type/node_type/dg-activate-netconf.json | 66 + .../model_type/node_type/dg-config-generator.json | 65 + .../node_type/dg-resource-assign-activate.json | 70 + .../node_type/dg-resource-assignment.json | 65 + .../model_type/node_type/vnf-netconf-device.json | 42 + ms/controllerblueprints/modules/core/pom.xml | 109 + .../core/BluePrintConstants.kt | 125 + .../core/BluePrintException.kt | 49 + .../controllerblueprints/core/BluePrintTypes.kt | 91 + .../core/ConfigModelConstant.kt | 52 + .../controllerblueprints/core/CustomFunctions.kt | 75 + .../core/OrchestratorException.kt | 48 + .../core/data/BluePrintExpressionData.kt | 70 + .../core/data/BluePrintModel.kt | 604 + .../core/factory/BluePrintEnhancerFactory.kt | 45 + .../core/factory/BluePrintParserFactory.kt | 51 + .../core/factory/BluePrintValidatorFactory.kt | 45 + .../core/service/BluePrintChainedService.kt | 117 + .../core/service/BluePrintContext.kt | 177 + .../core/service/BluePrintEnhancerRepoService.kt | 92 + .../core/service/BluePrintEnhancerService.kt | 240 + .../core/service/BluePrintExpressionService.kt | 174 + .../core/service/BluePrintParserService.kt | 62 + .../core/service/BluePrintRuntimeService.kt | 274 + .../core/service/BluePrintValidatorService.kt | 353 + .../core/service/PropertyAssignmentService.kt | 198 + .../core/utils/BluePrintMetadataUtils.kt | 95 + .../core/utils/BluePrintRuntimeUtils.kt | 55 + .../core/utils/JacksonUtils.kt | 179 + .../core/utils/ResourceResolverUtils.kt | 62 + .../core/utils/ServiceTemplateUtils.kt | 44 + .../core/utils/TopologicalSortingUtils.kt | 131 + .../core/CustomFunctionsTest.kt | 35 + .../core/service/BluePrintContextTest.kt | 70 + .../BluePrintEnhancerRepoFileServiceTest.kt | 51 + .../core/service/BluePrintEnhancerServiceTest.kt | 40 + .../core/service/BluePrintExpressionServiceTest.kt | 109 + .../core/service/BluePrintParserFactoryTest.kt | 42 + .../core/service/BluePrintRuntimeServiceTest.kt | 131 + .../BluePrintValidatorDefaultServiceTest.kt | 48 + .../core/utils/BluePrintMetadataUtilsTest.kt | 40 + .../core/utils/JacksonUtilsTest.kt | 71 + .../core/utils/TopologicalSortingUtilsTest.kt | 36 + .../src/test/resources/componentnode/default.json | 100 + .../src/test/resources/data/default-context.json | 5 + .../resources/dictionary/dictionary_schema.json | 261 + .../src/test/resources/properties/convert.json | 33 + .../src/test/resources/properties/default.json | 16 + ms/controllerblueprints/modules/pom.xml | 54 + .../modules/resource-dict/pom.xml | 47 + .../resource/dict/ResourceAssignment.java | 167 + .../resource/dict/data/DecryptionRule.java | 67 + .../resource/dict/data/DictionaryDefinition.java | 181 + .../resource/dict/data/DictionaryDependency.java | 36 + .../resource/dict/data/SourceDb.java | 83 + .../resource/dict/data/SourceDefault.java | 36 + .../resource/dict/data/SourceInput.java | 37 + .../resource/dict/data/SourceMdsal.java | 97 + .../dict/utils/ResourceDictionaryUtils.java | 129 + .../validator/ResourceAssignmentValidator.java | 164 + .../dict/util/ResourceDictionaryUtilsTest.java | 165 + .../Definitions/activation-blueprint.json | 411 + .../Mappings/baseconfig-mapping.json | 3 + .../baseconfiguration/Plans/ActivateProcess.bpmn | 66 + .../Scripts/SamplePythonComponentNode.py | 8 + .../baseconfiguration/Scripts/__init__.py | 0 .../baseconfiguration/TOSCA-Metadata/TOSCA.meta | 8 + .../Templates/baseconfig-template.vtl | 1 + .../load/blueprints/baseconfiguration/__init__.py | 0 .../blueprints/vrr-test/Definitions/vrr-test.json | 742 + .../blueprints/vrr-test/TOSCA-Metadata/TOSCA.meta | 5 + .../vrr-test/Templates/base-config-template.vtl | 40 + .../vrr-test/Templates/licence-template.vtl | 4 + .../service/load/blueprints/vrr-test/__init__.py | 0 .../artifact_type/artifact-mapping-resource.json | 8 + .../artifact_type/artifact-script-python.json | 8 + .../artifact_type/artifact-template-velocity.json | 8 + .../model_type/data_type/datatype-property.json | 27 + .../data_type/datatype-resource-assignment.json | 46 + .../load/model_type/data_type/dt-license-key.json | 11 + .../load/model_type/data_type/dt-v4-aggregate.json | 15 + .../node_type/artifact-config-template.json | 37 + .../node_type/component-config-generator.json | 72 + .../node_type/component-netconf-edit.json | 95 + .../node_type/component-netconf-executor.json | 79 + .../node_type/component-netconf-get.json | 61 + .../node_type/component-resource-assignment.json | 68 + .../node_type/component-transaction-netconf.json | 93 + .../model_type/node_type/dg-activate-netconf.json | 66 + .../model_type/node_type/dg-config-generator.json | 65 + .../node_type/dg-resource-assign-activate.json | 70 + .../node_type/dg-resource-assignment.json | 65 + .../model_type/node_type/vnf-netconf-device.json | 42 + .../load/resource_dictionary/action-name.json | 17 + .../load/resource_dictionary/bundle-id.json | 32 + .../load/resource_dictionary/v4-ip-type.json | 14 + ms/controllerblueprints/modules/service/pom.xml | 96 + .../service/AutoResourceMappingService.java | 211 + .../service/BluePrintEnhancerRepoDBService.java | 100 + .../service/BluePrintEnhancerService.java | 207 + .../service/ConfigModelCreateService.java | 339 + .../service/ConfigModelService.java | 247 + .../service/ConfigModelValidatorService.java | 67 + .../service/DataBaseInitService.java | 325 + .../service/ModelTypeService.java | 178 + .../service/ResourceDictionaryService.java | 169 + .../service/SchemaGeneratorService.java | 116 + .../service/ServiceTemplateService.java | 140 + .../service/common/ApplicationConstants.java | 33 + .../service/common/ErrorMessage.java | 63 + .../service/common/ServiceExceptionMapper.java | 42 + .../service/common/SwaggerGenerator.java | 187 + .../service/domain/ConfigModel.java | 291 + .../service/domain/ConfigModelContent.java | 175 + .../service/domain/ConfigModelSearch.java | 171 + .../service/domain/ModelType.java | 170 + .../service/domain/ResourceDictionary.java | 207 + .../service/model/AutoMapResponse.java | 53 + .../repository/ConfigModelContentRepository.java | 95 + .../service/repository/ConfigModelRepository.java | 90 + .../repository/ConfigModelSearchRepository.java | 43 + .../service/repository/ModelTypeRepository.java | 98 + .../repository/ResourceDictionaryRepository.java | 68 + .../service/rs/ConfigModelRest.java | 179 + .../service/rs/ConfigModelRestImpl.java | 116 + .../service/rs/ModelTypeRest.java | 125 + .../service/rs/ModelTypeRestImpl.java | 87 + .../service/rs/ResourceDictionaryRest.java | 126 + .../service/rs/ResourceDictionaryRestImpl.java | 91 + .../service/rs/ServiceTemplateRest.java | 134 + .../service/rs/ServiceTemplateRestImpl.java | 94 + .../service/utils/ConfigModelUtils.java | 124 + .../service/validator/ModelTypeValidator.java | 200 + .../validator/ResourceDictionaryValidator.java | 88 + .../validator/ServiceTemplateValidator.java | 123 + .../service_template/default_netconf.json | 890 + .../service/src/main/resources/sql/data.sql | 0 .../src/main/resources/sql/schema-local.sql | 87 + .../service/src/main/resources/sql/schema.sql | 82 + .../apps/controllerblueprints/DatabaseConfig.java | 61 + .../controllerblueprints/JerseyConfiguration.java | 69 + .../apps/controllerblueprints/TestApplication.java | 34 + .../controllerblueprints/TestConfiguration.java | 36 + .../service/common/SchemaGeneratorServiceTest.java | 50 + .../common/ServiceTemplateValidationTest.java | 56 + .../service/rs/ConfigModelRestTest.java | 172 + .../service/rs/ModelTypeRestTest.java | 130 + .../service/rs/ResourceDictionaryRestTest.java | 113 + .../service/rs/ServiceTemplateRestTest.java | 155 + .../service/utils/ConfigModelUtilsTest.java | 33 + .../src/test/resources/application.properties | 67 + .../test/resources/enhance/enhance-template.json | 345 + .../test/resources/enhance/enhanced-template.json | 824 + .../test/resources/resourcedictionary/automap.json | 11 + .../resourcedictionary/default_definition.json | 19 + ms/controllerblueprints/parent/pom.xml | 228 + ms/controllerblueprints/pom.xml | 41 + ms/controllerblueprints/repoproject.txt | 1 + ms/controllerblueprints/time.txt | 1 + 295 files changed, 49787 insertions(+) create mode 100644 ms/controllerblueprints/.gitignore create mode 100755 ms/controllerblueprints/README.md create mode 100644 ms/controllerblueprints/README_FIRST.txt create mode 100644 ms/controllerblueprints/application/etc/SecurityFilterExpressions.cfg create mode 100644 ms/controllerblueprints/application/etc/SecurityFilterExpressionsPool.properties create mode 100644 ms/controllerblueprints/application/etc/run.source create mode 100644 ms/controllerblueprints/application/load/blueprints/baseconfiguration/Definitions/activation-blueprint.json create mode 100644 ms/controllerblueprints/application/load/blueprints/baseconfiguration/Mappings/baseconfig-mapping.json create mode 100644 ms/controllerblueprints/application/load/blueprints/baseconfiguration/Plans/ActivateProcess.bpmn create mode 100644 ms/controllerblueprints/application/load/blueprints/baseconfiguration/Scripts/SamplePythonComponentNode.py create mode 100644 ms/controllerblueprints/application/load/blueprints/baseconfiguration/Scripts/__init__.py create mode 100644 ms/controllerblueprints/application/load/blueprints/baseconfiguration/TOSCA-Metadata/TOSCA.meta create mode 100644 ms/controllerblueprints/application/load/blueprints/baseconfiguration/Templates/baseconfig-template.vtl create mode 100644 ms/controllerblueprints/application/load/blueprints/baseconfiguration/__init__.py create mode 100644 ms/controllerblueprints/application/load/model_type/artifact_type/artifact-mapping-resource.json create mode 100644 ms/controllerblueprints/application/load/model_type/artifact_type/artifact-script-python.json create mode 100644 ms/controllerblueprints/application/load/model_type/artifact_type/artifact-template-velocity.json create mode 100644 ms/controllerblueprints/application/load/model_type/artifact_type/tosca.artifacts.Implementation.json create mode 100644 ms/controllerblueprints/application/load/model_type/data_type/datatype-property.json create mode 100644 ms/controllerblueprints/application/load/model_type/data_type/datatype-resource-assignment.json create mode 100644 ms/controllerblueprints/application/load/model_type/data_type/dt-license-key.json create mode 100644 ms/controllerblueprints/application/load/model_type/data_type/dt-v4-aggregate.json create mode 100644 ms/controllerblueprints/application/load/model_type/data_type/tosca.datatypes.Credential.json create mode 100644 ms/controllerblueprints/application/load/model_type/node_type/artifact-config-template.json create mode 100644 ms/controllerblueprints/application/load/model_type/node_type/component-config-generator.json create mode 100644 ms/controllerblueprints/application/load/model_type/node_type/component-netconf-executor.json create mode 100644 ms/controllerblueprints/application/load/model_type/node_type/component-resource-assignment.json create mode 100644 ms/controllerblueprints/application/load/model_type/node_type/dg-activate-netconf.json create mode 100644 ms/controllerblueprints/application/load/model_type/node_type/dg-config-generator.json create mode 100644 ms/controllerblueprints/application/load/model_type/node_type/dg-resource-assign-activate.json create mode 100644 ms/controllerblueprints/application/load/model_type/node_type/dg-resource-assignment.json create mode 100644 ms/controllerblueprints/application/load/model_type/node_type/vnf-netconf-device.json create mode 100644 ms/controllerblueprints/application/opt/app/onap/config/application.properties create mode 100644 ms/controllerblueprints/application/opt/app/onap/config/logback.xml create mode 100644 ms/controllerblueprints/application/pom.xml create mode 100644 ms/controllerblueprints/application/src/assembly/distribution.xml create mode 100644 ms/controllerblueprints/application/src/main/dc/docker-compose.yaml create mode 100644 ms/controllerblueprints/application/src/main/docker/Dockerfile create mode 100644 ms/controllerblueprints/application/src/main/docker/startService.sh create mode 100644 ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/ApplicationConstants.java create mode 100644 ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/ControllerBluprintsApplication.java create mode 100644 ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/ControllerBluprintsFilterConfiguration.java create mode 100644 ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/CorsConfig.java create mode 100644 ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/DatabaseConfig.java create mode 100644 ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/JerseyConfiguration.java create mode 100644 ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/WebMvcConfiguration.java create mode 100644 ms/controllerblueprints/application/src/main/resources/sql/data.sql create mode 100644 ms/controllerblueprints/application/src/main/resources/sql/schema-local.sql create mode 100644 ms/controllerblueprints/application/src/main/resources/sql/schema.sql create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/print.css create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/reset.css create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/screen.css create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/style.css create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/typography.css create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/fonts/DroidSans-Bold.ttf create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/fonts/DroidSans.ttf create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/collapse.gif create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/expand.gif create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/explorer_icons.png create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/favicon-16x16.png create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/favicon-32x32.png create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/favicon.ico create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/logo_small.png create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/pet_store_api.png create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/throbber.gif create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/wordnik_api.png create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/index.html create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ca.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/el.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/en.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/es.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/fr.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/geo.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/it.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ja.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ko-kr.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/pl.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/pt.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ru.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/tr.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/translator.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/zh-cn.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/backbone-min.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/es5-shim.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/handlebars-4.0.5.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/highlight.9.1.0.pack.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/highlight.9.1.0.pack_extended.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/jquery-1.8.0.min.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/jquery.ba-bbq.min.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/jquery.slideto.min.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/jquery.wiggle.min.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/js-yaml.min.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/jsoneditor.min.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/lodash.min.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/marked.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/object-assign-pollyfill.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/sanitize-html.min.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/swagger-oauth.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/o2c.html create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/swagger-ui.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/swagger-ui.min.js create mode 100644 ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/swagger.json create mode 100644 ms/controllerblueprints/application/src/test/java/org/onap/ccsdk/apps/controllerblueprints/ControllerBluprintsApplicationTest.java create mode 100644 ms/controllerblueprints/application/src/test/resources/application.properties create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/baseconfiguration/Definitions/activation-blueprint.json create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/baseconfiguration/Mappings/baseconfig-mapping.json create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/baseconfiguration/Plans/ActivateProcess.bpmn create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/baseconfiguration/Scripts/SamplePythonComponentNode.py create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/baseconfiguration/Scripts/__init__.py create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/baseconfiguration/TOSCA-Metadata/TOSCA.meta create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/baseconfiguration/Templates/baseconfig-template.vtl create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/baseconfiguration/__init__.py create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/simple-baseconfig/Definitions/sample-nodetype.json create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/simple-baseconfig/Definitions/simple-baseconfig.json create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/simple-baseconfig/Mappings/baseconfig-mapping.json create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/simple-baseconfig/Plans/ActivateProcess.bpmn create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/simple-baseconfig/Scripts/SamplePythonComponentNode.py create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/simple-baseconfig/Scripts/__init__.py create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/simple-baseconfig/TOSCA-Metadata/TOSCA.meta create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/simple-baseconfig/Templates/base-config-template.vtl create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/simple-baseconfig/Templates/baseconfig-template.vtl create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/simple-baseconfig/Templates/licence-template.vtl create mode 100644 ms/controllerblueprints/modules/core/load/blueprints/simple-baseconfig/__init__.py create mode 100644 ms/controllerblueprints/modules/core/load/model_type/artifact_type/artifact-mapping-resource.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/artifact_type/artifact-script-python.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/artifact_type/artifact-template-velocity.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/artifact_type/tosca.artifacts.Implementation.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/data_type/datatype-property.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/data_type/datatype-resource-assignment.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/data_type/dt-license-key.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/data_type/dt-v4-aggregate.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/data_type/tosca.datatypes.Credential.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/node_type/artifact-config-template.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/node_type/component-config-generator.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/node_type/component-netconf-executor.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/node_type/component-resource-assignment.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/node_type/dg-activate-netconf.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/node_type/dg-config-generator.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/node_type/dg-resource-assign-activate.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/node_type/dg-resource-assignment.json create mode 100644 ms/controllerblueprints/modules/core/load/model_type/node_type/vnf-netconf-device.json create mode 100644 ms/controllerblueprints/modules/core/pom.xml create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintConstants.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintException.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintTypes.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/ConfigModelConstant.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/CustomFunctions.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/OrchestratorException.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/data/BluePrintExpressionData.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/data/BluePrintModel.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/factory/BluePrintEnhancerFactory.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/factory/BluePrintParserFactory.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/factory/BluePrintValidatorFactory.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintChainedService.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintContext.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintEnhancerRepoService.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintEnhancerService.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintExpressionService.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintParserService.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintRuntimeService.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintValidatorService.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/PropertyAssignmentService.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/BluePrintMetadataUtils.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/BluePrintRuntimeUtils.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/JacksonUtils.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/ResourceResolverUtils.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/ServiceTemplateUtils.kt create mode 100644 ms/controllerblueprints/modules/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/TopologicalSortingUtils.kt create mode 100644 ms/controllerblueprints/modules/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/CustomFunctionsTest.kt create mode 100644 ms/controllerblueprints/modules/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintContextTest.kt create mode 100644 ms/controllerblueprints/modules/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintEnhancerRepoFileServiceTest.kt create mode 100644 ms/controllerblueprints/modules/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintEnhancerServiceTest.kt create mode 100644 ms/controllerblueprints/modules/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintExpressionServiceTest.kt create mode 100644 ms/controllerblueprints/modules/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintParserFactoryTest.kt create mode 100644 ms/controllerblueprints/modules/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintRuntimeServiceTest.kt create mode 100644 ms/controllerblueprints/modules/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintValidatorDefaultServiceTest.kt create mode 100644 ms/controllerblueprints/modules/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/BluePrintMetadataUtilsTest.kt create mode 100644 ms/controllerblueprints/modules/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/JacksonUtilsTest.kt create mode 100644 ms/controllerblueprints/modules/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/TopologicalSortingUtilsTest.kt create mode 100644 ms/controllerblueprints/modules/core/src/test/resources/componentnode/default.json create mode 100644 ms/controllerblueprints/modules/core/src/test/resources/data/default-context.json create mode 100644 ms/controllerblueprints/modules/core/src/test/resources/dictionary/dictionary_schema.json create mode 100644 ms/controllerblueprints/modules/core/src/test/resources/properties/convert.json create mode 100644 ms/controllerblueprints/modules/core/src/test/resources/properties/default.json create mode 100644 ms/controllerblueprints/modules/pom.xml create mode 100644 ms/controllerblueprints/modules/resource-dict/pom.xml create mode 100644 ms/controllerblueprints/modules/resource-dict/src/main/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceAssignment.java create mode 100644 ms/controllerblueprints/modules/resource-dict/src/main/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/data/DecryptionRule.java create mode 100644 ms/controllerblueprints/modules/resource-dict/src/main/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/data/DictionaryDefinition.java create mode 100644 ms/controllerblueprints/modules/resource-dict/src/main/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/data/DictionaryDependency.java create mode 100644 ms/controllerblueprints/modules/resource-dict/src/main/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/data/SourceDb.java create mode 100644 ms/controllerblueprints/modules/resource-dict/src/main/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/data/SourceDefault.java create mode 100644 ms/controllerblueprints/modules/resource-dict/src/main/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/data/SourceInput.java create mode 100644 ms/controllerblueprints/modules/resource-dict/src/main/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/data/SourceMdsal.java create mode 100644 ms/controllerblueprints/modules/resource-dict/src/main/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryUtils.java create mode 100644 ms/controllerblueprints/modules/resource-dict/src/main/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/validator/ResourceAssignmentValidator.java create mode 100644 ms/controllerblueprints/modules/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/util/ResourceDictionaryUtilsTest.java create mode 100644 ms/controllerblueprints/modules/service/load/blueprints/baseconfiguration/Definitions/activation-blueprint.json create mode 100644 ms/controllerblueprints/modules/service/load/blueprints/baseconfiguration/Mappings/baseconfig-mapping.json create mode 100644 ms/controllerblueprints/modules/service/load/blueprints/baseconfiguration/Plans/ActivateProcess.bpmn create mode 100644 ms/controllerblueprints/modules/service/load/blueprints/baseconfiguration/Scripts/SamplePythonComponentNode.py create mode 100644 ms/controllerblueprints/modules/service/load/blueprints/baseconfiguration/Scripts/__init__.py create mode 100644 ms/controllerblueprints/modules/service/load/blueprints/baseconfiguration/TOSCA-Metadata/TOSCA.meta create mode 100644 ms/controllerblueprints/modules/service/load/blueprints/baseconfiguration/Templates/baseconfig-template.vtl create mode 100644 ms/controllerblueprints/modules/service/load/blueprints/baseconfiguration/__init__.py create mode 100644 ms/controllerblueprints/modules/service/load/blueprints/vrr-test/Definitions/vrr-test.json create mode 100644 ms/controllerblueprints/modules/service/load/blueprints/vrr-test/TOSCA-Metadata/TOSCA.meta create mode 100644 ms/controllerblueprints/modules/service/load/blueprints/vrr-test/Templates/base-config-template.vtl create mode 100644 ms/controllerblueprints/modules/service/load/blueprints/vrr-test/Templates/licence-template.vtl create mode 100644 ms/controllerblueprints/modules/service/load/blueprints/vrr-test/__init__.py create mode 100644 ms/controllerblueprints/modules/service/load/model_type/artifact_type/artifact-mapping-resource.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/artifact_type/artifact-script-python.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/artifact_type/artifact-template-velocity.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/data_type/datatype-property.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/data_type/datatype-resource-assignment.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/data_type/dt-license-key.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/data_type/dt-v4-aggregate.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/node_type/artifact-config-template.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/node_type/component-config-generator.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/node_type/component-netconf-edit.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/node_type/component-netconf-executor.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/node_type/component-netconf-get.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/node_type/component-resource-assignment.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/node_type/component-transaction-netconf.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/node_type/dg-activate-netconf.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/node_type/dg-config-generator.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/node_type/dg-resource-assign-activate.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/node_type/dg-resource-assignment.json create mode 100644 ms/controllerblueprints/modules/service/load/model_type/node_type/vnf-netconf-device.json create mode 100644 ms/controllerblueprints/modules/service/load/resource_dictionary/action-name.json create mode 100644 ms/controllerblueprints/modules/service/load/resource_dictionary/bundle-id.json create mode 100644 ms/controllerblueprints/modules/service/load/resource_dictionary/v4-ip-type.json create mode 100644 ms/controllerblueprints/modules/service/pom.xml create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/AutoResourceMappingService.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/BluePrintEnhancerRepoDBService.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/BluePrintEnhancerService.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/ConfigModelCreateService.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/ConfigModelService.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/ConfigModelValidatorService.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/DataBaseInitService.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/ModelTypeService.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/ResourceDictionaryService.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/SchemaGeneratorService.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/ServiceTemplateService.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/common/ApplicationConstants.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/common/ErrorMessage.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/common/ServiceExceptionMapper.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/common/SwaggerGenerator.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/domain/ConfigModel.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/domain/ConfigModelContent.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/domain/ConfigModelSearch.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/domain/ModelType.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/domain/ResourceDictionary.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/model/AutoMapResponse.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/ConfigModelContentRepository.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/ConfigModelRepository.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/ConfigModelSearchRepository.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/ModelTypeRepository.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/ResourceDictionaryRepository.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/rs/ConfigModelRest.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/rs/ConfigModelRestImpl.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/rs/ModelTypeRest.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/rs/ModelTypeRestImpl.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/rs/ResourceDictionaryRest.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/rs/ResourceDictionaryRestImpl.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/rs/ServiceTemplateRest.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/rs/ServiceTemplateRestImpl.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/utils/ConfigModelUtils.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/validator/ModelTypeValidator.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/validator/ResourceDictionaryValidator.java create mode 100644 ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/validator/ServiceTemplateValidator.java create mode 100644 ms/controllerblueprints/modules/service/src/main/resources/service_template/default_netconf.json create mode 100644 ms/controllerblueprints/modules/service/src/main/resources/sql/data.sql create mode 100644 ms/controllerblueprints/modules/service/src/main/resources/sql/schema-local.sql create mode 100644 ms/controllerblueprints/modules/service/src/main/resources/sql/schema.sql create mode 100644 ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/DatabaseConfig.java create mode 100644 ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/JerseyConfiguration.java create mode 100644 ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/TestApplication.java create mode 100644 ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/TestConfiguration.java create mode 100644 ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/service/common/SchemaGeneratorServiceTest.java create mode 100644 ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/service/common/ServiceTemplateValidationTest.java create mode 100644 ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/service/rs/ConfigModelRestTest.java create mode 100644 ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/service/rs/ModelTypeRestTest.java create mode 100644 ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/service/rs/ResourceDictionaryRestTest.java create mode 100644 ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/service/rs/ServiceTemplateRestTest.java create mode 100644 ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/service/utils/ConfigModelUtilsTest.java create mode 100644 ms/controllerblueprints/modules/service/src/test/resources/application.properties create mode 100644 ms/controllerblueprints/modules/service/src/test/resources/enhance/enhance-template.json create mode 100644 ms/controllerblueprints/modules/service/src/test/resources/enhance/enhanced-template.json create mode 100644 ms/controllerblueprints/modules/service/src/test/resources/resourcedictionary/automap.json create mode 100644 ms/controllerblueprints/modules/service/src/test/resources/resourcedictionary/default_definition.json create mode 100644 ms/controllerblueprints/parent/pom.xml create mode 100644 ms/controllerblueprints/pom.xml create mode 100644 ms/controllerblueprints/repoproject.txt create mode 100644 ms/controllerblueprints/time.txt (limited to 'ms') diff --git a/ms/controllerblueprints/.gitignore b/ms/controllerblueprints/.gitignore new file mode 100644 index 000000000..b808e8430 --- /dev/null +++ b/ms/controllerblueprints/.gitignore @@ -0,0 +1,22 @@ +/target/ +/logs/ +.classpath +.settings/ + +# Target dirs in all projects +**/target-ide/* +**/target/* +**/logs/* +**/tokens/* + +# Added for Intellij IDEA IDE +**/debug-logs/* +**/.idea/* +**/*.iml +**/*.project +**/.springBeans + + +**/*versionsBackup +**/blackDuckHub* +**/*.jsonld \ No newline at end of file diff --git a/ms/controllerblueprints/README.md b/ms/controllerblueprints/README.md new file mode 100755 index 000000000..e69de29bb diff --git a/ms/controllerblueprints/README_FIRST.txt b/ms/controllerblueprints/README_FIRST.txt new file mode 100644 index 000000000..e69de29bb diff --git a/ms/controllerblueprints/application/etc/SecurityFilterExpressions.cfg b/ms/controllerblueprints/application/etc/SecurityFilterExpressions.cfg new file mode 100644 index 000000000..8185daa0d --- /dev/null +++ b/ms/controllerblueprints/application/etc/SecurityFilterExpressions.cfg @@ -0,0 +1,71 @@ +(>)\d{3,4}(<\/.*security>) $1xxxx$2 +(>)\d{11,12}(\d{4}<\/.*creditCardNumber>) $1xxxxxxxxxxxx$2 +(>)\d+(\d{4}<\/.*socialSecurityNumber.*>) $1xxxxx$2 +(>)\d{5}(\d{4}<\/.*ssn>) $1xxxxx$2 +(>)\d*(\d{3}<\/.*idNumber>) $1xxxxxx$2 +(>)\d{11,12}(\d{4}<\/cardNumber>) $1xxxxxxxxxxxx$2 +(>)[^>]*(<\/[^>]*[pP]assword>) $1xxxxxx$2 +(>)\d{3,4}(<\/cvv>) $1xxx$2 +(Card\sNumber\s=\s)\d{11,12}(\d{4}) $1xxxxxxxxxxxx$2 +(CVV\s=\s)... $1xxx +(SSN\s=\s)\d{9} $1xxxxxxxxx +(>)\d{11,12}(\d{4}<\/ccNum>) $1xxxxxxxxxxxx$2 +(>)\d{3,4}(<\/cvvNumber>) $1xxx$2 +(ccNum\s*=\s*)\d{11,12}(\d{4}) $1xxxxxxxxxxxx$2 +(cvvNumber\s*=\s*)\d{3,4} $1xxx$2 +(>).*(<\/passcode>) $1xxxxxx$2 +(password\s*=\s*)\S+ $1xxxxxx +(>)\d{5}(\d{4}<\/.*businessTaxId>) $1xxxxx$2 +(tax_id\sin\srecord=\s)\d{5}(\d{4}) $1xxxxx$2 +(tax_id\sin\srequest=\s)\d{5}(\d{4}) $1xxxxx$2 +(socialSecurityNumber\s*=\s*)\d+(\d{4}) $1xxxxx$2 +(SSN\sin\srecord=)\d+(\d{4}) $1xxxxx$2 +(ssn7\s*)\d+(\d{4}) $1xxxxx$2 +(>)\d+(\d{4}<\/cam:taxId>) $1xxxxx$2 +(>)\d+(\d{4}<\/.*routingNumber>) $1xxxxx$2 +(>)\d+(\d{4}<\/bankTRN>) $1xxxxx$2 +(>)\d+(\d{4}<\/draftAccount>) $1xxxxx$2 +(SSN\sin\srequest\s=)\d+(\d{4}) $1xxxxx$2 +(Input\sto\sCasTux\sCtrl:\sSSN\s)\d+(\d{4}) $1xxxxx$2 +(businessTaxId\s)\d+(\d{4}) $1xxxxx$2 +(InquireSingleCredit\sTax_ID_Input\sin\sresponse=\s)\d+(\d{4}) $1xxxxx$2 +()\d+(\d{4}<\/com:ssNumber>) $1xxxxx$2 +(SsNumber:\s)\d+(\d{4}) $1xxxxx$2 +(BusinessTaxId:\s)\d+(\d{4}) $1xxxxx$2 +().*(<\/acc:passcode>) $1xxxxxx$2 +(>)\d{4}(<\/.*creditCardExpirationDate>) $1xxxx$2 +(birthDate>)\d+(-)\d+(-)\d+(<\/.*birthDate>) $1xxxx$2xx$3xx$4 +(photoIdNumber>)\d+(\d{4}<\/.*photoIdNumber) $1xxxxxxxxxxxxxxx$2 +(socialSecurityNumber>)\d+(\d{4}<\/.*socialSecurityNumber) $1xxxxx$2 +(cardExpirationDate>)\d+(-)\d+(-)\d+(<\/.*cardExpirationDate>) $1xxxx$2xx$3xx$4 +(securityCode>)\d+(<\/.*securityCode>) $1xxxx$2 +(photo_id_nbr>)\d+(\d{4}<\/.*photo_id_nbr) $1xxxxxxxxxxxxxxx$2 +(social_security_nbr>)\d+(\d{4}<\/.*social_security_nbr) $1xxxxx$2 +(birth_date>)\d+(/)\d+(/)\d+(<\/.*birth_date>) $1xx$2xx$3xxxx$4 +(dateOfBirth>)\d+(/)\d+(/)\d+(<\/.*dateOfBirth>) $1xx$2xx$3xxxx$4 +(dateOfBirth>)\d+(-)\d+(-)\d+(<\/.*dateOfBirth>) $1xxxx$2xx$3xx$4 +(dateOfBirth>)\d+(-)\d+(-)\d+(Z<\/.*dateOfBirth>) $1xxxx$2xx$3xx$4 +(dateOfBirth>)\d+(/)\d+(/)\d+(Z<\/.*dateOfBirth>) $1xx$2xx$3xxxx$4 +(>)\w*(\w{3}<\/.*idNumber>) $1xxxxxx$2 +(taxId>)\d+(\d{4}<\/.*taxId>) $1xxxxx$2 +(accountNumber>)\d{12,19}(\d{4}<\/.*accountNumber>) $1xxxxxxxxxxxxxxx$2 +(>)[^>]*(<\/[^>]*ethnicity>) $1xxxxxx$2 +(>)[^>]*(<\/[^>]*RACE>) $1x$2 +(>)[^>]*(<\/[^>]*minority>) $1x$2 +(>)[^>]*(<\/[^>]*MINORITY>) $1x$2 +(BIRTH_DATE>)\d+(-)\d+(-)\d+(<\/.*BIRTH_DATE>) $1xx$2xx$3xxxx$4 +(custom07>)\d+(-)\d+(-)\d+(<\/.*custom07>) $1xx$2xx$3xxxx$4 +(>)\d{11,12}(\d{4}<\/.*creditCardNumber>) $1xxxxxxxxxxxx$2 +(>)\d{3,4}(<\/.*security>) $1xxxx$2 +(>)\d{11,12}(\d{4}<\/.*:.*creditCardNumber>) $1xxxxxxxxxxxx$2 +(>)\d{3,4}(<\/.*:.*security>) $1xxxx$2 +(>)\d{3,4}(<\/.*cVVCode>) $1xxxx$2 +(>)\d{3,4}(<\/.*cVVCode>) $1xxxx$2 +(>)\d{3,4}(<\/.*:.*cVVCode>) $1xxxx$2 +(>).*(<\/userPassword>) $1xxxxxxx$2 +(>).*(<\/.*:userPassword>) $1xxxxxx$2 +(>).*(<\/userPassword>) $1xxxxxxx$2 +(\"userPassword\"\s*:\s*\")(.*?)(\") $1xxxxxx$3 +(\"cng:userPassword\"\s*:\s*\")(.*?)(\") $1xxxxxx$3 +(\"userPassword\"\s*:\s*)(\d+)(,|\s|}|]) $1xxxxxx$3 +(\"cng:userPassword\"\s*:\s*)(\d+)(,|\s|}|]) $1xxxxxx$3 \ No newline at end of file diff --git a/ms/controllerblueprints/application/etc/SecurityFilterExpressionsPool.properties b/ms/controllerblueprints/application/etc/SecurityFilterExpressionsPool.properties new file mode 100644 index 000000000..acfaa4546 --- /dev/null +++ b/ms/controllerblueprints/application/etc/SecurityFilterExpressionsPool.properties @@ -0,0 +1,22 @@ +# +# Copyright © 2017-2018 AT&T Intellectual Property. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +MaxActive=150 +#TimeBetweenEvictionRunsMillis=10 + +#Min and Max idle are only used if TimeBetweenEvictionRunsMillis is set to a value > 0 +#MaxIdle=10 +#MinIdle=5 diff --git a/ms/controllerblueprints/application/etc/run.source b/ms/controllerblueprints/application/etc/run.source new file mode 100644 index 000000000..cba5e1dd2 --- /dev/null +++ b/ms/controllerblueprints/application/etc/run.source @@ -0,0 +1,16 @@ +java -classpath "/etc:${APP_HOME}/lib/*:/lib/*:/src:/schema:/generated-sources:${APP_CONFIG_HOME}:${APP_HOME}" \ +-DappName=${APPLICATIONNAME} -DappVersion=${BUNDLEVERSION} \ +-DrouteOffer=${ROUTEOFFER} \ +-DVERSION_ROUTEOFFER_ENVCONTEXT=${BUNDLEVERSION}/${STICKYSELECTORKEY}/${ENVCONTEXT} \ +-DSecurityFilePath=/etc \ +-DREST_NAME_NORMALIZER_PATTERN_FILE=/etc/PatternInputs.txt \ +-Dms_name=org.onap.ccsdk.apps.controllerblueprints.ControllerBlueprints \ +-Dlogging.config=${APP_CONFIG_HOME}/logback.xml \ +-Djava.security.egd=file:/dev/./urandom \ +-DAPPNAME=${APP_NAME} -DAPPENV=${APP_ENV} -DAPPVERSION=${APP_VERSION} -DNAMESPACE=${NAMESPACE} \ +-Dspring.config.location=${APP_CONFIG_HOME}/ \ +-Dspring.datasource.url=${DB_URL} \ +-Dspring.datasource.username=${DB_USER} \ +-Dspring.datasource.password=${DB_PASSWORD} \ +-Dblueprints.load.initial-data=${INIT_DATA_LOAD} \ +org.onap.ccsdk.apps.controllerblueprints.ControllerBluprintsApplication diff --git a/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Definitions/activation-blueprint.json b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Definitions/activation-blueprint.json new file mode 100644 index 000000000..635e177a1 --- /dev/null +++ b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Definitions/activation-blueprint.json @@ -0,0 +1,411 @@ +{ + "metadata": { + "template_author": "Brinda Santh Muthuramalingam", + "author-email": "brindasanth@gmail.com", + "user-groups" : "ADMIN, OPERATION", + "template_name": "baseconfiguration", + "template_version": "1.0.0", + "template_tags": "brinda, tosca" + }, + "topology_template": { + "inputs": { + "request-id": { + "required": true, + "type": "string" + }, + "action-name": { + "required": true, + "type": "string" + }, + "scope-type": { + "required": true, + "type": "string" + }, + "hostname": { + "required": true, + "type": "string" + } + }, + "node_templates": { + "activate-process": { + "type": "bpmn-activate", + "properties": { + "process-name": { "get_input" : "action-name" }, + "version" : { "get_property" : ["SELF", "process-name"] }, + "content": { "get_artifact" : ["SELF", "activate-process"] } + }, + "artifacts": { + "activate-process": { + "type": "artifact-bpmn-camunda", + "file": "Plans/ActivateProcess.bpmn" + } + } + }, + "resource-assignment": { + "type": "component-resource-assignment", + "properties":{ + "request-id": ["1234", "1234"] + }, + "interfaces": { + "DefaultComponentNode": { + "operations": { + "process": { + "inputs": { + "action-name": { "get_input" : "action-name" }, + "resource-type": "vnf-type", + "request-id": { "get_input" : "request-id" }, + "resource-id": { "get_input" : "hostname" }, + "template-content": { "get_artifact" : ["SELF", "baseconfig-template"] }, + "mapping-content": { "get_artifact" : ["SELF", "baseconfig-mapping"] } + }, + "outputs": { + "resource-assignment-params": "", + "status": "" + } + } + } + } + }, + "artifacts": { + "baseconfig-template": { + "type": "artifact-template-velocity", + "file": "Templates/baseconfig-template.vtl" + }, + "baseconfig-mapping": { + "type": "artifact-mapping-resource", + "file": "Mappings/baseconfig-mapping.json" + } + } + }, + "resource-assignment-py": { + "type": "component-resource-assignment", + "properties":{ + "request-id": ["1234", "1234"] + }, + "interfaces": { + "DefaultComponentNode": { + "operations": { + "process": { + "implementation" :{ + "primary" : "component-script" + }, + "inputs": { + "action-name": { "get_input" : "action-name" } + }, + "outputs": { + "resource-assignment-params": "", + "status": "" + } + } + } + } + }, + "artifacts": { + "component-script": { + "type": "artifact-script-python", + "file": "Scripts/baseconfig-template.vtl" + } + } + } + }, + "workflows":{ + "activate-process":{ + "steps" : { + "call-resource-assignment" : { + "description" : "Invoke Resource Assignment Component", + "target" : "resource-assignment", + "activities" : [ + { + "call_operation": "ResourceAssignmentNode.process" + } + ], + "on_success" : [ + "download-baseconfig" + ] + }, + "download-baseconfig" : { + "description" : "Call Download Base Config Component", + "target" : "activate-netconf", + "activities" : [ + { + "call_operation": "NetconfTransactionNode.process" + } + ], + "on_success" : [ + "download-licence" + ] + }, + "download-licence" : { + "description" : "Call Download Licence Component", + "target" : "activate-netconf", + "activities" : [ + { + "call_operation": "NetconfTransactionNode.process" + } + ] + } + } + } + } + }, + "artifact_types": { + "artifact-template-velocity": { + "description": " Velocity Template used for Configuration", + "version": "1.0.0", + "file_ext": [ + "vtl" + ], + "derived_from": "tosca.artifacts.Implementation" + }, + "artifact-mapping-resource": { + "description": " Velocity Template Resource Mapping File used along with Configuration template", + "version": "1.0.0", + "file_ext": [ + "json" + ], + "derived_from": "tosca.artifacts.Implementation" + }, + "artifact-script-kotlin": { + "description": " Kotlin Script Template used for Configuration", + "version": "1.0.0", + "file_ext": [ + "kt" + ], + "derived_from": "tosca.artifacts.Implementation" + }, + "artifact-script-python": { + "description": " Kotlin Script Template used for Configuration", + "version": "1.0.0", + "file_ext": [ + "py" + ], + "derived_from": "tosca.artifacts.Implementation" + }, + "artifact-bpmn-camunda": { + "description": " Camunda BPM File", + "version": "1.0.0", + "file_ext": [ + "bpmn" + ], + "derived_from": "tosca.artifacts.Implementation" + }, + "artifact-component-jar": { + "description": "Component Jar", + "version": "1.0.0", + "file_ext": [ + "jar" + ], + "derived_from": "tosca.artifacts.Implementation" + } + }, + "node_types": { + "bpmn-activate": { + "description": "This is BPMN Activate node type", + "version": "1.0.0", + "properties": { + "content": { + "required": false, + "type": "string" + }, + "process-name": { + "required": false, + "type": "string" + }, + "version": { + "required": false, + "type": "string", + "default" : "LATEST" + } + }, + "derived_from": "tosca.nodes.Component" + }, + "tosca.nodes.Component": { + "description": "This is Resource Assignment Component API", + "version": "1.0.0", + "properties": { + "type": { + "description": "Request Id used to store the generated configuration, in the database along with the template-name", + "required": false, + "type": "string" + } + }, + "interfaces": { + "DefaultOperation": { + "operations": { + "validate": { + "inputs": { + "action-name": { + "description": "validate for action", + "required": false, + "type": "string" + } + } + } + } + } + }, + "artifacts" :{ + "component-jar": { + "description": "Component Jar", + "type": "artifact-component-jar", + "file": "Component/basecomponent.jar" + } + }, + "derived_from": "tosca.nodes.Root" + }, + "tosca.nodes.component.Python": { + "description": "This is Resource Assignment Python Component API", + "version": "1.0.0", + "properties": { + "type": { + "description": "Request Id used to store the generated configuration, in the database along with the template-name", + "required": false, + "type": "string" + } + }, + "interfaces": { + "DefaultOperation": { + "operations": { + "validate": { + "inputs": { + "action-name": { + "description": "validate for action", + "required": false, + "type": "string" + } + } + } + } + } + }, + "artifacts" :{ + "component-jar": { + "description": "Component Jar", + "type": "artifact-component-jar", + "file": "Component/basecomponent.jar" + } + }, + "derived_from": "tosca.nodes.Root" + }, + "component-resource-assignment": { + "description": "This is Resource Assignment Component API", + "version": "1.0.0", + "properties": { + "request-id": { + "description": "Request Id used to store the generated configuration, in the database along with the template-name", + "required": true, + "type": "string" + } + }, + "interfaces": { + "DefaultComponentNode": { + "operations": { + "process": { + "inputs": { + "action-name": { + "description": "Recipe Name to get from Database, Either (message & mask-info ) or ( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority", + "required": false, + "type": "string" + }, + "resource-type": { + "required": false, + "type": "string" + }, + "request-id": { + "description": "Request Id used to store the generated configuration, in the database along with the template-name", + "required": true, + "type": "string" + }, + "resource-id": { + "description": "Id used to pull the data content from the data base. Either template-data or resource-id should be present", + "required": true, + "type": "string" + }, + "template-content": { + "description": "Id used to pull the data content from the data base. Either template-data or resource-id should be present", + "required": true, + "type": "string" + }, + "mapping-content": { + "description": "Id used to pull the data content from the data base. Either template-data or resource-id should be present", + "required": true, + "type": "string" + } + }, + "outputs": { + "resource-assignment-params": { + "required": true, + "type": "string" + }, + "status": { + "required": true, + "type": "string" + } + } + } + } + } + }, + "derived_from": "tosca.nodes.Component" + }, + "component-resource-assignment-python": { + "description": "This is Resource Assignment Component API", + "version": "1.0.0", + "properties": { + "request-id": { + "description": "Request Id used to store the generated configuration, in the database along with the template-name", + "required": true, + "type": "string" + } + }, + "interfaces": { + "DefaultComponentNode": { + "operations": { + "process": { + "inputs": { + "action-name": { + "description": "Recipe Name to get from Database, Either (message & mask-info ) or ( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority", + "required": false, + "type": "string" + } + }, + "outputs": { + "resource-assignment-params": { + "required": true, + "type": "string" + }, + "status": { + "required": true, + "type": "string" + } + } + } + } + } + }, + "derived_from": "tosca.nodes.component.Python" + } + }, + "data_types": { + "sample-property" : { + "description": "This is sample data type", + "version": "1.0.0", + "properties": { + "content": { + "required": false, + "type": "string" + }, + "process-name": { + "required": false, + "type": "string" + }, + "version": { + "required": false, + "type": "string", + "default" : "LATEST" + } + }, + "derived_from" : "tosca.datatypes.Root" + } + } +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Mappings/baseconfig-mapping.json b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Mappings/baseconfig-mapping.json new file mode 100644 index 000000000..6abfb51bd --- /dev/null +++ b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Mappings/baseconfig-mapping.json @@ -0,0 +1,3 @@ +{ + "assignments": "Sample Assignments" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Plans/ActivateProcess.bpmn b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Plans/ActivateProcess.bpmn new file mode 100644 index 000000000..5e94c0f8e --- /dev/null +++ b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Plans/ActivateProcess.bpmn @@ -0,0 +1,66 @@ + + + + + SequenceFlow_0l0dq58 + + + SequenceFlow_1ay0k6p + + + + + + + + + + SequenceFlow_0l0dq58 + SequenceFlow_1ay0k6p + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Scripts/SamplePythonComponentNode.py b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Scripts/SamplePythonComponentNode.py new file mode 100644 index 000000000..eb198c79a --- /dev/null +++ b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Scripts/SamplePythonComponentNode.py @@ -0,0 +1,8 @@ +from com.brvith.orchestrator.core.interfaces import ComponentNode + +class SamplePythonComponentNode(ComponentNode): + def prepare(self, context, componentContext): + return None + + def prepare(self, context, componentContext): + return None \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Scripts/__init__.py b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Scripts/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/ms/controllerblueprints/application/load/blueprints/baseconfiguration/TOSCA-Metadata/TOSCA.meta b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/TOSCA-Metadata/TOSCA.meta new file mode 100644 index 000000000..fb38c1594 --- /dev/null +++ b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/TOSCA-Metadata/TOSCA.meta @@ -0,0 +1,8 @@ +TOSCA-Meta-File-Version: 1.0.0 +CSAR-Version: 1.0 +Created-By: Brinda Santh M +Entry-Definitions: Definitions/activation-blueprint.json +Template-Tags: Brinda Santh, activation-blueprint + +Name: Plans/ActivateProcess.bpmn +Content-Type: application/vnd.oasis.bpmn diff --git a/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Templates/baseconfig-template.vtl b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Templates/baseconfig-template.vtl new file mode 100644 index 000000000..026c59176 --- /dev/null +++ b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/Templates/baseconfig-template.vtl @@ -0,0 +1 @@ +This is Sample Velocity Template \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/blueprints/baseconfiguration/__init__.py b/ms/controllerblueprints/application/load/blueprints/baseconfiguration/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/ms/controllerblueprints/application/load/model_type/artifact_type/artifact-mapping-resource.json b/ms/controllerblueprints/application/load/model_type/artifact_type/artifact-mapping-resource.json new file mode 100644 index 000000000..0a3261b09 --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/artifact_type/artifact-mapping-resource.json @@ -0,0 +1,8 @@ +{ + "description": " Velocity Template Resource Mapping File used along with Configuration template", + "version": "1.0.0", + "file_ext": [ + "json" + ], + "derived_from": "tosca.artifacts.Implementation" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/artifact_type/artifact-script-python.json b/ms/controllerblueprints/application/load/model_type/artifact_type/artifact-script-python.json new file mode 100644 index 000000000..b48d2b628 --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/artifact_type/artifact-script-python.json @@ -0,0 +1,8 @@ +{ + "description": " Kotlin Script Template used for Configuration", + "version": "1.0.0", + "file_ext": [ + "py" + ], + "derived_from": "tosca.artifacts.Implementation" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/artifact_type/artifact-template-velocity.json b/ms/controllerblueprints/application/load/model_type/artifact_type/artifact-template-velocity.json new file mode 100644 index 000000000..9395d3970 --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/artifact_type/artifact-template-velocity.json @@ -0,0 +1,8 @@ +{ + "description": " Velocity Template used for Configuration", + "version": "1.0.0", + "file_ext": [ + "vtl" + ], + "derived_from": "tosca.artifacts.Implementation" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/artifact_type/tosca.artifacts.Implementation.json b/ms/controllerblueprints/application/load/model_type/artifact_type/tosca.artifacts.Implementation.json new file mode 100644 index 000000000..5a7c95684 --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/artifact_type/tosca.artifacts.Implementation.json @@ -0,0 +1,5 @@ +{ + "description": "TOSCA base type for implementation artifacts", + "version": "1.0.0", + "derived_from": "tosca.artifacts.Root" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/data_type/datatype-property.json b/ms/controllerblueprints/application/load/model_type/data_type/datatype-property.json new file mode 100644 index 000000000..5584b10ea --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/data_type/datatype-property.json @@ -0,0 +1,27 @@ +{ + "version": "1.0.0", + "description": "This is Entry point Input Data Type, which is dynamic datatype, The parameter names will be populated during the Design time for each inputs", + "properties": { + "type": { + "required": true, + "type": "string" + }, + "description": { + "required": false, + "type": "string" + }, + "required": { + "required": false, + "type": "boolean" + }, + "default": { + "required": false, + "type": "string" + }, + "entry_schema": { + "required": false, + "type": "string" + } + }, + "derived_from": "tosca.datatypes.Root" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/data_type/datatype-resource-assignment.json b/ms/controllerblueprints/application/load/model_type/data_type/datatype-resource-assignment.json new file mode 100644 index 000000000..cc9816ebb --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/data_type/datatype-resource-assignment.json @@ -0,0 +1,46 @@ +{ + "version": "1.0.0", + "description": "This is Resource Assignment Data Type", + "properties": { + "property": { + "required": true, + "type": "datatype-property" + }, + "input-param": { + "required": true, + "type": "boolean" + }, + "dictionary-name": { + "required": false, + "type": "string" + }, + "dictionary-source": { + "required": false, + "type": "string" + }, + "dependencies": { + "required": true, + "type": "list", + "entry_schema": { + "type": "string" + } + }, + "status": { + "required": false, + "type": "string" + }, + "message": { + "required": false, + "type": "string" + }, + "updated-date": { + "required": false, + "type": "string" + }, + "updated-by": { + "required": false, + "type": "string" + } + }, + "derived_from": "tosca.datatypes.Root" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/data_type/dt-license-key.json b/ms/controllerblueprints/application/load/model_type/data_type/dt-license-key.json new file mode 100644 index 000000000..e9c312b79 --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/data_type/dt-license-key.json @@ -0,0 +1,11 @@ +{ + "version": "1.0.0", + "description": "This is dt-plicense-key Data Type", + "properties": { + "license-key": { + "required": true, + "type": "string" + } + }, + "derived_from": "tosca.datatypes.Root" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/data_type/dt-v4-aggregate.json b/ms/controllerblueprints/application/load/model_type/data_type/dt-v4-aggregate.json new file mode 100644 index 000000000..842a7f805 --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/data_type/dt-v4-aggregate.json @@ -0,0 +1,15 @@ +{ + "version": "1.0.0", + "description": "This is dt-v4-aggregate Data Type", + "properties": { + "ipv4-address": { + "required": true, + "type": "string" + }, + "ipv4-plen": { + "required": false, + "type": "integer" + } + }, + "derived_from": "tosca.datatypes.Root" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/data_type/tosca.datatypes.Credential.json b/ms/controllerblueprints/application/load/model_type/data_type/tosca.datatypes.Credential.json new file mode 100644 index 000000000..820a55168 --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/data_type/tosca.datatypes.Credential.json @@ -0,0 +1,31 @@ +{ + "version": "1.0.0", + "description": "Credential", + "properties": { + "protocol": { + "required": false, + "type": "string" + }, + "token_type": { + "required": true, + "type": "string", + "default" : "password" + }, + "token": { + "required": false, + "type": "string" + }, + "keys": { + "required": false, + "type": "list", + "entry_schema": { + "type": "string" + } + }, + "user": { + "required": false, + "type": "string" + } + }, + "derived_from": "tosca.datatypes.Root" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/node_type/artifact-config-template.json b/ms/controllerblueprints/application/load/model_type/node_type/artifact-config-template.json new file mode 100644 index 000000000..be9bbfc0e --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/node_type/artifact-config-template.json @@ -0,0 +1,37 @@ +{ + "description": "This is Configuration Velocity Template", + "version": "1.0.0", + "properties": { + "action-names": { + "required": true, + "type": "list", + "entry_schema": { + "type": "string" + } + } + }, + "capabilities": { + "content": { + "type": "tosca.capability.Content", + "properties": { + "content": { + "required": true, + "type": "string" + } + } + }, + "mapping": { + "type": "tosca.capability.Mapping", + "properties": { + "mapping": { + "required": false, + "type": "list", + "entry_schema": { + "type": "datatype-resource-assignment" + } + } + } + } + }, + "derived_from": "tosca.nodes.Artifact" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/node_type/component-config-generator.json b/ms/controllerblueprints/application/load/model_type/node_type/component-config-generator.json new file mode 100644 index 000000000..764f9e890 --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/node_type/component-config-generator.json @@ -0,0 +1,72 @@ +{ + "description": "This is Generate Configuration Component API", + "version": "1.0.0", + "capabilities": { + "component-node": { + "type": "tosca.capabilities.Node" + } + }, + "interfaces": { + "org-openecomp-sdnc-config-generator-service-ConfigGeneratorNode": { + "operations": { + "process": { + "inputs": { + "template-data": { + "description": "Conditional : JSON string which is used to mash with template. Either template-data or ( resource-id and resource-type ) should be present", + "required": false, + "type": "string" + }, + "template-content": { + "description": "Conditional : Dynamic Template used to generate Configuration.", + "required": false, + "type": "string" + }, + "resource-type": { + "description": "Conditional : resource-type used to pull the data content from the data base. Either template-data or ( resource-id and resource-type ) should be present", + "required": false, + "type": "string" + }, + "request-id": { + "description": "Request Id used to store the generated configuration, in the database along with the template-name", + "required": true, + "type": "string" + }, + "resource-id": { + "description": "Conditional : Id used to pull the data content from the data base. Either template-data or ( resource-id and resource-type ) should be present", + "required": false, + "type": "string" + }, + "action-name": { + "description": "Conditional : Action Name to get from Database, Either (message & mask-info ) or ( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority", + "required": false, + "type": "string" + }, + "template-name": { + "description": "Conditional : Name of the Artifact Node Template, to get the template Content. If template-content is present, then content wont be reterived from the Artifact Node Template.", + "required": true, + "type": "string" + } + }, + "outputs": { + "generated-config": { + "description": "Generated Configuration for the Template adn Resource Data", + "required": true, + "type": "string" + }, + "mask-info": { + "description": "If template contains mask encription keys, then this mask-info field will be generated, This JSON Content alligns to the bean org.onap.ccsdk.apps.controllerblueprints.core.data.custom.MaskInfo ", + "required": false, + "type": "string" + }, + "status": { + "description": "Status of the Component Execution ( success or failure )", + "required": true, + "type": "string" + } + } + } + } + } + }, + "derived_from": "tosca.nodes.Component" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/node_type/component-netconf-executor.json b/ms/controllerblueprints/application/load/model_type/node_type/component-netconf-executor.json new file mode 100644 index 000000000..aed667aaf --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/node_type/component-netconf-executor.json @@ -0,0 +1,79 @@ +{ + "description": "This is Netconf Transaction Configuration Component API", + "version": "1.0.0", + "capabilities": { + "component-node": { + "type": "tosca.capabilities.Node" + } + }, + "requirements": { + "netconf-connection": { + "capability": "netconf", + "node": "vnf-netconf-device", + "relationship": "tosca.relationships.ConnectsTo" + } + }, + "interfaces": { + "org-openecomp-sdnc-netconf-adaptor-service-NetconfExecutorNode": { + "operations": { + "process": { + "inputs": { + "request-id": { + "description": "Request Id used to store the generated configuration, in the database along with the template-name", + "required": true, + "type": "string" + }, + "service-template-name": { + "description": "Service Template Name", + "required": true, + "type": "string" + }, + "service-template-version": { + "description": "Service Template Version", + "required": true, + "type": "string" + }, + "action-name": { + "description": "Action Name to get from Database, Either (message & mask-info ) or ( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority", + "required": false, + "type": "string" + }, + "resource-type": { + "description": "Resource Type to get from Database, Either (message & mask-info ) or( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority", + "required": false, + "type": "string" + }, + "resource-id": { + "description": "Resource Id to get from Database, Either (message & mask-info ) or ( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority", + "required": false, + "type": "string" + }, + "reservation-id": { + "description": "Reservation Id used to send to NPM", + "required": false, + "type": "string" + }, + "execution-script": { + "description": "Python Script to Execute for this Component action, It should refer any one of Prython Artifact Definition for this Node Template.", + "required": true, + "type": "string" + } + }, + "outputs": { + "response-data": { + "description": "Execution Response Data in JSON format.", + "required": false, + "type": "string" + }, + "status": { + "description": "Status of the Component Execution ( success or failure )", + "required": true, + "type": "string" + } + } + } + } + } + }, + "derived_from": "tosca.nodes.Component" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/node_type/component-resource-assignment.json b/ms/controllerblueprints/application/load/model_type/node_type/component-resource-assignment.json new file mode 100644 index 000000000..34c028482 --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/node_type/component-resource-assignment.json @@ -0,0 +1,68 @@ +{ + "description": "This is Resource Assignment Component API", + "version": "1.0.0", + "capabilities": { + "component-node": { + "type": "tosca.capabilities.Node" + } + }, + "interfaces": { + "org-openecomp-sdnc-config-assignment-service-ConfigAssignmentNode": { + "operations": { + "process": { + "inputs": { + "service-template-name": { + "description": "Service Template Name.", + "required": true, + "type": "string" + }, + "service-template-version": { + "description": "Service Template Version.", + "required": true, + "type": "string" + }, + "resource-type": { + "description": "Request type.", + "required": true, + "type": "string" + }, + "template-names": { + "description": "Name of the artifact Node Templates, to get the template Content.", + "required": true, + "type": "list", + "entry_schema": { + "type": "string" + } + }, + "request-id": { + "description": "Request Id, Unique Id for the request.", + "required": true, + "type": "string" + }, + "resource-id": { + "description": "Resource Id.", + "required": true, + "type": "string" + }, + "action-name": { + "description": "Action Name of the process", + "required": true, + "type": "string" + } + }, + "outputs": { + "resource-assignment-params": { + "required": true, + "type": "string" + }, + "status": { + "required": true, + "type": "string" + } + } + } + } + } + }, + "derived_from": "tosca.nodes.Component" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/node_type/dg-activate-netconf.json b/ms/controllerblueprints/application/load/model_type/node_type/dg-activate-netconf.json new file mode 100644 index 000000000..c638df00c --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/node_type/dg-activate-netconf.json @@ -0,0 +1,66 @@ +{ + "description": "This is Download Netconf Directed Graph", + "version": "1.0.0", + "properties": { + "mode": { + "required": false, + "type": "string", + "default": "sync" + }, + "version": { + "required": false, + "type": "string", + "default": "LATEST" + }, + "is-start-flow": { + "required": false, + "type": "boolean", + "default": "false" + } + }, + "capabilities": { + "dg-node": { + "type": "tosca.capabilities.Node" + }, + "content": { + "type": "tosca.capability.Content", + "properties": { + "type": { + "required": false, + "type": "string", + "default": "json" + }, + "content": { + "required": true, + "type": "string" + } + } + } + }, + "requirements": { + "component-dependency": { + "capability": "component-node", + "node": "component-netconf-executor", + "relationship": "tosca.relationships.DependsOn" + } + }, + "interfaces": { + "CONFIG": { + "operations": { + "ActivateNetconf": { + "inputs": { + "params": { + "required": false, + "type": "list", + "entry_schema": { + "type": "datatype-property" + } + } + } + } + } + } + }, + + "derived_from": "tosca.nodes.DG" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/node_type/dg-config-generator.json b/ms/controllerblueprints/application/load/model_type/node_type/dg-config-generator.json new file mode 100644 index 000000000..28bace0f0 --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/node_type/dg-config-generator.json @@ -0,0 +1,65 @@ +{ + "description": "This is Activate DG for Config Generator Directed Graph", + "version": "1.0.0", + "properties": { + "mode": { + "required": false, + "type": "string", + "default": "sync" + }, + "version": { + "required": false, + "type": "string", + "default": "LATEST" + }, + "is-start-flow": { + "required": false, + "type": "boolean", + "default": "false" + } + }, + "capabilities": { + "dg-node": { + "type": "tosca.capabilities.Node" + }, + "content": { + "type": "tosca.capability.Content", + "properties": { + "type": { + "required": false, + "type": "string", + "default": "json" + }, + "content": { + "required": true, + "type": "string" + } + } + } + }, + "requirements": { + "component-dependency": { + "capability": "component-node", + "node": "component-config-generator", + "relationship": "tosca.relationships.DependsOn" + } + }, + "interfaces": { + "CONFIG": { + "operations": { + "GenerateConfiguration": { + "inputs": { + "params": { + "required": false, + "type": "list", + "entry_schema": { + "type": "datatype-property" + } + } + } + } + } + } + }, + "derived_from": "tosca.nodes.DG" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/node_type/dg-resource-assign-activate.json b/ms/controllerblueprints/application/load/model_type/node_type/dg-resource-assign-activate.json new file mode 100644 index 000000000..e98fa5a67 --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/node_type/dg-resource-assign-activate.json @@ -0,0 +1,70 @@ +{ + "description": "This is Resource Assign and Activate Netconf Directed Graph", + "version": "1.0.0", + "properties": { + "mode": { + "required": false, + "type": "string", + "default": "sync" + }, + "version": { + "required": false, + "type": "string", + "default": "LATEST" + }, + "is-start-flow": { + "required": false, + "type": "boolean", + "default": "false" + } + }, + "capabilities": { + "dg-node": { + "type": "tosca.capabilities.Node" + }, + "content": { + "type": "tosca.capability.Content", + "properties": { + "type": { + "required": false, + "type": "string", + "default": "json" + }, + "content": { + "required": false, + "type": "string" + } + } + } + }, + "requirements": { + "ra-component": { + "capability": "component-node", + "node": "component-resource-assignment", + "relationship": "tosca.relationships.DependsOn" + }, + "netconf-component": { + "capability": "component-node", + "node": "component-netconf-executor", + "relationship": "tosca.relationships.DependsOn" + } + }, + "interfaces": { + "CONFIG": { + "operations": { + "ResourceAssignAndActivate": { + "inputs": { + "params": { + "required": false, + "type": "list", + "entry_schema": { + "type": "datatype-property" + } + } + } + } + } + } + }, + "derived_from": "tosca.nodes.DG" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/node_type/dg-resource-assignment.json b/ms/controllerblueprints/application/load/model_type/node_type/dg-resource-assignment.json new file mode 100644 index 000000000..36fbb6861 --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/node_type/dg-resource-assignment.json @@ -0,0 +1,65 @@ +{ + "description": "This is Resource Assignment Directed Graph", + "version": "1.0.0", + "properties": { + "mode": { + "required": false, + "type": "string", + "default": "sync" + }, + "version": { + "required": false, + "type": "string", + "default": "LATEST" + }, + "is-start-flow": { + "required": false, + "type": "boolean", + "default": "false" + } + }, + "capabilities": { + "dg-node": { + "type": "tosca.capabilities.Node" + }, + "content": { + "type": "tosca.capability.Content", + "properties": { + "type": { + "required": false, + "type": "string", + "default": "json" + }, + "content": { + "required": false, + "type": "string" + } + } + } + }, + "requirements": { + "component-dependency": { + "capability": "component-node", + "node": "component-resource-assignment", + "relationship": "tosca.relationships.DependsOn" + } + }, + "interfaces": { + "CONFIG": { + "operations": { + "ResourceAssignment": { + "inputs": { + "params": { + "required": false, + "type": "list", + "entry_schema": { + "type": "datatype-property" + } + } + } + } + } + } + }, + "derived_from": "tosca.nodes.DG" +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/load/model_type/node_type/vnf-netconf-device.json b/ms/controllerblueprints/application/load/model_type/node_type/vnf-netconf-device.json new file mode 100644 index 000000000..54573bade --- /dev/null +++ b/ms/controllerblueprints/application/load/model_type/node_type/vnf-netconf-device.json @@ -0,0 +1,42 @@ +{ + "description": "This is VNF Device with Netconf Capability", + "version": "1.0.0", + "capabilities": { + "netconf": { + "type": "tosca.capability.Netconf", + "properties": { + "login-key": { + "required": true, + "type": "string", + "default": "sdnc" + }, + "login-account": { + "required": true, + "type": "string", + "default": "sdnc-tacacs" + }, + "source": { + "required": true, + "type": "string", + "default": "npm" + }, + "target-ip-address": { + "required": true, + "type": "string" + }, + "port-number": { + "required": true, + "type": "integer", + "default": 830 + }, + "connection-time-out": { + "required": false, + "type": "integer", + "default": 30 + } + } + } + }, + "derived_from": "tosca.nodes.Vnf" + +} diff --git a/ms/controllerblueprints/application/opt/app/onap/config/application.properties b/ms/controllerblueprints/application/opt/app/onap/config/application.properties new file mode 100644 index 000000000..202017de7 --- /dev/null +++ b/ms/controllerblueprints/application/opt/app/onap/config/application.properties @@ -0,0 +1,75 @@ +# +# Copyright © 2017-2018 AT&T Intellectual Property. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +info.build.artifact=@project.artifactId@ +info.build.name=@project.name@ +info.build.description=@project.description@ +info.build.version=@project.version@ +info.build.groupId=@project.groupId@ +logging.level.root=info + +server.contextPath=/ +server.servlet-path=/ +spring.jersey.application-path=/api/controller-blueprints/v1 +server.routingPath=/api + +mots.application.acronym=MOTS_ID +platform.identifier=AJSC7_JERSEY +#spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration,org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration + +#logging.pattern.console=%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(%5p) %clr($ threadId: {PID:- }){magenta} %clr(---){faint} %clr([ hostname: %X{hostname} serviceName: %X{serviceName} version: %X{version} transactionId: %X{transactionId} requestTimeStamp: %X{requestTimestamp} responseTimeStamp: %X{responseTimestamp} duration: %X{duration}]){yellow} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n%wex + +#The max number of active threads in this pool +server.tomcat.max-threads=200 +#The minimum number of threads always kept alive +server.tomcat.min-Spare-Threads=25 +#The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less or equal to minSpareThreads +server.tomcat.max-idle-time=60000 + +#for changing the tomcat port... +#server.port=8081 + +#Servlet context parameters +server.context_parameters.p-name=value #context parameter with p-name as key and value as value. + +# make this true for AAF authentication and place cadi.properties into etc folder +aaf.enabled=false + +# set to true to enable version proxy +#ivp.enabled=false + +logging.level.org.springframework.web=INFO +logging.level.org.hibernate.SQL=warn +logging.level.org.hibernate.type.descriptor.sql=debug + +spring.jpa.properties.hibernate.show_sql=true +spring.jpa.properties.hibernate.use_sql_comments=true +spring.jpa.properties.hibernate.format_sql=true + +# spring.datasource.url, spring.datasource.username,spring.datasource.password may be overridden by ENV variables +spring.datasource.url=jdbc:mysql://localhost:3306/sdnctl +spring.datasource.username=sdnctl +spring.datasource.password=sdnctl +spring.datasource.driver-class-name=com.mysql.jdbc.Driver +spring.jpa.show-sql = true +spring.jpa.hibernate.ddl-auto = none +spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.ImprovedNamingStrategy +spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect + +#Load Blueprints +# blueprints.load.initial-data may be overridden by ENV variables +blueprints.load.initial-data=true +blueprints.load.path=load \ No newline at end of file diff --git a/ms/controllerblueprints/application/opt/app/onap/config/logback.xml b/ms/controllerblueprints/application/opt/app/onap/config/logback.xml new file mode 100644 index 000000000..cdd20c8b1 --- /dev/null +++ b/ms/controllerblueprints/application/opt/app/onap/config/logback.xml @@ -0,0 +1,36 @@ + + + + + + + %d{HH:mm:ss.SSS} %-5level %logger{100} - %msg%n + + + + + + + + + + + + + + diff --git a/ms/controllerblueprints/application/pom.xml b/ms/controllerblueprints/application/pom.xml new file mode 100644 index 000000000..cab45e26b --- /dev/null +++ b/ms/controllerblueprints/application/pom.xml @@ -0,0 +1,242 @@ + + + + + 4.0.0 + + org.onap.ccsdk.apps + controllerblueprints-parent + 0.3.0-SNAPSHOT + ../parent + + controllerblueprints-application + Controller Blueprints Application + + ${basedir}/src/main/resources/swagger-ui/dist + 1.8 + xxxxxxxxx:5100 + distribution + local + org.onap.ccsdk.apps + org.onap.ccsdk.apps + 200.0.49 + controllerblueprints + + + jacoco + reuseReports + ${basedir}/target/surefire-reports + ${basedir}/target/failsafe-reports + ${basedir}/target/jacoco_report + ${basedir}/target/jacoco_itReport + ${basedir}/target/jacoco-ut.exec + ${basedir}/target/jacoco-it.exec + java + 2.0.7 + + + + + + + + org.onap.ccsdk.apps + controllerblueprints-service + + + org.springframework.boot + spring-boot-starter-actuator + + + org.springframework.boot + spring-boot-devtools + true + + + com.h2database + h2 + runtime + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + ${basedir}/etc + ${basedir}/target/etc + true + + **/* + + + + + ${basedir}/src/main/resources + ${basedir}/target/src/main/resources + true + + **/* + + + + src/main/resources + + **/* + + true + + + src/main/docker + ${basedir}/target + + **/* + + true + + + + + org.jacoco + jacoco-maven-plugin + 0.7.5.201505241946 + + + + pre-unit-test + + prepare-agent + + + + ${sonar.jacoco.reportPath} + surefireArgLine + + + + + post-unit-test + test + + report + + + + ${sonar.jacoco.reportPath} + + ${jacoco.path} + + + + + + com.github.kongchen + swagger-maven-plugin + 3.1.7 + + + + + + http + https + + + org.onap.ccsdk.apps.controllerblueprints + + /api/controller-blueprints/v1 + + Controller Blueprint Service + ${project.version} + + ${swagger.directory} + + + + + + + package + + generate + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + + ant-test + package + + + + + + + run + + + + + + + maven-assembly-plugin + 3.0.0 + + + target + + src/assembly/distribution.xml + + posix + + + + ${assembly.id} + package + + single + + + + + + maven-compiler-plugin + 3.1 + + + 1.8 + 1.8 + + + + + + diff --git a/ms/controllerblueprints/application/src/assembly/distribution.xml b/ms/controllerblueprints/application/src/assembly/distribution.xml new file mode 100644 index 000000000..adfb52d10 --- /dev/null +++ b/ms/controllerblueprints/application/src/assembly/distribution.xml @@ -0,0 +1,80 @@ + + + + + + ${assembly.id} + + tar.gz + + + + /opt/app/onap/lib + + org.slf4j:slf4j-log4j12 + javax.servlet:servlet-api + javax.servlet:javax.servlet-api + j2ee:j2ee + log4j:log4j + com.sun:j2ee + log4j:apache-log4j-extras + org.slf4j:slf4j-simple + + + + + + ${project.basedir}/src/main/resources + + application.properties + + / + true + + + ${project.basedir}/src/main/docker + + Dockerfile + startService.sh + + / + true + + + ${project.basedir}/src/main/groovy + src/main/groovy + true + + + ${project.basedir}/src/main/resources + src/main/resources + true + + + ${project.basedir}/etc + /etc + true + + + ${project.basedir}/load + load + true + + + diff --git a/ms/controllerblueprints/application/src/main/dc/docker-compose.yaml b/ms/controllerblueprints/application/src/main/dc/docker-compose.yaml new file mode 100644 index 000000000..5696d02b3 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/dc/docker-compose.yaml @@ -0,0 +1,36 @@ +version: '3.3' + +services: + db: + image: mysql:5.7.22 + container_name: cb-mysql + ports: + - "3307:3306" + volumes: + - ~/vm_mysql:/var/lib/mysql + restart: always + environment: + MYSQL_ROOT_PASSWORD: sdnctl + MYSQL_DATABASE: sdnctl + MYSQL_USER: sdnctl + MYSQL_PASSWORD: sdnctl + controller-blueprints: + depends_on: + - db + image: onap/controllerblueprints:1.0.0 + container_name: cb-rest + ports: + - "8080:8080" + restart: always + volumes: + - ~/share/vm_ms/controllerblueprints/config:/opt/app/onap/config + - ~/share/vm_ms/controllerblueprints/logs:/logs + environment: + DB_URL: jdbc:mysql://db:3306/sdnctl + DB_USER: sdnctl + DB_PASSWORD: sdnctl + INIT_DATA_LOAD: "true" + APP_CONFIG_HOME: /opt/app/onap/config + BUNDLEVERSION: 1.0.0 + STICKYSELECTORKEY: + ENVCONTEXT: DEV \ No newline at end of file diff --git a/ms/controllerblueprints/application/src/main/docker/Dockerfile b/ms/controllerblueprints/application/src/main/docker/Dockerfile new file mode 100644 index 000000000..06304e1db --- /dev/null +++ b/ms/controllerblueprints/application/src/main/docker/Dockerfile @@ -0,0 +1,17 @@ +FROM anapsix/alpine-java:8_jdk + +RUN apk add --no-cache curl + +COPY startService.sh /startService.sh +RUN chmod 777 /startService.sh && dos2unix /startService.sh + +COPY @project.build.finalName@-@assembly.id@.tar.gz /source.tar.gz + +RUN (mkdir -p /source /opt/app/onap) && (tar -xzf /source.tar.gz -C /source) \ +&& (mv /source/@project.build.finalName@ /source/app) \ +&& (cp -rf /source/app/opt/app/onap/lib /opt/app/onap/) \ +&& (cp -rf /source/app/etc /) \ +&& (cp -rf /source/app/load /) \ +&& (rm -rf /source) + +ENTRYPOINT /startService.sh diff --git a/ms/controllerblueprints/application/src/main/docker/startService.sh b/ms/controllerblueprints/application/src/main/docker/startService.sh new file mode 100644 index 000000000..7077c2246 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/docker/startService.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +nodeName=ControllerBlueprints_1.0.0_$(cat /proc/self/cgroup | grep docker | sed s/\\//\\n/g | tail -1) + +echo "APP Config HOME : ${APP_CONFIG_HOME}" +export APP_HOME=/opt/app/onap + +source /etc/run.source diff --git a/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/ApplicationConstants.java b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/ApplicationConstants.java new file mode 100644 index 000000000..3172ed38b --- /dev/null +++ b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/ApplicationConstants.java @@ -0,0 +1,27 @@ +/* + * Copyright © 2017-2018 AT&T Intellectual Property. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.onap.ccsdk.apps.controllerblueprints; + +/** + * ApplicationConstants.java Purpose: Provide ControllerBluprintsApplication Constant Information + * + * @author Brinda Santh + * @version 1.0 + */ +public final class ApplicationConstants { + +} diff --git a/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/ControllerBluprintsApplication.java b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/ControllerBluprintsApplication.java new file mode 100644 index 000000000..96d82e7e4 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/ControllerBluprintsApplication.java @@ -0,0 +1,38 @@ +/* + * Copyright © 2017-2018 AT&T Intellectual Property. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.onap.ccsdk.apps.controllerblueprints; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.context.annotation.ComponentScan; + +/** + * + * + * @author Brinda Santh + */ +@SpringBootApplication +@ComponentScan(basePackages = {"org.onap.ccsdk.apps.controllerblueprints"}) +@EnableAutoConfiguration +public class ControllerBluprintsApplication { + + public static void main(String[] args) { + SpringApplication.run(ControllerBluprintsApplication.class, args); + } + +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/ControllerBluprintsFilterConfiguration.java b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/ControllerBluprintsFilterConfiguration.java new file mode 100644 index 000000000..6f4bfc988 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/ControllerBluprintsFilterConfiguration.java @@ -0,0 +1,37 @@ +/* + * Copyright © 2017-2018 AT&T Intellectual Property. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.onap.ccsdk.apps.controllerblueprints; + + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; +/** + * + * + * @author Brinda Santh + */ +@Configuration +public class ControllerBluprintsFilterConfiguration { + private static Logger log = LoggerFactory.getLogger(JerseyConfiguration.class); + + @Value("${server.routingPath:#{null}}") + private String routingPath; + + +} diff --git a/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/CorsConfig.java b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/CorsConfig.java new file mode 100644 index 000000000..0d9ab1623 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/CorsConfig.java @@ -0,0 +1,52 @@ +/* + * Copyright © 2017-2018 AT&T Intellectual Property. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.onap.ccsdk.apps.controllerblueprints; + + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.UrlBasedCorsConfigurationSource; +import org.springframework.web.filter.CorsFilter; + +/** + * CorsConfig.java Purpose: Provide Configuration Generator CorsConfig Information + * + * @author Brinda Santh + * @version 1.0 + */ +@Configuration +public class CorsConfig { + /** + * This is a CORS Implementation for different Orgin GUI to access. + * + * @return CorsFilter + */ + @Bean + public CorsFilter corsFilter() { + UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); + CorsConfiguration config = new CorsConfiguration(); + config.setAllowCredentials(true); + config.addAllowedOrigin("*"); + config.addAllowedHeader("*"); + config.addAllowedMethod("*"); + source.registerCorsConfiguration("/**", config); + return new CorsFilter(source); + } + + +} diff --git a/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/DatabaseConfig.java b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/DatabaseConfig.java new file mode 100644 index 000000000..5b154ff25 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/DatabaseConfig.java @@ -0,0 +1,61 @@ +/* + * Copyright © 2017-2018 AT&T Intellectual Property. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.onap.ccsdk.apps.controllerblueprints; + +import org.springframework.boot.autoconfigure.domain.EntityScan; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.data.jpa.repository.config.EnableJpaAuditing; +import org.springframework.data.jpa.repository.config.EnableJpaRepositories; +import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean; +import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter; +import org.springframework.transaction.annotation.EnableTransactionManagement; + +import javax.sql.DataSource; + +/** + * DatabaseConfig.java Purpose: Provide Configuration Generator DatabaseConfig Information + * + * @author Brinda Santh + * @version 1.0 + */ +@Configuration +@EntityScan("org.onap.ccsdk.apps.controllerblueprints.service.domain") +@EnableTransactionManagement +@EnableJpaRepositories("org.onap.ccsdk.apps.controllerblueprints.service.repository") +@EnableJpaAuditing +public class DatabaseConfig { + /** + * This is a entityManagerFactory method + * + * @param dataSource + * @return LocalContainerEntityManagerFactoryBean + */ + + @Bean + public LocalContainerEntityManagerFactoryBean entityManagerFactory(DataSource dataSource) { + HibernateJpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter(); + vendorAdapter.setGenerateDdl(true); + vendorAdapter.setShowSql(false); + LocalContainerEntityManagerFactoryBean factory = new LocalContainerEntityManagerFactoryBean(); + factory.setJpaVendorAdapter(vendorAdapter); + factory.setPackagesToScan("org.onap.ccsdk.apps.controllerblueprints.service.domain"); + factory.setDataSource(dataSource); + return factory; + } + +} diff --git a/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/JerseyConfiguration.java b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/JerseyConfiguration.java new file mode 100644 index 000000000..a3b0faf0c --- /dev/null +++ b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/JerseyConfiguration.java @@ -0,0 +1,102 @@ +/* + * Copyright © 2017-2018 AT&T Intellectual Property. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.onap.ccsdk.apps.controllerblueprints; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.MapperFeature; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.SerializationFeature; +import io.swagger.jaxrs.config.BeanConfig; +import io.swagger.jaxrs.listing.ApiListingResource; +import io.swagger.jaxrs.listing.SwaggerSerializers; +import org.glassfish.jersey.server.ResourceConfig; +import org.glassfish.jersey.servlet.ServletProperties; +import org.onap.ccsdk.apps.controllerblueprints.service.common.ServiceExceptionMapper; +import org.onap.ccsdk.apps.controllerblueprints.service.rs.ConfigModelRestImpl; +import org.onap.ccsdk.apps.controllerblueprints.service.rs.ModelTypeRestImpl; +import org.onap.ccsdk.apps.controllerblueprints.service.rs.ResourceDictionaryRestImpl; +import org.onap.ccsdk.apps.controllerblueprints.service.rs.ServiceTemplateRestImpl; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Primary; +import org.springframework.stereotype.Component; + +import javax.ws.rs.core.MediaType; + +/** + * + * + * @author Brinda Santh + */ +@Component +public class JerseyConfiguration extends ResourceConfig { + private static Logger log = LoggerFactory.getLogger(JerseyConfiguration.class); + /** + * + */ + @Autowired + public JerseyConfiguration() { + register(ConfigModelRestImpl.class); + register(ModelTypeRestImpl.class); + register(ResourceDictionaryRestImpl.class); + register(ServiceTemplateRestImpl.class); + register(ServiceExceptionMapper.class); + property(ServletProperties.FILTER_FORWARD_ON_404, true); + configureSwagger(); + } + + /** + * + * @return ObjectMapper + */ + @Bean + @Primary + public ObjectMapper objectMapper() { + ObjectMapper objectMapper = new ObjectMapper(); + objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); + objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); + objectMapper.enable(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES); + objectMapper.enable(DeserializationFeature.READ_ENUMS_USING_TO_STRING); + objectMapper.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING); + return objectMapper; + } + + /** + * + */ + private void configureSwagger() { + register(ApiListingResource.class); + register(SwaggerSerializers.class); + BeanConfig beanConfig = new BeanConfig(); + beanConfig.setVersion("1.0.0"); + beanConfig.setSchemes(new String[]{"http", "https"}); + beanConfig.setBasePath("/api/controller-blueprints/v1"); + beanConfig.setTitle("Controller Blueprints API"); + beanConfig.setDescription("Controller BluePrints API"); + beanConfig.getSwagger().addConsumes(MediaType.APPLICATION_JSON); + beanConfig.getSwagger().addProduces(MediaType.APPLICATION_JSON); + beanConfig.setResourcePackage("org.onap.ccsdk.apps.controllerblueprints"); + beanConfig.setPrettyPrint(true); + beanConfig.setScan(true); + } + + +} \ No newline at end of file diff --git a/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/WebMvcConfiguration.java b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/WebMvcConfiguration.java new file mode 100644 index 000000000..a690c056c --- /dev/null +++ b/ms/controllerblueprints/application/src/main/java/org/onap/ccsdk/apps/controllerblueprints/WebMvcConfiguration.java @@ -0,0 +1,37 @@ +/* + * Copyright © 2017-2018 AT&T Intellectual Property. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.onap.ccsdk.apps.controllerblueprints; + +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.EnableWebMvc; +import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; + +/** + * + * WebMvcConfiguration WebMvcConfiguration + * @author Brinda Santh + */ +@Configuration +@EnableWebMvc +public class WebMvcConfiguration extends WebMvcConfigurerAdapter { + @Override + public void addResourceHandlers(ResourceHandlerRegistry registry) { + registry.addResourceHandler("/swagger-ui/**").addResourceLocations("classpath:/swagger-ui/dist/"); + } + +} diff --git a/ms/controllerblueprints/application/src/main/resources/sql/data.sql b/ms/controllerblueprints/application/src/main/resources/sql/data.sql new file mode 100644 index 000000000..e69de29bb diff --git a/ms/controllerblueprints/application/src/main/resources/sql/schema-local.sql b/ms/controllerblueprints/application/src/main/resources/sql/schema-local.sql new file mode 100644 index 000000000..1ba9c365a --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/sql/schema-local.sql @@ -0,0 +1,87 @@ +-- drop table sdnctl.MODEL_TYPE; +-- drop table sdnctl.RESOURCE_DICTIONARY; +-- drop table sdnctl.CONFIG_MODEL_CONTENT; +-- drop table sdnctl.CONFIG_MODEL; + +-- ----------------------------------------------------- +-- table CONFIG_MODEL +-- ----------------------------------------------------- +CREATE TABLE IF NOT EXISTS sdnctl.CONFIG_MODEL ( + config_model_id INT(11) NOT NULL AUTO_INCREMENT, + service_uuid VARCHAR(50) NULL DEFAULT NULL, + distribution_id VARCHAR(50) NULL DEFAULT NULL, + service_name VARCHAR(255) NULL DEFAULT NULL, + service_description VARCHAR(255) NULL DEFAULT NULL, + resource_uuid VARCHAR(255) NULL DEFAULT NULL, + resource_instance_name VARCHAR(255) NULL DEFAULT NULL, + resource_name varchar(255) null default null, + resource_version varchar(50) null default null, + resource_type varchar(50) null default null, + artifact_uuid varchar(50) null default null, + artifact_type varchar(50) not null, + artifact_version varchar(25) not null, + artifact_description longtext null default null, + internal_version int(11) null default null, + creation_date datetime not null default current_timestamp, + artifact_name varchar(100) not null, + published varchar(1) not null, + updated_by varchar(100) not null, + tags longtext null default null, + primary key PK_CONFIG_MODEL (config_model_id), + UNIQUE KEY UK_CONFIG_MODEL (artifact_name , artifact_version) +) ENGINE=InnoDB; + + +-- ----------------------------------------------------- +-- table CONFIG_MODEL_CONTENT +-- ----------------------------------------------------- +CREATE TABLE IF NOT EXISTS sdnctl.CONFIG_MODEL_CONTENT ( + config_model_content_id INT(11) NOT NULL AUTO_INCREMENT, + config_model_id INT NOT NULL, + name VARCHAR(100) NOT NULL, + content_type VARCHAR(50) NOT NULL, + description LONGTEXT NULL DEFAULT NULL, + updated_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + content LONGTEXT NULL DEFAULT NULL, + PRIMARY KEY PK_CONFIG_MODEL_CONTENT (config_model_content_id), + UNIQUE KEY UK_CONFIG_MODEL_CONTENT (config_model_id, name, content_type), + FOREIGN KEY FK_CONFIG_MODEL_CONTENT (config_model_id) REFERENCES sdnctl.CONFIG_MODEL(config_model_id) ON DELETE CASCADE +) ENGINE=InnoDB; + +-- ----------------------------------------------------- +-- table MODEL_TYPE +-- ----------------------------------------------------- +CREATE TABLE IF NOT EXISTS sdnctl.MODEL_TYPE ( + model_name VARCHAR(100) NOT NULL, + derived_from VARCHAR(100) NOT NULL, + definition_type VARCHAR(100) NOT NULL, + definition LONGTEXT NOT NULL, + version VARCHAR(10) NOT NULL, + description LONGTEXT NOT NULL, + tags LONGTEXT NULL DEFAULT NULL, + creation_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_by VARCHAR(100) NOT NULL, + PRIMARY KEY PK_MODEL_TYPE (model_name), + INDEX IX_MODEL_TYPE (model_name) +) ENGINE=InnoDB; + + +-- ----------------------------------------------------- +-- table RESOURCE_DICTIONARY +-- ----------------------------------------------------- +CREATE TABLE IF NOT EXISTS sdnctl.RESOURCE_DICTIONARY ( + name VARCHAR(100) NOT NULL, + resource_path VARCHAR(500) NOT NULL, + resource_type VARCHAR(100) NOT NULL, + data_type VARCHAR(100) NOT NULL, + entry_schema VARCHAR(100) NULL DEFAULT NULL, + valid_values LONGTEXT NULL DEFAULT NULL, + sample_value LONGTEXT NULL DEFAULT NULL, + definition LONGTEXT NOT NULL, + description LONGTEXT NOT NULL, + tags LONGTEXT NOT NULL, + creation_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_by VARCHAR(100) NOT NULL, + primary key PK_RESOURCE_DICTIONARY (name), + INDEX IX_RESOURCE_DICTIONARY (name) +) ENGINE=InnoDB; \ No newline at end of file diff --git a/ms/controllerblueprints/application/src/main/resources/sql/schema.sql b/ms/controllerblueprints/application/src/main/resources/sql/schema.sql new file mode 100644 index 000000000..b884cf345 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/sql/schema.sql @@ -0,0 +1,82 @@ +-- ----------------------------------------------------- +-- table CONFIG_MODEL +-- ----------------------------------------------------- +CREATE TABLE IF NOT EXISTS configurator.CONFIG_MODEL ( + config_model_id INT(11) NOT NULL AUTO_INCREMENT, + service_uuid VARCHAR(50) NULL DEFAULT NULL, + distribution_id VARCHAR(50) NULL DEFAULT NULL, + service_name VARCHAR(255) NULL DEFAULT NULL, + service_description VARCHAR(255) NULL DEFAULT NULL, + resource_uuid VARCHAR(255) NULL DEFAULT NULL, + resource_instance_name VARCHAR(255) NULL DEFAULT NULL, + resource_name varchar(255) null default null, + resource_version varchar(50) null default null, + resource_type varchar(50) null default null, + artifact_uuid varchar(50) null default null, + artifact_type varchar(50) not null, + artifact_version varchar(25) not null, + artifact_description longtext null default null, + internal_version int(11) null default null, + creation_date datetime not null default current_timestamp, + artifact_name varchar(100) not null, + published varchar(1) not null, + updated_by varchar(100) not null, + tags longtext null default null, + primary key PK_CONFIG_MODEL (config_model_id), + UNIQUE KEY UK_CONFIG_MODEL (artifact_name , artifact_version) +) ENGINE=InnoDB; + + +-- ----------------------------------------------------- +-- table CONFIG_MODEL_CONTENT +-- ----------------------------------------------------- +CREATE TABLE IF NOT EXISTS configurator.CONFIG_MODEL_CONTENT ( + config_model_content_id INT(11) NOT NULL AUTO_INCREMENT, + config_model_id INT NOT NULL, + name VARCHAR(100) NOT NULL, + content_type VARCHAR(50) NOT NULL, + description LONGTEXT NULL DEFAULT NULL, + updated_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + content LONGTEXT NULL DEFAULT NULL, + PRIMARY KEY PK_CONFIG_MODEL_CONTENT (config_model_content_id), + UNIQUE KEY UK_CONFIG_MODEL_CONTENT (config_model_id, name, content_type), + FOREIGN KEY FK_CONFIG_MODEL_CONTENT (config_model_id) REFERENCES configurator.CONFIG_MODEL(config_model_id) ON DELETE CASCADE +) ENGINE=InnoDB; + +-- ----------------------------------------------------- +-- table MODEL_TYPE +-- ----------------------------------------------------- +CREATE TABLE IF NOT EXISTS configurator.MODEL_TYPE ( + model_name VARCHAR(100) NOT NULL, + derived_from VARCHAR(100) NOT NULL, + definition_type VARCHAR(100) NOT NULL, + definition LONGTEXT NOT NULL, + version VARCHAR(10) NOT NULL, + description LONGTEXT NOT NULL, + tags LONGTEXT NULL DEFAULT NULL, + creation_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_by VARCHAR(100) NOT NULL, + PRIMARY KEY PK_MODEL_TYPE (model_name), + INDEX IX_MODEL_TYPE (model_name) +) ENGINE=InnoDB; + + +-- ----------------------------------------------------- +-- table RESOURCE_DICTIONARY +-- ----------------------------------------------------- +CREATE TABLE IF NOT EXISTS configurator.RESOURCE_DICTIONARY ( + name VARCHAR(100) NOT NULL, + resource_path VARCHAR(500) NOT NULL, + resource_type VARCHAR(100) NOT NULL, + data_type VARCHAR(100) NOT NULL, + entry_schema VARCHAR(100) NULL DEFAULT NULL, + valid_values LONGTEXT NULL DEFAULT NULL, + sample_value LONGTEXT NULL DEFAULT NULL, + definition LONGTEXT NOT NULL, + description LONGTEXT NOT NULL, + tags LONGTEXT NOT NULL, + creation_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_by VARCHAR(100) NOT NULL, + primary key PK_RESOURCE_DICTIONARY (name), + INDEX IX_RESOURCE_DICTIONARY (name) +) ENGINE=InnoDB; diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/print.css b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/print.css new file mode 100644 index 000000000..f341f4390 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/print.css @@ -0,0 +1 @@ +.swagger-section pre code{display:block;padding:.5em;background:#f0f0f0}.swagger-section pre .clojure .built_in,.swagger-section pre .lisp .title,.swagger-section pre .nginx .title,.swagger-section pre .subst,.swagger-section pre .tag .title,.swagger-section pre code{color:#000}.swagger-section pre .addition,.swagger-section pre .aggregate,.swagger-section pre .apache .cbracket,.swagger-section pre .apache .tag,.swagger-section pre .bash .variable,.swagger-section pre .constant,.swagger-section pre .django .variable,.swagger-section pre .erlang_repl .function_or_atom,.swagger-section pre .flow,.swagger-section pre .markdown .header,.swagger-section pre .parent,.swagger-section pre .preprocessor,.swagger-section pre .ruby .symbol,.swagger-section pre .ruby .symbol .string,.swagger-section pre .rules .value,.swagger-section pre .rules .value .number,.swagger-section pre .smalltalk .class,.swagger-section pre .stream,.swagger-section pre .string,.swagger-section pre .tag .value,.swagger-section pre .template_tag,.swagger-section pre .tex .command,.swagger-section pre .tex .special,.swagger-section pre .title{color:#800}.swagger-section pre .annotation,.swagger-section pre .chunk,.swagger-section pre .comment,.swagger-section pre .diff .header,.swagger-section pre .markdown .blockquote,.swagger-section pre .template_comment{color:#888}.swagger-section pre .change,.swagger-section pre .date,.swagger-section pre .go .constant,.swagger-section pre .literal,.swagger-section pre .markdown .bullet,.swagger-section pre .markdown .link_url,.swagger-section pre .number,.swagger-section pre .regexp,.swagger-section pre .smalltalk .char,.swagger-section pre .smalltalk .symbol{color:#080}.swagger-section pre .apache .sqbracket,.swagger-section pre .array,.swagger-section pre .attr_selector,.swagger-section pre .clojure .attribute,.swagger-section pre .coffeescript .property,.swagger-section pre .decorator,.swagger-section pre .deletion,.swagger-section pre .doctype,.swagger-section pre .envvar,.swagger-section pre .erlang_repl .reserved,.swagger-section pre .filter .argument,.swagger-section pre .important,.swagger-section pre .javadoc,.swagger-section pre .label,.swagger-section pre .localvars,.swagger-section pre .markdown .link_label,.swagger-section pre .nginx .built_in,.swagger-section pre .pi,.swagger-section pre .prompt,.swagger-section pre .pseudo,.swagger-section pre .ruby .string,.swagger-section pre .shebang,.swagger-section pre .tex .formula,.swagger-section pre .vhdl .attribute{color:#88f}.swagger-section pre .aggregate,.swagger-section pre .apache .tag,.swagger-section pre .bash .variable,.swagger-section pre .built_in,.swagger-section pre .css .tag,.swagger-section pre .go .typename,.swagger-section pre .id,.swagger-section pre .javadoctag,.swagger-section pre .keyword,.swagger-section pre .markdown .strong,.swagger-section pre .phpdoc,.swagger-section pre .request,.swagger-section pre .smalltalk .class,.swagger-section pre .status,.swagger-section pre .tex .command,.swagger-section pre .title,.swagger-section pre .winutils,.swagger-section pre .yardoctag{font-weight:700}.swagger-section pre .markdown .emphasis{font-style:italic}.swagger-section pre .nginx .built_in{font-weight:400}.swagger-section pre .coffeescript .javascript,.swagger-section pre .javascript .xml,.swagger-section pre .tex .formula,.swagger-section pre .xml .cdata,.swagger-section pre .xml .css,.swagger-section pre .xml .javascript,.swagger-section pre .xml .vbscript{opacity:.5}.swagger-section .hljs{display:block;overflow-x:auto;padding:.5em;background:#f0f0f0}.swagger-section .hljs,.swagger-section .hljs-subst{color:#444}.swagger-section .hljs-attribute,.swagger-section .hljs-doctag,.swagger-section .hljs-keyword,.swagger-section .hljs-meta-keyword,.swagger-section .hljs-name,.swagger-section .hljs-selector-tag{font-weight:700}.swagger-section .hljs-addition,.swagger-section .hljs-built_in,.swagger-section .hljs-bullet,.swagger-section .hljs-code,.swagger-section .hljs-literal{color:#1f811f}.swagger-section .hljs-link,.swagger-section .hljs-regexp,.swagger-section .hljs-selector-attr,.swagger-section .hljs-selector-pseudo,.swagger-section .hljs-symbol,.swagger-section .hljs-template-variable,.swagger-section .hljs-variable{color:#bc6060}.swagger-section .hljs-deletion,.swagger-section .hljs-number,.swagger-section .hljs-quote,.swagger-section .hljs-selector-class,.swagger-section .hljs-selector-id,.swagger-section .hljs-string,.swagger-section .hljs-template-tag,.swagger-section .hljs-type{color:#800}.swagger-section .hljs-section,.swagger-section .hljs-title{color:#800;font-weight:700}.swagger-section .hljs-comment{color:#888}.swagger-section .hljs-meta{color:#2b6ea1}.swagger-section .hljs-emphasis{font-style:italic}.swagger-section .hljs-strong{font-weight:700}.swagger-section .swagger-ui-wrap{line-height:1;font-family:Droid Sans,sans-serif;min-width:760px;max-width:960px;margin-left:auto;margin-right:auto}.swagger-section .swagger-ui-wrap b,.swagger-section .swagger-ui-wrap strong{font-family:Droid Sans,sans-serif;font-weight:700}.swagger-section .swagger-ui-wrap blockquote,.swagger-section .swagger-ui-wrap q{quotes:none}.swagger-section .swagger-ui-wrap p{line-height:1.4em;padding:0 0 10px;color:#333}.swagger-section .swagger-ui-wrap blockquote:after,.swagger-section .swagger-ui-wrap blockquote:before,.swagger-section .swagger-ui-wrap q:after,.swagger-section .swagger-ui-wrap q:before{content:none}.swagger-section .swagger-ui-wrap .heading_with_menu h1,.swagger-section .swagger-ui-wrap .heading_with_menu h2,.swagger-section .swagger-ui-wrap .heading_with_menu h3,.swagger-section .swagger-ui-wrap .heading_with_menu h4,.swagger-section .swagger-ui-wrap .heading_with_menu h5,.swagger-section .swagger-ui-wrap .heading_with_menu h6{display:block;clear:none;float:left;-ms-box-sizing:border-box;box-sizing:border-box;width:60%}.swagger-section .swagger-ui-wrap table{border-collapse:collapse;border-spacing:0}.swagger-section .swagger-ui-wrap table thead tr th{padding:5px;font-size:.9em;color:#666;border-bottom:1px solid #999}.swagger-section .swagger-ui-wrap table tbody tr:last-child td{border-bottom:none}.swagger-section .swagger-ui-wrap table tbody tr.offset{background-color:#f0f0f0}.swagger-section .swagger-ui-wrap table tbody tr td{padding:6px;font-size:.9em;border-bottom:1px solid #ccc;vertical-align:top;line-height:1.3em}.swagger-section .swagger-ui-wrap ol{margin:0 0 10px;padding:0 0 0 18px;list-style-type:decimal}.swagger-section .swagger-ui-wrap ol li{padding:5px 0;font-size:.9em;color:#333}.swagger-section .swagger-ui-wrap ol,.swagger-section .swagger-ui-wrap ul{list-style:none}.swagger-section .swagger-ui-wrap h1 a,.swagger-section .swagger-ui-wrap h2 a,.swagger-section .swagger-ui-wrap h3 a,.swagger-section .swagger-ui-wrap h4 a,.swagger-section .swagger-ui-wrap h5 a,.swagger-section .swagger-ui-wrap h6 a{text-decoration:none}.swagger-section .swagger-ui-wrap h1 a:hover,.swagger-section .swagger-ui-wrap h2 a:hover,.swagger-section .swagger-ui-wrap h3 a:hover,.swagger-section .swagger-ui-wrap h4 a:hover,.swagger-section .swagger-ui-wrap h5 a:hover,.swagger-section .swagger-ui-wrap h6 a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap h1 span.divider,.swagger-section .swagger-ui-wrap h2 span.divider,.swagger-section .swagger-ui-wrap h3 span.divider,.swagger-section .swagger-ui-wrap h4 span.divider,.swagger-section .swagger-ui-wrap h5 span.divider,.swagger-section .swagger-ui-wrap h6 span.divider{color:#aaa}.swagger-section .swagger-ui-wrap a{color:#547f00}.swagger-section .swagger-ui-wrap a img{border:none}.swagger-section .swagger-ui-wrap article,.swagger-section .swagger-ui-wrap aside,.swagger-section .swagger-ui-wrap details,.swagger-section .swagger-ui-wrap figcaption,.swagger-section .swagger-ui-wrap figure,.swagger-section .swagger-ui-wrap footer,.swagger-section .swagger-ui-wrap header,.swagger-section .swagger-ui-wrap hgroup,.swagger-section .swagger-ui-wrap menu,.swagger-section .swagger-ui-wrap nav,.swagger-section .swagger-ui-wrap section,.swagger-section .swagger-ui-wrap summary{display:block}.swagger-section .swagger-ui-wrap pre{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;background-color:#fcf6db;border:1px solid #e5e0c6;padding:10px}.swagger-section .swagger-ui-wrap pre code{line-height:1.6em;background:none}.swagger-section .swagger-ui-wrap .content>.content-type>div>label{clear:both;display:block;color:#0f6ab4;font-size:1.1em;margin:0;padding:15px 0 5px}.swagger-section .swagger-ui-wrap .content pre{font-size:12px;margin-top:5px;padding:5px}.swagger-section .swagger-ui-wrap .icon-btn{cursor:pointer}.swagger-section .swagger-ui-wrap .info_title{padding-bottom:10px;font-weight:700;font-size:25px}.swagger-section .swagger-ui-wrap .footer{margin-top:20px}.swagger-section .swagger-ui-wrap div.big p,.swagger-section .swagger-ui-wrap p.big{font-size:1em;margin-bottom:10px}.swagger-section .swagger-ui-wrap form.fullwidth ol li.numeric input,.swagger-section .swagger-ui-wrap form.fullwidth ol li.string input,.swagger-section .swagger-ui-wrap form.fullwidth ol li.text textarea,.swagger-section .swagger-ui-wrap form.fullwidth ol li.url input{width:500px!important}.swagger-section .swagger-ui-wrap .info_license,.swagger-section .swagger-ui-wrap .info_tos{padding-bottom:5px}.swagger-section .swagger-ui-wrap .message-fail{color:#c00}.swagger-section .swagger-ui-wrap .info_email,.swagger-section .swagger-ui-wrap .info_name,.swagger-section .swagger-ui-wrap .info_url{padding-bottom:5px}.swagger-section .swagger-ui-wrap .info_description{padding-bottom:10px;font-size:15px}.swagger-section .swagger-ui-wrap .markdown ol li,.swagger-section .swagger-ui-wrap .markdown ul li{padding:3px 0;line-height:1.4em;color:#333}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.numeric input,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.string input,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.url input{display:block;padding:4px;width:auto;clear:both}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.numeric input.title,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.string input.title,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.url input.title{font-size:1.3em}.swagger-section .swagger-ui-wrap table.fullwidth{width:100%}.swagger-section .swagger-ui-wrap .model-signature{font-family:Droid Sans,sans-serif;font-size:1em;line-height:1.5em}.swagger-section .swagger-ui-wrap .model-signature .signature-nav a{text-decoration:none;color:#aaa}.swagger-section .swagger-ui-wrap .model-signature .signature-nav a:hover{text-decoration:underline;color:#000}.swagger-section .swagger-ui-wrap .model-signature .signature-nav .selected{color:#000;text-decoration:none}.swagger-section .swagger-ui-wrap .model-signature .propType{color:#55a}.swagger-section .swagger-ui-wrap .model-signature pre:hover{background-color:#ffd}.swagger-section .swagger-ui-wrap .model-signature pre{font-size:.85em;line-height:1.2em;overflow:auto;height:200px;resize:vertical;cursor:pointer}.swagger-section .swagger-ui-wrap .model-signature ul.signature-nav{display:block;min-width:230px;margin:0;padding:0}.swagger-section .swagger-ui-wrap .model-signature ul.signature-nav li:last-child{padding-right:0;border-right:none}.swagger-section .swagger-ui-wrap .model-signature ul.signature-nav li{float:left;margin:0 5px 5px 0;padding:2px 5px 2px 0;border-right:1px solid #ddd}.swagger-section .swagger-ui-wrap .model-signature .propOpt{color:#555}.swagger-section .swagger-ui-wrap .model-signature .snippet small{font-size:.75em}.swagger-section .swagger-ui-wrap .model-signature .propOptKey{font-style:italic}.swagger-section .swagger-ui-wrap .model-signature .description .strong{font-weight:700;color:#000;font-size:.9em}.swagger-section .swagger-ui-wrap .model-signature .description div{font-size:.9em;line-height:1.5em;margin-left:1em}.swagger-section .swagger-ui-wrap .model-signature .description .stronger{font-weight:700;color:#000}.swagger-section .swagger-ui-wrap .model-signature .description .propWrap .optionsWrapper{border-spacing:0;position:absolute;background-color:#fff;border:1px solid #bbb;display:none;font-size:11px;max-width:400px;line-height:30px;color:#000;padding:5px;margin-left:10px}.swagger-section .swagger-ui-wrap .model-signature .description .propWrap .optionsWrapper th{text-align:center;background-color:#eee;border:1px solid #bbb;font-size:11px;color:#666;font-weight:700;padding:5px;line-height:15px}.swagger-section .swagger-ui-wrap .model-signature .description .propWrap .optionsWrapper .optionName{font-weight:700}.swagger-section .swagger-ui-wrap .model-signature .description .propDesc.markdown>p:first-child,.swagger-section .swagger-ui-wrap .model-signature .description .propDesc.markdown>p:last-child{display:inline}.swagger-section .swagger-ui-wrap .model-signature .description .propDesc.markdown>p:not(:first-child):before{display:block;content:""}.swagger-section .swagger-ui-wrap .model-signature .description span:last-of-type.propDesc.markdown>p:only-child{margin-right:-3px}.swagger-section .swagger-ui-wrap .model-signature .propName{font-weight:700}.swagger-section .swagger-ui-wrap .model-signature .signature-container{clear:both}.swagger-section .swagger-ui-wrap .body-textarea{width:300px;height:100px;border:1px solid #aaa}.swagger-section .swagger-ui-wrap .markdown li code,.swagger-section .swagger-ui-wrap .markdown p code{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;background-color:#f0f0f0;color:#000;padding:1px 3px}.swagger-section .swagger-ui-wrap .required{font-weight:700}.swagger-section .swagger-ui-wrap .editor_holder{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;font-size:.9em}.swagger-section .swagger-ui-wrap .editor_holder label{font-weight:400!important}.swagger-section .swagger-ui-wrap .editor_holder label.required{font-weight:700!important}.swagger-section .swagger-ui-wrap input.parameter{width:300px;border:1px solid #aaa}.swagger-section .swagger-ui-wrap h1{color:#000;font-size:1.5em;line-height:1.3em;padding:10px 0;font-family:Droid Sans,sans-serif;font-weight:700}.swagger-section .swagger-ui-wrap .heading_with_menu{float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap .heading_with_menu ul{display:block;clear:none;float:right;-ms-box-sizing:border-box;box-sizing:border-box;margin-top:10px}.swagger-section .swagger-ui-wrap h2{color:#000;font-size:1.3em;padding:10px 0}.swagger-section .swagger-ui-wrap h2 a{color:#000}.swagger-section .swagger-ui-wrap h2 span.sub{font-size:.7em;color:#999;font-style:italic}.swagger-section .swagger-ui-wrap h2 span.sub a{color:#777}.swagger-section .swagger-ui-wrap span.weak{color:#666}.swagger-section .swagger-ui-wrap .message-success{color:#89bf04}.swagger-section .swagger-ui-wrap caption,.swagger-section .swagger-ui-wrap td,.swagger-section .swagger-ui-wrap th{text-align:left;font-weight:400;vertical-align:middle}.swagger-section .swagger-ui-wrap .code{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.text textarea{font-family:Droid Sans,sans-serif;height:250px;padding:4px;display:block;clear:both}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.select select{display:block;clear:both}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.boolean{float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.boolean label{display:block;float:left;clear:none;margin:0;padding:0}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.boolean input{display:block;float:left;clear:none;margin:0 5px 0 0}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.required label{color:#000}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li label{display:block;clear:both;width:auto;padding:0 0 3px;color:#666}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li label abbr{padding-left:3px;color:#888}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li p.inline-hints{margin-left:0;font-style:italic;font-size:.9em;margin:0}.swagger-section .swagger-ui-wrap form.formtastic fieldset.buttons{margin:0;padding:0}.swagger-section .swagger-ui-wrap span.blank,.swagger-section .swagger-ui-wrap span.empty{color:#888;font-style:italic}.swagger-section .swagger-ui-wrap .markdown h3{color:#547f00}.swagger-section .swagger-ui-wrap .markdown h4{color:#666}.swagger-section .swagger-ui-wrap .markdown pre{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;background-color:#fcf6db;border:1px solid #e5e0c6;padding:10px;margin:0 0 10px}.swagger-section .swagger-ui-wrap .markdown pre code{line-height:1.6em;overflow:auto}.swagger-section .swagger-ui-wrap div.gist{margin:20px 0 25px!important}.swagger-section .swagger-ui-wrap ul#resources{font-family:Droid Sans,sans-serif;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource{border-bottom:1px solid #ddd}.swagger-section .swagger-ui-wrap ul#resources li.resource.active div.heading h2 a,.swagger-section .swagger-ui-wrap ul#resources li.resource:hover div.heading h2 a{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource.active div.heading ul.options li a,.swagger-section .swagger-ui-wrap ul#resources li.resource:hover div.heading ul.options li a{color:#555}.swagger-section .swagger-ui-wrap ul#resources li.resource:last-child{border-bottom:none}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading{border:1px solid transparent;float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options{overflow:hidden;padding:0;display:block;clear:none;float:right;margin:14px 10px 0 0}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li{float:left;clear:none;margin:0;padding:2px 10px;border-right:1px solid #ddd;color:#666;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a{color:#aaa;text-decoration:none}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a:hover{text-decoration:underline;color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a.active,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a:active,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li.first,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li:first-child{padding-left:0}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li:last-child{padding-right:0;border-right:none}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options.first,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options:first-child{padding-left:0}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2{color:#999;padding-left:0;display:block;clear:none;float:left;font-family:Droid Sans,sans-serif;font-weight:700}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a{color:#999}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a:hover{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation{float:none;clear:both;overflow:hidden;display:block;margin:0 0 10px;padding:0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading{float:none;clear:both;overflow:hidden;display:block;margin:0;padding:0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3{display:block;clear:none;float:left;width:auto;margin:0;padding:0;line-height:1.1em;color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path{padding-left:10px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path a{color:#000;text-decoration:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path a.toggleOperation.deprecated{text-decoration:line-through}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.http_method a{text-transform:uppercase;text-decoration:none;color:#fff;display:inline-block;width:50px;font-size:.7em;text-align:center;padding:7px 0 4px;border-radius:2px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span{margin:0;padding:0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options{overflow:hidden;padding:0;display:block;clear:none;float:right;margin:6px 10px 0 0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li{float:left;clear:none;margin:0;padding:2px 10px;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li a{text-decoration:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li a .markdown p{color:inherit;padding:0;line-height:inherit}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li a .nickname{color:#aaa;padding:0;line-height:inherit}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li.access{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content{border-top:none;padding:10px;border-bottom-left-radius:6px;border-bottom-right-radius:6px;margin:0 0 20px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content h4{font-size:1.1em;margin:0;padding:15px 0 5px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header{float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header a{padding:4px 0 0 10px;display:inline-block;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header input.submit{display:block;clear:none;float:left;padding:6px 8px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header span.response_throbber{background-image:url(../images/throbber.gif);width:128px;height:16px;display:block;clear:none;float:right}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content form input[type=text].error{outline:2px solid #000;outline-color:#c00}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content form select[name=parameterContentType]{max-width:300px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.response div.block pre{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;padding:10px;font-size:.9em;max-height:400px;overflow-y:auto}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading{background-color:#f9f2e9;border:1px solid #f0e0ca}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading h3 span.http_method a{background-color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#f0e0ca;color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li a{color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content{background-color:#faf5ee;border:1px solid #f0e0ca}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content h4{color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content div.sandbox_header a{color:#dcb67f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading{background-color:#fcffcd;border:1px solid #000;border-color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading h3 span.http_method a{text-transform:uppercase;background-color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#ffd20f;color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li a{color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content{background-color:#fcffcd;border:1px solid #000;border-color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content h4{color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content div.sandbox_header a{color:#6fc992}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading{background-color:#f5e8e8;border:1px solid #e8c6c7}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading h3 span.http_method a{text-transform:uppercase;background-color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#e8c6c7;color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li a{color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content{background-color:#f7eded;border:1px solid #e8c6c7}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content h4{color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content div.sandbox_header a{color:#c8787a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading{background-color:#e7f6ec;border:1px solid #c3e8d1}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading h3 span.http_method a{background-color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#c3e8d1;color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li a{color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content{background-color:#ebf7f0;border:1px solid #c3e8d1}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content h4{color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content div.sandbox_header a{color:#6fc992}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading{background-color:#fce9e3;border:1px solid #f5d5c3}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading h3 span.http_method a{background-color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#f0cecb;color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li a{color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content{background-color:#faf0ef;border:1px solid #f0cecb}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content h4{color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content div.sandbox_header a{color:#dcb67f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading{background-color:#e7f0f7;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading h3 span.http_method a{background-color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#c3d9ec;color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li a{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content{background-color:#ebf3f9;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content h4{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content div.sandbox_header a{color:#6fa5d2}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading{background-color:#e7f0f7;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading h3 span.http_method a{background-color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#c3d9ec;color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading ul.options li a{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.content{background-color:#ebf3f9;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.content h4{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.content div.sandbox_header a{color:#6fa5d2}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content{border-top:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li:last-child{padding-right:0;border-right:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li a.active,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li a:active,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations.first,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations:first-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li.first,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li:first-child{padding-left:0}.swagger-section .swagger-ui-wrap p#colophon{margin:0 15px 40px;padding:10px 0;font-size:.8em;border-top:1px solid #ddd;font-family:Droid Sans,sans-serif;color:#999;font-style:italic}.swagger-section .swagger-ui-wrap p#colophon a{text-decoration:none;color:#547f00}.swagger-section .swagger-ui-wrap h3{color:#000;font-size:1.1em;padding:10px 0}.swagger-section .swagger-ui-wrap .markdown ol,.swagger-section .swagger-ui-wrap .markdown ul{font-family:Droid Sans,sans-serif;margin:5px 0 10px;padding:0 0 0 18px;list-style-type:disc}.swagger-section .swagger-ui-wrap form.form_box{background-color:#ebf3f9;border:1px solid #c3d9ec;padding:10px}.swagger-section .swagger-ui-wrap form.form_box label{color:#0f6ab4!important}.swagger-section .swagger-ui-wrap form.form_box input[type=submit]{display:block;padding:10px}.swagger-section .swagger-ui-wrap form.form_box p.weak{font-size:.8em}.swagger-section .swagger-ui-wrap form.form_box p{font-size:.9em;padding:0 0 15px;color:#7e7b6d}.swagger-section .swagger-ui-wrap form.form_box p a{color:#646257}.swagger-section .swagger-ui-wrap form.form_box p strong{color:#000}.swagger-section .swagger-ui-wrap .operation-status td.markdown>p:last-child{padding-bottom:0}.swagger-section .title{font-style:bold}.swagger-section .secondary_form{display:none}.swagger-section .main_image{display:block;margin-left:auto;margin-right:auto}.swagger-section .oauth_body{margin-left:100px;margin-right:100px}.swagger-section .oauth_submit{text-align:center;display:inline-block}.swagger-section .authorize-wrapper{margin:15px 0 10px}.swagger-section .authorize-wrapper_operation{float:right}.swagger-section .authorize__btn:hover{text-decoration:underline;cursor:pointer}.swagger-section .authorize__btn_operation:hover .authorize-scopes{display:block}.swagger-section .authorize-scopes{position:absolute;margin-top:20px;background:#fff;border:1px solid #ccc;border-radius:5px;display:none;font-size:13px;max-width:300px;line-height:30px;color:#000;padding:5px}.swagger-section .authorize-scopes .authorize__scope{text-decoration:none}.swagger-section .authorize__btn_operation{height:18px;vertical-align:middle;display:inline-block;background:url(../images/explorer_icons.png) no-repeat}.swagger-section .authorize__btn_operation_login{background-position:0 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section .authorize__btn_operation_logout{background-position:-30px 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section #auth_container{color:#fff;display:inline-block;border:none;padding:5px;width:87px;height:13px}.swagger-section #auth_container .authorize__btn{color:#fff}.swagger-section .auth_container{padding:0 0 10px;margin-bottom:5px;border-bottom:1px solid #ccc;font-size:.9em}.swagger-section .auth_container .auth__title{color:#547f00;font-size:1.2em}.swagger-section .auth_container .basic_auth__label{display:inline-block;width:60px}.swagger-section .auth_container .auth__description{color:#999;margin-bottom:5px}.swagger-section .auth_container .auth__button{margin-top:10px;height:30px}.swagger-section .auth_container .key_auth__field{margin:5px 0}.swagger-section .auth_container .key_auth__label{display:inline-block;width:60px}.swagger-section .api-popup-dialog{position:absolute;display:none}.swagger-section .api-popup-dialog-wrapper{z-index:2;width:500px;background:#fff;padding:20px;border:1px solid #ccc;border-radius:5px;font-size:13px;color:#777;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.swagger-section .api-popup-dialog-shadow{position:fixed;top:0;left:0;width:100%;height:100%;opacity:.2;background-color:gray;z-index:1}.swagger-section .api-popup-dialog .api-popup-title{font-size:24px;padding:10px 0}.swagger-section .api-popup-dialog .error-msg{padding-left:5px;padding-bottom:5px}.swagger-section .api-popup-dialog .api-popup-content{max-height:500px;overflow-y:auto}.swagger-section .api-popup-dialog .api-popup-authbtn,.swagger-section .api-popup-dialog .api-popup-cancel{height:30px}.swagger-section .api-popup-scopes{padding:10px 20px}.swagger-section .api-popup-scopes li{padding:5px 0;line-height:20px}.swagger-section .api-popup-scopes li input{position:relative;top:2px}.swagger-section .api-popup-scopes .api-scope-desc{padding-left:20px;font-style:italic}.swagger-section .api-popup-actions{padding-top:10px}.swagger-section fieldset{padding-bottom:10px;padding-left:20px}#header{display:none}.swagger-section .swagger-ui-wrap .model-signature pre{max-height:none}.swagger-section .swagger-ui-wrap .body-textarea,.swagger-section .swagger-ui-wrap input.parameter{width:100px}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options{display:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content{display:block!important} \ No newline at end of file diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/reset.css b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/reset.css new file mode 100644 index 000000000..fab4c2931 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/reset.css @@ -0,0 +1 @@ +a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-collapse:collapse;border-spacing:0} \ No newline at end of file diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/screen.css b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/screen.css new file mode 100644 index 000000000..b3c5774dc --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/screen.css @@ -0,0 +1 @@ +.swagger-section pre code{display:block;padding:.5em;background:#f0f0f0}.swagger-section pre .clojure .built_in,.swagger-section pre .lisp .title,.swagger-section pre .nginx .title,.swagger-section pre .subst,.swagger-section pre .tag .title,.swagger-section pre code{color:#000}.swagger-section pre .addition,.swagger-section pre .aggregate,.swagger-section pre .apache .cbracket,.swagger-section pre .apache .tag,.swagger-section pre .bash .variable,.swagger-section pre .constant,.swagger-section pre .django .variable,.swagger-section pre .erlang_repl .function_or_atom,.swagger-section pre .flow,.swagger-section pre .markdown .header,.swagger-section pre .parent,.swagger-section pre .preprocessor,.swagger-section pre .ruby .symbol,.swagger-section pre .ruby .symbol .string,.swagger-section pre .rules .value,.swagger-section pre .rules .value .number,.swagger-section pre .smalltalk .class,.swagger-section pre .stream,.swagger-section pre .string,.swagger-section pre .tag .value,.swagger-section pre .template_tag,.swagger-section pre .tex .command,.swagger-section pre .tex .special,.swagger-section pre .title{color:#800}.swagger-section pre .annotation,.swagger-section pre .chunk,.swagger-section pre .comment,.swagger-section pre .diff .header,.swagger-section pre .markdown .blockquote,.swagger-section pre .template_comment{color:#888}.swagger-section pre .change,.swagger-section pre .date,.swagger-section pre .go .constant,.swagger-section pre .literal,.swagger-section pre .markdown .bullet,.swagger-section pre .markdown .link_url,.swagger-section pre .number,.swagger-section pre .regexp,.swagger-section pre .smalltalk .char,.swagger-section pre .smalltalk .symbol{color:#080}.swagger-section pre .apache .sqbracket,.swagger-section pre .array,.swagger-section pre .attr_selector,.swagger-section pre .clojure .attribute,.swagger-section pre .coffeescript .property,.swagger-section pre .decorator,.swagger-section pre .deletion,.swagger-section pre .doctype,.swagger-section pre .envvar,.swagger-section pre .erlang_repl .reserved,.swagger-section pre .filter .argument,.swagger-section pre .important,.swagger-section pre .javadoc,.swagger-section pre .label,.swagger-section pre .localvars,.swagger-section pre .markdown .link_label,.swagger-section pre .nginx .built_in,.swagger-section pre .pi,.swagger-section pre .prompt,.swagger-section pre .pseudo,.swagger-section pre .ruby .string,.swagger-section pre .shebang,.swagger-section pre .tex .formula,.swagger-section pre .vhdl .attribute{color:#88f}.swagger-section pre .aggregate,.swagger-section pre .apache .tag,.swagger-section pre .bash .variable,.swagger-section pre .built_in,.swagger-section pre .css .tag,.swagger-section pre .go .typename,.swagger-section pre .id,.swagger-section pre .javadoctag,.swagger-section pre .keyword,.swagger-section pre .markdown .strong,.swagger-section pre .phpdoc,.swagger-section pre .request,.swagger-section pre .smalltalk .class,.swagger-section pre .status,.swagger-section pre .tex .command,.swagger-section pre .title,.swagger-section pre .winutils,.swagger-section pre .yardoctag{font-weight:700}.swagger-section pre .markdown .emphasis{font-style:italic}.swagger-section pre .nginx .built_in{font-weight:400}.swagger-section pre .coffeescript .javascript,.swagger-section pre .javascript .xml,.swagger-section pre .tex .formula,.swagger-section pre .xml .cdata,.swagger-section pre .xml .css,.swagger-section pre .xml .javascript,.swagger-section pre .xml .vbscript{opacity:.5}.swagger-section .hljs{display:block;overflow-x:auto;padding:.5em;background:#f0f0f0}.swagger-section .hljs,.swagger-section .hljs-subst{color:#444}.swagger-section .hljs-attribute,.swagger-section .hljs-doctag,.swagger-section .hljs-keyword,.swagger-section .hljs-meta-keyword,.swagger-section .hljs-name,.swagger-section .hljs-selector-tag{font-weight:700}.swagger-section .hljs-addition,.swagger-section .hljs-built_in,.swagger-section .hljs-bullet,.swagger-section .hljs-code,.swagger-section .hljs-literal{color:#1f811f}.swagger-section .hljs-link,.swagger-section .hljs-regexp,.swagger-section .hljs-selector-attr,.swagger-section .hljs-selector-pseudo,.swagger-section .hljs-symbol,.swagger-section .hljs-template-variable,.swagger-section .hljs-variable{color:#bc6060}.swagger-section .hljs-deletion,.swagger-section .hljs-number,.swagger-section .hljs-quote,.swagger-section .hljs-selector-class,.swagger-section .hljs-selector-id,.swagger-section .hljs-string,.swagger-section .hljs-template-tag,.swagger-section .hljs-type{color:#800}.swagger-section .hljs-section,.swagger-section .hljs-title{color:#800;font-weight:700}.swagger-section .hljs-comment{color:#888}.swagger-section .hljs-meta{color:#2b6ea1}.swagger-section .hljs-emphasis{font-style:italic}.swagger-section .hljs-strong{font-weight:700}.swagger-section .swagger-ui-wrap{line-height:1;font-family:Droid Sans,sans-serif;min-width:760px;max-width:960px;margin-left:auto;margin-right:auto}.swagger-section .swagger-ui-wrap b,.swagger-section .swagger-ui-wrap strong{font-family:Droid Sans,sans-serif;font-weight:700}.swagger-section .swagger-ui-wrap blockquote,.swagger-section .swagger-ui-wrap q{quotes:none}.swagger-section .swagger-ui-wrap p{line-height:1.4em;padding:0 0 10px;color:#333}.swagger-section .swagger-ui-wrap blockquote:after,.swagger-section .swagger-ui-wrap blockquote:before,.swagger-section .swagger-ui-wrap q:after,.swagger-section .swagger-ui-wrap q:before{content:none}.swagger-section .swagger-ui-wrap .heading_with_menu h1,.swagger-section .swagger-ui-wrap .heading_with_menu h2,.swagger-section .swagger-ui-wrap .heading_with_menu h3,.swagger-section .swagger-ui-wrap .heading_with_menu h4,.swagger-section .swagger-ui-wrap .heading_with_menu h5,.swagger-section .swagger-ui-wrap .heading_with_menu h6{display:block;clear:none;float:left;-ms-box-sizing:border-box;box-sizing:border-box;width:60%}.swagger-section .swagger-ui-wrap table{border-collapse:collapse;border-spacing:0}.swagger-section .swagger-ui-wrap table thead tr th{padding:5px;font-size:.9em;color:#666;border-bottom:1px solid #999}.swagger-section .swagger-ui-wrap table tbody tr:last-child td{border-bottom:none}.swagger-section .swagger-ui-wrap table tbody tr.offset{background-color:#f0f0f0}.swagger-section .swagger-ui-wrap table tbody tr td{padding:6px;font-size:.9em;border-bottom:1px solid #ccc;vertical-align:top;line-height:1.3em}.swagger-section .swagger-ui-wrap ol{margin:0 0 10px;padding:0 0 0 18px;list-style-type:decimal}.swagger-section .swagger-ui-wrap ol li{padding:5px 0;font-size:.9em;color:#333}.swagger-section .swagger-ui-wrap ol,.swagger-section .swagger-ui-wrap ul{list-style:none}.swagger-section .swagger-ui-wrap h1 a,.swagger-section .swagger-ui-wrap h2 a,.swagger-section .swagger-ui-wrap h3 a,.swagger-section .swagger-ui-wrap h4 a,.swagger-section .swagger-ui-wrap h5 a,.swagger-section .swagger-ui-wrap h6 a{text-decoration:none}.swagger-section .swagger-ui-wrap h1 a:hover,.swagger-section .swagger-ui-wrap h2 a:hover,.swagger-section .swagger-ui-wrap h3 a:hover,.swagger-section .swagger-ui-wrap h4 a:hover,.swagger-section .swagger-ui-wrap h5 a:hover,.swagger-section .swagger-ui-wrap h6 a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap h1 span.divider,.swagger-section .swagger-ui-wrap h2 span.divider,.swagger-section .swagger-ui-wrap h3 span.divider,.swagger-section .swagger-ui-wrap h4 span.divider,.swagger-section .swagger-ui-wrap h5 span.divider,.swagger-section .swagger-ui-wrap h6 span.divider{color:#aaa}.swagger-section .swagger-ui-wrap a{color:#547f00}.swagger-section .swagger-ui-wrap a img{border:none}.swagger-section .swagger-ui-wrap article,.swagger-section .swagger-ui-wrap aside,.swagger-section .swagger-ui-wrap details,.swagger-section .swagger-ui-wrap figcaption,.swagger-section .swagger-ui-wrap figure,.swagger-section .swagger-ui-wrap footer,.swagger-section .swagger-ui-wrap header,.swagger-section .swagger-ui-wrap hgroup,.swagger-section .swagger-ui-wrap menu,.swagger-section .swagger-ui-wrap nav,.swagger-section .swagger-ui-wrap section,.swagger-section .swagger-ui-wrap summary{display:block}.swagger-section .swagger-ui-wrap pre{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;background-color:#fcf6db;border:1px solid #e5e0c6;padding:10px}.swagger-section .swagger-ui-wrap pre code{line-height:1.6em;background:none}.swagger-section .swagger-ui-wrap .content>.content-type>div>label{clear:both;display:block;color:#0f6ab4;font-size:1.1em;margin:0;padding:15px 0 5px}.swagger-section .swagger-ui-wrap .content pre{font-size:12px;margin-top:5px;padding:5px}.swagger-section .swagger-ui-wrap .icon-btn{cursor:pointer}.swagger-section .swagger-ui-wrap .info_title{padding-bottom:10px;font-weight:700;font-size:25px}.swagger-section .swagger-ui-wrap .footer{margin-top:20px}.swagger-section .swagger-ui-wrap div.big p,.swagger-section .swagger-ui-wrap p.big{font-size:1em;margin-bottom:10px}.swagger-section .swagger-ui-wrap form.fullwidth ol li.numeric input,.swagger-section .swagger-ui-wrap form.fullwidth ol li.string input,.swagger-section .swagger-ui-wrap form.fullwidth ol li.text textarea,.swagger-section .swagger-ui-wrap form.fullwidth ol li.url input{width:500px!important}.swagger-section .swagger-ui-wrap .info_license,.swagger-section .swagger-ui-wrap .info_tos{padding-bottom:5px}.swagger-section .swagger-ui-wrap .message-fail{color:#c00}.swagger-section .swagger-ui-wrap .info_email,.swagger-section .swagger-ui-wrap .info_name,.swagger-section .swagger-ui-wrap .info_url{padding-bottom:5px}.swagger-section .swagger-ui-wrap .info_description{padding-bottom:10px;font-size:15px}.swagger-section .swagger-ui-wrap .markdown ol li,.swagger-section .swagger-ui-wrap .markdown ul li{padding:3px 0;line-height:1.4em;color:#333}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.numeric input,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.string input,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.url input{display:block;padding:4px;width:auto;clear:both}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.numeric input.title,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.string input.title,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.url input.title{font-size:1.3em}.swagger-section .swagger-ui-wrap table.fullwidth{width:100%}.swagger-section .swagger-ui-wrap .model-signature{font-family:Droid Sans,sans-serif;font-size:1em;line-height:1.5em}.swagger-section .swagger-ui-wrap .model-signature .signature-nav a{text-decoration:none;color:#aaa}.swagger-section .swagger-ui-wrap .model-signature .signature-nav a:hover{text-decoration:underline;color:#000}.swagger-section .swagger-ui-wrap .model-signature .signature-nav .selected{color:#000;text-decoration:none}.swagger-section .swagger-ui-wrap .model-signature .propType{color:#55a}.swagger-section .swagger-ui-wrap .model-signature pre:hover{background-color:#ffd}.swagger-section .swagger-ui-wrap .model-signature pre{font-size:.85em;line-height:1.2em;overflow:auto;height:200px;resize:vertical;cursor:pointer}.swagger-section .swagger-ui-wrap .model-signature ul.signature-nav{display:block;min-width:230px;margin:0;padding:0}.swagger-section .swagger-ui-wrap .model-signature ul.signature-nav li:last-child{padding-right:0;border-right:none}.swagger-section .swagger-ui-wrap .model-signature ul.signature-nav li{float:left;margin:0 5px 5px 0;padding:2px 5px 2px 0;border-right:1px solid #ddd}.swagger-section .swagger-ui-wrap .model-signature .propOpt{color:#555}.swagger-section .swagger-ui-wrap .model-signature .snippet small{font-size:.75em}.swagger-section .swagger-ui-wrap .model-signature .propOptKey{font-style:italic}.swagger-section .swagger-ui-wrap .model-signature .description .strong{font-weight:700;color:#000;font-size:.9em}.swagger-section .swagger-ui-wrap .model-signature .description div{font-size:.9em;line-height:1.5em;margin-left:1em}.swagger-section .swagger-ui-wrap .model-signature .description .stronger{font-weight:700;color:#000}.swagger-section .swagger-ui-wrap .model-signature .description .propWrap .optionsWrapper{border-spacing:0;position:absolute;background-color:#fff;border:1px solid #bbb;display:none;font-size:11px;max-width:400px;line-height:30px;color:#000;padding:5px;margin-left:10px}.swagger-section .swagger-ui-wrap .model-signature .description .propWrap .optionsWrapper th{text-align:center;background-color:#eee;border:1px solid #bbb;font-size:11px;color:#666;font-weight:700;padding:5px;line-height:15px}.swagger-section .swagger-ui-wrap .model-signature .description .propWrap .optionsWrapper .optionName{font-weight:700}.swagger-section .swagger-ui-wrap .model-signature .description .propDesc.markdown>p:first-child,.swagger-section .swagger-ui-wrap .model-signature .description .propDesc.markdown>p:last-child{display:inline}.swagger-section .swagger-ui-wrap .model-signature .description .propDesc.markdown>p:not(:first-child):before{display:block;content:""}.swagger-section .swagger-ui-wrap .model-signature .description span:last-of-type.propDesc.markdown>p:only-child{margin-right:-3px}.swagger-section .swagger-ui-wrap .model-signature .propName{font-weight:700}.swagger-section .swagger-ui-wrap .model-signature .signature-container{clear:both}.swagger-section .swagger-ui-wrap .body-textarea{width:300px;height:100px;border:1px solid #aaa}.swagger-section .swagger-ui-wrap .markdown li code,.swagger-section .swagger-ui-wrap .markdown p code{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;background-color:#f0f0f0;color:#000;padding:1px 3px}.swagger-section .swagger-ui-wrap .required{font-weight:700}.swagger-section .swagger-ui-wrap .editor_holder{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;font-size:.9em}.swagger-section .swagger-ui-wrap .editor_holder label{font-weight:400!important}.swagger-section .swagger-ui-wrap .editor_holder label.required{font-weight:700!important}.swagger-section .swagger-ui-wrap input.parameter{width:300px;border:1px solid #aaa}.swagger-section .swagger-ui-wrap h1{color:#000;font-size:1.5em;line-height:1.3em;padding:10px 0;font-family:Droid Sans,sans-serif;font-weight:700}.swagger-section .swagger-ui-wrap .heading_with_menu{float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap .heading_with_menu ul{display:block;clear:none;float:right;-ms-box-sizing:border-box;box-sizing:border-box;margin-top:10px}.swagger-section .swagger-ui-wrap h2{color:#000;font-size:1.3em;padding:10px 0}.swagger-section .swagger-ui-wrap h2 a{color:#000}.swagger-section .swagger-ui-wrap h2 span.sub{font-size:.7em;color:#999;font-style:italic}.swagger-section .swagger-ui-wrap h2 span.sub a{color:#777}.swagger-section .swagger-ui-wrap span.weak{color:#666}.swagger-section .swagger-ui-wrap .message-success{color:#89bf04}.swagger-section .swagger-ui-wrap caption,.swagger-section .swagger-ui-wrap td,.swagger-section .swagger-ui-wrap th{text-align:left;font-weight:400;vertical-align:middle}.swagger-section .swagger-ui-wrap .code{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.text textarea{font-family:Droid Sans,sans-serif;height:250px;padding:4px;display:block;clear:both}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.select select{display:block;clear:both}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.boolean{float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.boolean label{display:block;float:left;clear:none;margin:0;padding:0}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.boolean input{display:block;float:left;clear:none;margin:0 5px 0 0}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.required label{color:#000}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li label{display:block;clear:both;width:auto;padding:0 0 3px;color:#666}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li label abbr{padding-left:3px;color:#888}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li p.inline-hints{margin-left:0;font-style:italic;font-size:.9em;margin:0}.swagger-section .swagger-ui-wrap form.formtastic fieldset.buttons{margin:0;padding:0}.swagger-section .swagger-ui-wrap span.blank,.swagger-section .swagger-ui-wrap span.empty{color:#888;font-style:italic}.swagger-section .swagger-ui-wrap .markdown h3{color:#547f00}.swagger-section .swagger-ui-wrap .markdown h4{color:#666}.swagger-section .swagger-ui-wrap .markdown pre{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;background-color:#fcf6db;border:1px solid #e5e0c6;padding:10px;margin:0 0 10px}.swagger-section .swagger-ui-wrap .markdown pre code{line-height:1.6em;overflow:auto}.swagger-section .swagger-ui-wrap div.gist{margin:20px 0 25px!important}.swagger-section .swagger-ui-wrap ul#resources{font-family:Droid Sans,sans-serif;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource{border-bottom:1px solid #ddd}.swagger-section .swagger-ui-wrap ul#resources li.resource.active div.heading h2 a,.swagger-section .swagger-ui-wrap ul#resources li.resource:hover div.heading h2 a{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource.active div.heading ul.options li a,.swagger-section .swagger-ui-wrap ul#resources li.resource:hover div.heading ul.options li a{color:#555}.swagger-section .swagger-ui-wrap ul#resources li.resource:last-child{border-bottom:none}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading{border:1px solid transparent;float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options{overflow:hidden;padding:0;display:block;clear:none;float:right;margin:14px 10px 0 0}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li{float:left;clear:none;margin:0;padding:2px 10px;border-right:1px solid #ddd;color:#666;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a{color:#aaa;text-decoration:none}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a:hover{text-decoration:underline;color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a.active,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a:active,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li.first,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li:first-child{padding-left:0}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li:last-child{padding-right:0;border-right:none}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options.first,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options:first-child{padding-left:0}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2{color:#999;padding-left:0;display:block;clear:none;float:left;font-family:Droid Sans,sans-serif;font-weight:700}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a{color:#999}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a:hover{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation{float:none;clear:both;overflow:hidden;display:block;margin:0 0 10px;padding:0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading{float:none;clear:both;overflow:hidden;display:block;margin:0;padding:0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3{display:block;clear:none;float:left;width:auto;margin:0;padding:0;line-height:1.1em;color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path{padding-left:10px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path a{color:#000;text-decoration:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path a.toggleOperation.deprecated{text-decoration:line-through}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.http_method a{text-transform:uppercase;text-decoration:none;color:#fff;display:inline-block;width:50px;font-size:.7em;text-align:center;padding:7px 0 4px;border-radius:2px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span{margin:0;padding:0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options{overflow:hidden;padding:0;display:block;clear:none;float:right;margin:6px 10px 0 0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li{float:left;clear:none;margin:0;padding:2px 10px;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li a{text-decoration:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li a .markdown p{color:inherit;padding:0;line-height:inherit}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li a .nickname{color:#aaa;padding:0;line-height:inherit}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li.access{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content{border-top:none;padding:10px;border-bottom-left-radius:6px;border-bottom-right-radius:6px;margin:0 0 20px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content h4{font-size:1.1em;margin:0;padding:15px 0 5px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header{float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header a{padding:4px 0 0 10px;display:inline-block;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header input.submit{display:block;clear:none;float:left;padding:6px 8px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header span.response_throbber{background-image:url(../images/throbber.gif);width:128px;height:16px;display:block;clear:none;float:right}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content form input[type=text].error{outline:2px solid #000;outline-color:#c00}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content form select[name=parameterContentType]{max-width:300px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.response div.block pre{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;padding:10px;font-size:.9em;max-height:400px;overflow-y:auto}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading{background-color:#f9f2e9;border:1px solid #f0e0ca}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading h3 span.http_method a{background-color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#f0e0ca;color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li a{color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content{background-color:#faf5ee;border:1px solid #f0e0ca}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content h4{color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content div.sandbox_header a{color:#dcb67f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading{background-color:#fcffcd;border:1px solid #000;border-color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading h3 span.http_method a{text-transform:uppercase;background-color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#ffd20f;color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li a{color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content{background-color:#fcffcd;border:1px solid #000;border-color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content h4{color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content div.sandbox_header a{color:#6fc992}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading{background-color:#f5e8e8;border:1px solid #e8c6c7}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading h3 span.http_method a{text-transform:uppercase;background-color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#e8c6c7;color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li a{color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content{background-color:#f7eded;border:1px solid #e8c6c7}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content h4{color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content div.sandbox_header a{color:#c8787a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading{background-color:#e7f6ec;border:1px solid #c3e8d1}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading h3 span.http_method a{background-color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#c3e8d1;color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li a{color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content{background-color:#ebf7f0;border:1px solid #c3e8d1}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content h4{color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content div.sandbox_header a{color:#6fc992}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading{background-color:#fce9e3;border:1px solid #f5d5c3}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading h3 span.http_method a{background-color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#f0cecb;color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li a{color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content{background-color:#faf0ef;border:1px solid #f0cecb}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content h4{color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content div.sandbox_header a{color:#dcb67f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading{background-color:#e7f0f7;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading h3 span.http_method a{background-color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#c3d9ec;color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li a{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content{background-color:#ebf3f9;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content h4{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content div.sandbox_header a{color:#6fa5d2}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading{background-color:#e7f0f7;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading h3 span.http_method a{background-color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#c3d9ec;color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading ul.options li a{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.content{background-color:#ebf3f9;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.content h4{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.content div.sandbox_header a{color:#6fa5d2}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content{border-top:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li:last-child{padding-right:0;border-right:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li a.active,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li a:active,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations.first,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations:first-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li.first,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li:first-child{padding-left:0}.swagger-section .swagger-ui-wrap p#colophon{margin:0 15px 40px;padding:10px 0;font-size:.8em;border-top:1px solid #ddd;font-family:Droid Sans,sans-serif;color:#999;font-style:italic}.swagger-section .swagger-ui-wrap p#colophon a{text-decoration:none;color:#547f00}.swagger-section .swagger-ui-wrap h3{color:#000;font-size:1.1em;padding:10px 0}.swagger-section .swagger-ui-wrap .markdown ol,.swagger-section .swagger-ui-wrap .markdown ul{font-family:Droid Sans,sans-serif;margin:5px 0 10px;padding:0 0 0 18px;list-style-type:disc}.swagger-section .swagger-ui-wrap form.form_box{background-color:#ebf3f9;border:1px solid #c3d9ec;padding:10px}.swagger-section .swagger-ui-wrap form.form_box label{color:#0f6ab4!important}.swagger-section .swagger-ui-wrap form.form_box input[type=submit]{display:block;padding:10px}.swagger-section .swagger-ui-wrap form.form_box p.weak{font-size:.8em}.swagger-section .swagger-ui-wrap form.form_box p{font-size:.9em;padding:0 0 15px;color:#7e7b6d}.swagger-section .swagger-ui-wrap form.form_box p a{color:#646257}.swagger-section .swagger-ui-wrap form.form_box p strong{color:#000}.swagger-section .swagger-ui-wrap .operation-status td.markdown>p:last-child{padding-bottom:0}.swagger-section .title{font-style:bold}.swagger-section .secondary_form{display:none}.swagger-section .main_image{display:block;margin-left:auto;margin-right:auto}.swagger-section .oauth_body{margin-left:100px;margin-right:100px}.swagger-section .oauth_submit{text-align:center;display:inline-block}.swagger-section .authorize-wrapper{margin:15px 0 10px}.swagger-section .authorize-wrapper_operation{float:right}.swagger-section .authorize__btn:hover{text-decoration:underline;cursor:pointer}.swagger-section .authorize__btn_operation:hover .authorize-scopes{display:block}.swagger-section .authorize-scopes{position:absolute;margin-top:20px;background:#fff;border:1px solid #ccc;border-radius:5px;display:none;font-size:13px;max-width:300px;line-height:30px;color:#000;padding:5px}.swagger-section .authorize-scopes .authorize__scope{text-decoration:none}.swagger-section .authorize__btn_operation{height:18px;vertical-align:middle;display:inline-block;background:url(../images/explorer_icons.png) no-repeat}.swagger-section .authorize__btn_operation_login{background-position:0 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section .authorize__btn_operation_logout{background-position:-30px 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section #auth_container{color:#fff;display:inline-block;border:none;padding:5px;width:87px;height:13px}.swagger-section #auth_container .authorize__btn{color:#fff}.swagger-section .auth_container{padding:0 0 10px;margin-bottom:5px;border-bottom:1px solid #ccc;font-size:.9em}.swagger-section .auth_container .auth__title{color:#547f00;font-size:1.2em}.swagger-section .auth_container .basic_auth__label{display:inline-block;width:60px}.swagger-section .auth_container .auth__description{color:#999;margin-bottom:5px}.swagger-section .auth_container .auth__button{margin-top:10px;height:30px}.swagger-section .auth_container .key_auth__field{margin:5px 0}.swagger-section .auth_container .key_auth__label{display:inline-block;width:60px}.swagger-section .api-popup-dialog{position:absolute;display:none}.swagger-section .api-popup-dialog-wrapper{z-index:2;width:500px;background:#fff;padding:20px;border:1px solid #ccc;border-radius:5px;font-size:13px;color:#777;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.swagger-section .api-popup-dialog-shadow{position:fixed;top:0;left:0;width:100%;height:100%;opacity:.2;background-color:gray;z-index:1}.swagger-section .api-popup-dialog .api-popup-title{font-size:24px;padding:10px 0}.swagger-section .api-popup-dialog .error-msg{padding-left:5px;padding-bottom:5px}.swagger-section .api-popup-dialog .api-popup-content{max-height:500px;overflow-y:auto}.swagger-section .api-popup-dialog .api-popup-authbtn,.swagger-section .api-popup-dialog .api-popup-cancel{height:30px}.swagger-section .api-popup-scopes{padding:10px 20px}.swagger-section .api-popup-scopes li{padding:5px 0;line-height:20px}.swagger-section .api-popup-scopes li input{position:relative;top:2px}.swagger-section .api-popup-scopes .api-scope-desc{padding-left:20px;font-style:italic}.swagger-section .api-popup-actions{padding-top:10px}.swagger-section fieldset{padding-bottom:10px;padding-left:20px}.swagger-section .access,.swagger-section .auth{float:right}.swagger-section .api-ic{height:18px;vertical-align:middle;display:inline-block;background:url(../images/explorer_icons.png) no-repeat}.swagger-section .api-ic .api_information_panel{position:relative;margin-top:20px;margin-left:-5px;background:#fff;border:1px solid #ccc;border-radius:5px;display:none;font-size:13px;max-width:300px;line-height:30px;color:#000;padding:5px}.swagger-section .api-ic .api_information_panel p .api-msg-enabled{color:green}.swagger-section .api-ic .api_information_panel p .api-msg-disabled{color:red}.swagger-section .api-ic:hover .api_information_panel{position:absolute;display:block}.swagger-section .ic-info{background-position:0 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section .ic-warning{background-position:-60px 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section .ic-error{background-position:-30px 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section .ic-off{background-position:-90px 0;width:58px;margin-top:-4px;cursor:pointer}.swagger-section .ic-on{background-position:-160px 0;width:58px;margin-top:-4px;cursor:pointer}.swagger-section #header{background-color:#89bf04;padding:9px 14px 19px;height:23px;min-width:775px}.swagger-section #input_baseUrl{width:400px}.swagger-section #api_selector{display:block;clear:none;float:right}.swagger-section #api_selector .input{display:inline-block;clear:none;margin:0 10px 0 0}.swagger-section #api_selector input{font-size:.9em;padding:3px;margin:0}.swagger-section #input_apiKey{width:200px}.swagger-section #auth_container .authorize__btn,.swagger-section #explore{display:block;text-decoration:none;font-weight:700;padding:6px 8px;font-size:.9em;color:#fff;background-color:#547f00;border-radius:4px}.swagger-section #auth_container .authorize__btn:hover,.swagger-section #explore:hover{background-color:#547f00}.swagger-section #header #logo{font-size:1.5em;font-weight:700;text-decoration:none;color:#fff}.swagger-section #header #logo .logo__img{display:block;float:left;margin-top:2px}.swagger-section #header #logo .logo__title{display:inline-block;padding:5px 0 0 10px}.swagger-section #content_message{margin:10px 15px;font-style:italic;color:#999}.swagger-section #message-bar{min-height:30px;text-align:center;padding-top:10px}.swagger-section .swagger-collapse:before{content:"-"}.swagger-section .swagger-expand:before{content:"+"}.swagger-section .error{outline-color:#c00;background-color:#f2dede} \ No newline at end of file diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/style.css b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/style.css new file mode 100644 index 000000000..52907e463 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/style.css @@ -0,0 +1 @@ +.swagger-section #header a#logo{font-size:1.5em;font-weight:700;text-decoration:none;padding:20px 0 20px 40px}#text-head{font-size:80px;font-family:Roboto,sans-serif;color:#fff;float:right;margin-right:20%}.navbar-fixed-top .navbar-brand,.navbar-fixed-top .navbar-nav,.navbar-header{height:auto}.navbar-inverse{background-color:#000;border-color:#000}#navbar-brand{margin-left:20%}.navtext{font-size:10px}.h1,h1{font-size:60px}.navbar-default .navbar-header .navbar-brand{color:#a2dfee}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a{color:#393939;font-family:Arvo,serif;font-size:1.5em}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a:hover{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2{color:#525252;padding-left:0;display:block;clear:none;float:left;font-family:Arvo,serif;font-weight:700}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#0a0a0a}.container1{width:1500px;margin:auto;margin-top:0;background-repeat:no-repeat;background-position:-40px -20px;margin-bottom:210px}.container-inner{width:1200px;margin:auto;background-color:hsla(192,8%,88%,.75);padding-bottom:40px;padding-top:40px;border-radius:15px}.header-content{padding:0;width:1000px}.title1{font-size:80px;font-family:Vollkorn,serif;color:#404040;text-align:center;padding-top:40px;padding-bottom:100px}#icon{margin-top:-18px}.subtext{font-size:25px;font-style:italic;color:#08b;text-align:right;padding-right:250px}.bg-primary{background-color:#00468b}.navbar-default .nav>li>a,.navbar-default .nav>li>a:focus,.navbar-default .nav>li>a:focus:hover,.navbar-default .nav>li>a:hover{color:#08b}.text-faded{font-size:25px;font-family:Vollkorn,serif}.section-heading{font-family:Vollkorn,serif;font-size:45px;padding-bottom:10px}hr{border-color:#00468b;padding-bottom:10px}.description{margin-top:20px;padding-bottom:200px}.description li{font-family:Vollkorn,serif;font-size:25px;color:#525252;margin-left:28%;padding-top:5px}.gap{margin-top:200px}.troubleshootingtext{color:hsla(0,0%,100%,.7);padding-left:30%}.troubleshootingtext li{list-style-type:circle;font-size:25px;padding-bottom:5px}.overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.block.response_body.json:hover{cursor:pointer}.backdrop{color:blue}#myModal{height:100%}.modal-backdrop{bottom:0;position:fixed}.curl{padding:10px;font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;font-size:.9em;max-height:400px;margin-top:5px;overflow-y:auto;background-color:#fcf6db;border:1px solid #e5e0c6;border-radius:4px}.curl_title{font-size:1.1em;margin:0;padding:15px 0 5px;font-family:Open Sans,Helvetica Neue,Arial,sans-serif;font-weight:500;line-height:1.1}.footer{display:none}.swagger-section .swagger-ui-wrap h2{padding:0}h2{margin:0;margin-bottom:5px}.markdown p,.swagger-section .swagger-ui-wrap .code{font-size:15px;font-family:Arvo,serif}.swagger-section .swagger-ui-wrap b{font-family:Arvo,serif}#signin:hover{cursor:pointer}.dropdown-menu{padding:15px}.navbar-right .dropdown-menu{left:0;right:auto}#signinbutton{width:100%;height:32px;font-size:13px;font-weight:700;color:#08b}.navbar-default .nav>li .details{color:#000;text-transform:none;font-size:15px;font-weight:400;font-family:Open Sans,sans-serif;font-style:italic;line-height:20px;top:-2px}.navbar-default .nav>li .details:hover{color:#000}#signout{width:100%;height:32px;font-size:13px;font-weight:700;color:#08b} \ No newline at end of file diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/typography.css b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/css/typography.css new file mode 100644 index 000000000..e69de29bb diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/fonts/DroidSans-Bold.ttf b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/fonts/DroidSans-Bold.ttf new file mode 100644 index 000000000..036c4d135 Binary files /dev/null and b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/fonts/DroidSans-Bold.ttf differ diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/fonts/DroidSans.ttf b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/fonts/DroidSans.ttf new file mode 100644 index 000000000..e517a0c5b Binary files /dev/null and b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/fonts/DroidSans.ttf differ diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/collapse.gif b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/collapse.gif new file mode 100644 index 000000000..8843e8ce5 Binary files /dev/null and b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/collapse.gif differ diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/expand.gif b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/expand.gif new file mode 100644 index 000000000..477bf1371 Binary files /dev/null and b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/expand.gif differ diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/explorer_icons.png b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/explorer_icons.png new file mode 100644 index 000000000..be43b2739 Binary files /dev/null and b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/explorer_icons.png differ diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/favicon-16x16.png b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/favicon-16x16.png new file mode 100644 index 000000000..0f7e13b0d Binary files /dev/null and b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/favicon-16x16.png differ diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/favicon-32x32.png b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/favicon-32x32.png new file mode 100644 index 000000000..b0a3352ff Binary files /dev/null and b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/favicon-32x32.png differ diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/favicon.ico b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/favicon.ico new file mode 100644 index 000000000..8b60bcf06 Binary files /dev/null and b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/favicon.ico differ diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/logo_small.png b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/logo_small.png new file mode 100644 index 000000000..ce3908e3f Binary files /dev/null and b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/logo_small.png differ diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/pet_store_api.png b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/pet_store_api.png new file mode 100644 index 000000000..1192ad8cd Binary files /dev/null and b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/pet_store_api.png differ diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/throbber.gif b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/throbber.gif new file mode 100644 index 000000000..063938892 Binary files /dev/null and b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/throbber.gif differ diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/wordnik_api.png b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/wordnik_api.png new file mode 100644 index 000000000..dc0ddab13 Binary files /dev/null and b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/images/wordnik_api.png differ diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/index.html b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/index.html new file mode 100644 index 000000000..a0c53b0be --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/index.html @@ -0,0 +1,125 @@ + + + + + + + + Swagger UI + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 
+
+ + diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ca.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ca.js new file mode 100644 index 000000000..f8c815aa9 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ca.js @@ -0,0 +1,53 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"Advertència: Obsolet", + "Implementation Notes":"Notes d'implementació", + "Response Class":"Classe de la Resposta", + "Status":"Estatus", + "Parameters":"Paràmetres", + "Parameter":"Paràmetre", + "Value":"Valor", + "Description":"Descripció", + "Parameter Type":"Tipus del Paràmetre", + "Data Type":"Tipus de la Dada", + "Response Messages":"Missatges de la Resposta", + "HTTP Status Code":"Codi d'Estatus HTTP", + "Reason":"Raó", + "Response Model":"Model de la Resposta", + "Request URL":"URL de la Sol·licitud", + "Response Body":"Cos de la Resposta", + "Response Code":"Codi de la Resposta", + "Response Headers":"Capçaleres de la Resposta", + "Hide Response":"Amagar Resposta", + "Try it out!":"Prova-ho!", + "Show/Hide":"Mostrar/Amagar", + "List Operations":"Llista Operacions", + "Expand Operations":"Expandir Operacions", + "Raw":"Cru", + "can't parse JSON. Raw result":"no puc analitzar el JSON. Resultat cru", + "Example Value":"Valor d'Exemple", + "Model Schema":"Esquema del Model", + "Model":"Model", + "apply":"aplicar", + "Username":"Nom d'usuari", + "Password":"Contrasenya", + "Terms of service":"Termes del servei", + "Created by":"Creat per", + "See more at":"Veure més en", + "Contact the developer":"Contactar amb el desenvolupador", + "api version":"versió de la api", + "Response Content Type":"Tipus de Contingut de la Resposta", + "fetching resource":"recollint recurs", + "fetching resource list":"recollins llista de recursos", + "Explore":"Explorant", + "Show Swagger Petstore Example Apis":"Mostrar API d'Exemple Swagger Petstore", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"No es pot llegir del servidor. Potser no teniu la configuració de control d'accés apropiada.", + "Please specify the protocol for":"Si us plau, especifiqueu el protocol per a", + "Can't read swagger JSON from":"No es pot llegir el JSON de swagger des de", + "Finished Loading Resource Information. Rendering Swagger UI":"Finalitzada la càrrega del recurs informatiu. Renderitzant Swagger UI", + "Unable to read api":"No es pot llegir l'api", + "from path":"des de la ruta", + "server returned":"el servidor ha retornat" +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/el.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/el.js new file mode 100644 index 000000000..fcd1ffdd5 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/el.js @@ -0,0 +1,56 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"ΠÏοειδοποίηση: Έχει αποσυÏθεί", + "Implementation Notes":"Σημειώσεις Υλοποίησης", + "Response Class":"ΑπόκÏιση", + "Status":"Κατάσταση", + "Parameters":"ΠαÏάμετÏοι", + "Parameter":"ΠαÏάμετÏος", + "Value":"Τιμή", + "Description":"ΠεÏιγÏαφή", + "Parameter Type":"ΤÏπος ΠαÏαμέτÏου", + "Data Type":"ΤÏπος Δεδομένων", + "Response Messages":"ΜηνÏματα ΑπόκÏισης", + "HTTP Status Code":"Κωδικός Κατάστασης HTTP", + "Reason":"Αιτιολογία", + "Response Model":"Μοντέλο ΑπόκÏισης", + "Request URL":"URL Αιτήματος", + "Response Body":"Σώμα ΑπόκÏισης", + "Response Code":"Κωδικός ΑπόκÏισης", + "Response Headers":"Επικεφαλίδες ΑπόκÏισης", + "Hide Response":"ΑπόκÏυψη ΑπόκÏισης", + "Headers":"Επικεφαλίδες", + "Try it out!":"Δοκιμάστε το!", + "Show/Hide":"Εμφάνιση/ΑπόκÏυψη", + "List Operations":"Λίστα ΛειτουÏγιών", + "Expand Operations":"Ανάπτυξη ΛειτουÏγιών", + "Raw":"ΑκατέÏγαστο", + "can't parse JSON. Raw result":"αδυναμία ανάλυσης JSON. ΑκατέÏγαστο αποτέλεσμα", + "Example Value":"ΠαÏάδειγμα Τιμής", + "Model Schema":"Σχήμα Μοντέλου", + "Model":"Μοντέλο", + "Click to set as parameter value":"Πατήστε για να θέσετε τιμή παÏαμέτÏου", + "apply":"εφαÏμογή", + "Username":"Όνομα χÏήση", + "Password":"Κωδικός Ï€Ïόσβασης", + "Terms of service":"ÎŒÏοι χÏήσης", + "Created by":"ΔημιουÏγήθηκε από", + "See more at":"Δείτε πεÏισσότεÏα στο", + "Contact the developer":"Επικοινωνήστε με τον Ï€ÏογÏαμματιστή", + "api version":"έκδοση api", + "Response Content Type":"ΤÏπος ΠεÏιεχομένου ΑπόκÏισης", + "Parameter content type:":"ΤÏπος πεÏιεχομένου παÏαμέτÏου:", + "fetching resource":"παÏαλαβή πόÏου", + "fetching resource list":"παÏαλαβή λίστας πόÏων", + "Explore":"ΕξεÏεÏνηση", + "Show Swagger Petstore Example Apis":"Εμφάνιση Api Δειγμάτων Petstore του Swagger", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"Αδυναμία ανάγνωσης από τον εξυπηÏετητή. ΜποÏεί να μην έχει κατάλληλες Ïυθμίσεις για access-control-origin.", + "Please specify the protocol for":"ΠαÏακαλώ Ï€ÏοσδιοÏίστε το Ï€Ïωτόκολλο για", + "Can't read swagger JSON from":"Αδυναμία ανάγνωσης swagger JSON από", + "Finished Loading Resource Information. Rendering Swagger UI":"ΟλοκλήÏωση ΦόÏτωσης ΠληÏοφοÏικών ΠόÏου. ΠαÏουσίαση Swagger UI", + "Unable to read api":"Αδυναμία ανάγνωσης api", + "from path":"από το μονοπάτι", + "server returned":"ο εξυπηÏετηÏής επέστÏεψε" +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/en.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/en.js new file mode 100644 index 000000000..918313665 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/en.js @@ -0,0 +1,56 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"Warning: Deprecated", + "Implementation Notes":"Implementation Notes", + "Response Class":"Response Class", + "Status":"Status", + "Parameters":"Parameters", + "Parameter":"Parameter", + "Value":"Value", + "Description":"Description", + "Parameter Type":"Parameter Type", + "Data Type":"Data Type", + "Response Messages":"Response Messages", + "HTTP Status Code":"HTTP Status Code", + "Reason":"Reason", + "Response Model":"Response Model", + "Request URL":"Request URL", + "Response Body":"Response Body", + "Response Code":"Response Code", + "Response Headers":"Response Headers", + "Hide Response":"Hide Response", + "Headers":"Headers", + "Try it out!":"Try it out!", + "Show/Hide":"Show/Hide", + "List Operations":"List Operations", + "Expand Operations":"Expand Operations", + "Raw":"Raw", + "can't parse JSON. Raw result":"can't parse JSON. Raw result", + "Example Value":"Example Value", + "Model Schema":"Model Schema", + "Model":"Model", + "Click to set as parameter value":"Click to set as parameter value", + "apply":"apply", + "Username":"Username", + "Password":"Password", + "Terms of service":"Terms of service", + "Created by":"Created by", + "See more at":"See more at", + "Contact the developer":"Contact the developer", + "api version":"api version", + "Response Content Type":"Response Content Type", + "Parameter content type:":"Parameter content type:", + "fetching resource":"fetching resource", + "fetching resource list":"fetching resource list", + "Explore":"Explore", + "Show Swagger Petstore Example Apis":"Show Swagger Petstore Example Apis", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"Can't read from server. It may not have the appropriate access-control-origin settings.", + "Please specify the protocol for":"Please specify the protocol for", + "Can't read swagger JSON from":"Can't read swagger JSON from", + "Finished Loading Resource Information. Rendering Swagger UI":"Finished Loading Resource Information. Rendering Swagger UI", + "Unable to read api":"Unable to read api", + "from path":"from path", + "server returned":"server returned" +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/es.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/es.js new file mode 100644 index 000000000..13fa015e6 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/es.js @@ -0,0 +1,53 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"Advertencia: Obsoleto", + "Implementation Notes":"Notas de implementación", + "Response Class":"Clase de la Respuesta", + "Status":"Status", + "Parameters":"Parámetros", + "Parameter":"Parámetro", + "Value":"Valor", + "Description":"Descripción", + "Parameter Type":"Tipo del Parámetro", + "Data Type":"Tipo del Dato", + "Response Messages":"Mensajes de la Respuesta", + "HTTP Status Code":"Código de Status HTTP", + "Reason":"Razón", + "Response Model":"Modelo de la Respuesta", + "Request URL":"URL de la Solicitud", + "Response Body":"Cuerpo de la Respuesta", + "Response Code":"Código de la Respuesta", + "Response Headers":"Encabezados de la Respuesta", + "Hide Response":"Ocultar Respuesta", + "Try it out!":"Pruébalo!", + "Show/Hide":"Mostrar/Ocultar", + "List Operations":"Listar Operaciones", + "Expand Operations":"Expandir Operaciones", + "Raw":"Crudo", + "can't parse JSON. Raw result":"no puede parsear el JSON. Resultado crudo", + "Example Value":"Valor de Ejemplo", + "Model Schema":"Esquema del Modelo", + "Model":"Modelo", + "apply":"aplicar", + "Username":"Nombre de usuario", + "Password":"Contraseña", + "Terms of service":"Términos de Servicio", + "Created by":"Creado por", + "See more at":"Ver más en", + "Contact the developer":"Contactar al desarrollador", + "api version":"versión de la api", + "Response Content Type":"Tipo de Contenido (Content Type) de la Respuesta", + "fetching resource":"buscando recurso", + "fetching resource list":"buscando lista del recurso", + "Explore":"Explorar", + "Show Swagger Petstore Example Apis":"Mostrar Api Ejemplo de Swagger Petstore", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"No se puede leer del servidor. Tal vez no tiene la configuración de control de acceso de origen (access-control-origin) apropiado.", + "Please specify the protocol for":"Por favor, especificar el protocola para", + "Can't read swagger JSON from":"No se puede leer el JSON de swagger desde", + "Finished Loading Resource Information. Rendering Swagger UI":"Finalizada la carga del recurso de Información. Mostrando Swagger UI", + "Unable to read api":"No se puede leer la api", + "from path":"desde ruta", + "server returned":"el servidor retornó" +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/fr.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/fr.js new file mode 100644 index 000000000..388dff14b --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/fr.js @@ -0,0 +1,54 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"Avertissement : Obsolète", + "Implementation Notes":"Notes d'implémentation", + "Response Class":"Classe de la réponse", + "Status":"Statut", + "Parameters":"Paramètres", + "Parameter":"Paramètre", + "Value":"Valeur", + "Description":"Description", + "Parameter Type":"Type du paramètre", + "Data Type":"Type de données", + "Response Messages":"Messages de la réponse", + "HTTP Status Code":"Code de statut HTTP", + "Reason":"Raison", + "Response Model":"Modèle de réponse", + "Request URL":"URL appelée", + "Response Body":"Corps de la réponse", + "Response Code":"Code de la réponse", + "Response Headers":"En-têtes de la réponse", + "Hide Response":"Cacher la réponse", + "Headers":"En-têtes", + "Try it out!":"Testez !", + "Show/Hide":"Afficher/Masquer", + "List Operations":"Liste des opérations", + "Expand Operations":"Développer les opérations", + "Raw":"Brut", + "can't parse JSON. Raw result":"impossible de décoder le JSON. Résultat brut", + "Example Value":"Exemple la valeur", + "Model Schema":"Définition du modèle", + "Model":"Modèle", + "apply":"appliquer", + "Username":"Nom d'utilisateur", + "Password":"Mot de passe", + "Terms of service":"Conditions de service", + "Created by":"Créé par", + "See more at":"Voir plus sur", + "Contact the developer":"Contacter le développeur", + "api version":"version de l'api", + "Response Content Type":"Content Type de la réponse", + "fetching resource":"récupération de la ressource", + "fetching resource list":"récupération de la liste de ressources", + "Explore":"Explorer", + "Show Swagger Petstore Example Apis":"Montrer les Apis de l'exemple Petstore de Swagger", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"Impossible de lire à partir du serveur. Il se peut que les réglages access-control-origin ne soient pas appropriés.", + "Please specify the protocol for":"Veuillez spécifier un protocole pour", + "Can't read swagger JSON from":"Impossible de lire le JSON swagger à partir de", + "Finished Loading Resource Information. Rendering Swagger UI":"Chargement des informations terminé. Affichage de Swagger UI", + "Unable to read api":"Impossible de lire l'api", + "from path":"à partir du chemin", + "server returned":"réponse du serveur" +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/geo.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/geo.js new file mode 100644 index 000000000..609c20d9c --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/geo.js @@ -0,0 +1,56 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"ყურáƒáƒ“ღებáƒ: áƒáƒ¦áƒáƒ  გáƒáƒ›áƒáƒ˜áƒ§áƒ”ნებáƒ", + "Implementation Notes":"იმპლემენტáƒáƒªáƒ˜áƒ˜áƒ¡ áƒáƒ¦áƒ¬áƒ”რáƒ", + "Response Class":"რესპáƒáƒœáƒ¡ კლáƒáƒ¡áƒ˜", + "Status":"სტáƒáƒ¢áƒ£áƒ¡áƒ˜", + "Parameters":"პáƒáƒ áƒáƒ›áƒ”ტრები", + "Parameter":"პáƒáƒ áƒáƒ›áƒ”ტრი", + "Value":"მნიშვნელáƒáƒ‘áƒ", + "Description":"áƒáƒ¦áƒ¬áƒ”რáƒ", + "Parameter Type":"პáƒáƒ áƒáƒ›áƒ”ტრის ტიპი", + "Data Type":"მáƒáƒœáƒáƒªáƒ”მის ტიპი", + "Response Messages":"პáƒáƒ¡áƒ£áƒ®áƒ˜", + "HTTP Status Code":"HTTP სტáƒáƒ¢áƒ£áƒ¡áƒ˜", + "Reason":"მიზეზი", + "Response Model":"რესპáƒáƒœáƒ¡ მáƒáƒ“ელი", + "Request URL":"მáƒáƒ—ხáƒáƒ•áƒœáƒ˜áƒ¡ URL", + "Response Body":"პáƒáƒ¡áƒ£áƒ®áƒ˜áƒ¡ სხეული", + "Response Code":"პáƒáƒ¡áƒ£áƒ®áƒ˜áƒ¡ კáƒáƒ“ი", + "Response Headers":"პáƒáƒ¡áƒ£áƒ®áƒ˜áƒ¡ ჰედერები", + "Hide Response":"დáƒáƒ›áƒáƒšáƒ” პáƒáƒ¡áƒ£áƒ®áƒ˜", + "Headers":"ჰედერები", + "Try it out!":"ცáƒáƒ“ე !", + "Show/Hide":"გáƒáƒ›áƒáƒ©áƒ”ნáƒ/დáƒáƒ›áƒáƒšáƒ•áƒ", + "List Operations":"áƒáƒžáƒ”რáƒáƒªáƒ˜áƒ”ბის სიáƒ", + "Expand Operations":"áƒáƒžáƒ”რáƒáƒªáƒ˜áƒ”ბი ვრცლáƒáƒ“", + "Raw":"ნედლი", + "can't parse JSON. Raw result":"JSON-ის დáƒáƒ›áƒ£áƒ¨áƒáƒ•áƒ”ბრვერ მáƒáƒ®áƒ”რხდáƒ. ნედლი პáƒáƒ¡áƒ£áƒ®áƒ˜", + "Example Value":"მáƒáƒ’áƒáƒšáƒ˜áƒ—ი", + "Model Schema":"მáƒáƒ“ელის სტრუქტურáƒ", + "Model":"მáƒáƒ“ელი", + "Click to set as parameter value":"პáƒáƒ áƒáƒ›áƒ”ტრისთვის მნიშვნელáƒáƒ‘ის მისáƒáƒœáƒ˜áƒ­áƒ”ბლáƒáƒ“, დáƒáƒáƒ™áƒšáƒ˜áƒ™áƒ”", + "apply":"გáƒáƒ›áƒáƒ§áƒ”ნებáƒ", + "Username":"მáƒáƒ®áƒ›áƒáƒ áƒ”ბელი", + "Password":"პáƒáƒ áƒáƒšáƒ˜", + "Terms of service":"მáƒáƒ›áƒ¡áƒáƒ®áƒ£áƒ áƒ”ბის პირáƒáƒ‘ები", + "Created by":"შექმნáƒ", + "See more at":"ნáƒáƒ®áƒ” ვრცლáƒáƒ“", + "Contact the developer":"დáƒáƒ£áƒ™áƒáƒ•áƒ¨áƒ˜áƒ áƒ“ი დეველáƒáƒžáƒ”რს", + "api version":"api ვერსიáƒ", + "Response Content Type":"პáƒáƒ¡áƒ£áƒ®áƒ˜áƒ¡ კáƒáƒœáƒ¢áƒ”ნტის ტიპი", + "Parameter content type:":"პáƒáƒ áƒáƒ›áƒ”ტრის კáƒáƒœáƒ¢áƒ”ნტის ტიპი:", + "fetching resource":"რესურსების მიღებáƒ", + "fetching resource list":"რესურსების სიის მიღებáƒ", + "Explore":"ნáƒáƒ®áƒ•áƒ", + "Show Swagger Petstore Example Apis":"ნáƒáƒ®áƒ” Swagger Petstore სáƒáƒ›áƒáƒ’áƒáƒšáƒ˜áƒ—რApi", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"სერვერთáƒáƒœ დáƒáƒ™áƒáƒ•áƒ¨áƒ˜áƒ áƒ”ბრვერ ხერხდებáƒ. შეáƒáƒ›áƒáƒ¬áƒ›áƒ”თ access-control-origin.", + "Please specify the protocol for":"მიუთითეთ პრáƒáƒ¢áƒáƒ™áƒáƒšáƒ˜", + "Can't read swagger JSON from":"swagger JSON წáƒáƒ™áƒ˜áƒ—ხვრვერ მáƒáƒ®áƒ”რხდáƒ", + "Finished Loading Resource Information. Rendering Swagger UI":"რესურსების ჩáƒáƒ¢áƒ•áƒ˜áƒ áƒ—ვრსრულდებáƒ. Swagger UI რენდერდებáƒ", + "Unable to read api":"api წáƒáƒ™áƒ˜áƒ—ხვრვერ მáƒáƒ®áƒ”რხდáƒ", + "from path":"მისáƒáƒ›áƒáƒ áƒ—იდáƒáƒœ", + "server returned":"სერვერმრდáƒáƒáƒ‘რუნáƒ" +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/it.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/it.js new file mode 100644 index 000000000..8529c2a90 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/it.js @@ -0,0 +1,52 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"Attenzione: Deprecato", + "Implementation Notes":"Note di implementazione", + "Response Class":"Classe della risposta", + "Status":"Stato", + "Parameters":"Parametri", + "Parameter":"Parametro", + "Value":"Valore", + "Description":"Descrizione", + "Parameter Type":"Tipo di parametro", + "Data Type":"Tipo di dato", + "Response Messages":"Messaggi della risposta", + "HTTP Status Code":"Codice stato HTTP", + "Reason":"Motivo", + "Response Model":"Modello di risposta", + "Request URL":"URL della richiesta", + "Response Body":"Corpo della risposta", + "Response Code":"Oggetto della risposta", + "Response Headers":"Intestazioni della risposta", + "Hide Response":"Nascondi risposta", + "Try it out!":"Provalo!", + "Show/Hide":"Mostra/Nascondi", + "List Operations":"Mostra operazioni", + "Expand Operations":"Espandi operazioni", + "Raw":"Grezzo (raw)", + "can't parse JSON. Raw result":"non è possibile parsare il JSON. Risultato grezzo (raw).", + "Model Schema":"Schema del modello", + "Model":"Modello", + "apply":"applica", + "Username":"Nome utente", + "Password":"Password", + "Terms of service":"Condizioni del servizio", + "Created by":"Creato da", + "See more at":"Informazioni aggiuntive:", + "Contact the developer":"Contatta lo sviluppatore", + "api version":"versione api", + "Response Content Type":"Tipo di contenuto (content type) della risposta", + "fetching resource":"recuperando la risorsa", + "fetching resource list":"recuperando lista risorse", + "Explore":"Esplora", + "Show Swagger Petstore Example Apis":"Mostra le api di esempio di Swagger Petstore", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"Non è possibile leggere dal server. Potrebbe non avere le impostazioni di controllo accesso origine (access-control-origin) appropriate.", + "Please specify the protocol for":"Si prega di specificare il protocollo per", + "Can't read swagger JSON from":"Impossibile leggere JSON swagger da:", + "Finished Loading Resource Information. Rendering Swagger UI":"Lettura informazioni risorse termianta. Swagger UI viene mostrata", + "Unable to read api":"Impossibile leggere la api", + "from path":"da cartella", + "server returned":"il server ha restituito" +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ja.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ja.js new file mode 100644 index 000000000..1cbeb374a --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ja.js @@ -0,0 +1,56 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"警告: 廃止予定", + "Implementation Notes":"実装メモ", + "Response Class":"レスãƒãƒ³ã‚¹ã‚¯ãƒ©ã‚¹", + "Status":"ステータス", + "Parameters":"パラメータ群", + "Parameter":"パラメータ", + "Value":"値", + "Description":"説明", + "Parameter Type":"パラメータタイプ", + "Data Type":"データタイプ", + "Response Messages":"レスãƒãƒ³ã‚¹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸", + "HTTP Status Code":"HTTPステータスコード", + "Reason":"ç†ç”±", + "Response Model":"レスãƒãƒ³ã‚¹ãƒ¢ãƒ‡ãƒ«", + "Request URL":"リクエストURL", + "Response Body":"レスãƒãƒ³ã‚¹ãƒœãƒ‡ã‚£", + "Response Code":"レスãƒãƒ³ã‚¹ã‚³ãƒ¼ãƒ‰", + "Response Headers":"レスãƒãƒ³ã‚¹ãƒ˜ãƒƒãƒ€", + "Hide Response":"レスãƒãƒ³ã‚¹ã‚’éš ã™", + "Headers":"ヘッダ", + "Try it out!":"実際ã«å®Ÿè¡Œ!", + "Show/Hide":"表示/éžè¡¨ç¤º", + "List Operations":"æ“作一覧", + "Expand Operations":"æ“作ã®å±•é–‹", + "Raw":"未加工", + "can't parse JSON. Raw result":"JSONã¸è§£é‡ˆã§ãã¾ã›ã‚“. 未加工ã®çµæžœ", + "Example Value":"値ã®ä¾‹", + "Model Schema":"モデルスキーマ", + "Model":"モデル", + "Click to set as parameter value":"パラメータ値ã¨è¨­å®šã™ã‚‹ã«ã¯ã‚¯ãƒªãƒƒã‚¯", + "apply":"実行", + "Username":"ユーザå", + "Password":"パスワード", + "Terms of service":"サービス利用è¦ç´„", + "Created by":"Created by", + "See more at":"詳細を見る", + "Contact the developer":"開発者ã«é€£çµ¡", + "api version":"APIãƒãƒ¼ã‚¸ãƒ§ãƒ³", + "Response Content Type":"レスãƒãƒ³ã‚¹ コンテンツタイプ", + "Parameter content type:":"パラメータコンテンツタイプ:", + "fetching resource":"リソースã®å–å¾—", + "fetching resource list":"リソース一覧ã®å–å¾—", + "Explore":"調査", + "Show Swagger Petstore Example Apis":"SwaggerペットストアAPIã®è¡¨ç¤º", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"サーãƒã‹ã‚‰èª­ã¿è¾¼ã‚ã¾ã›ã‚“. é©åˆ‡ãªaccess-control-origin設定をæŒã£ã¦ã„ãªã„å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™.", + "Please specify the protocol for":"プロトコルを指定ã—ã¦ãã ã•ã„", + "Can't read swagger JSON from":"次ã‹ã‚‰swagger JSONを読ã¿è¾¼ã‚ã¾ã›ã‚“", + "Finished Loading Resource Information. Rendering Swagger UI":"リソース情報ã®èª­ã¿è¾¼ã¿ãŒå®Œäº†ã—ã¾ã—ãŸ. Swagger UIã‚’æç”»ã—ã¦ã„ã¾ã™", + "Unable to read api":"APIを読ã¿è¾¼ã‚ã¾ã›ã‚“", + "from path":"次ã®ãƒ‘スã‹ã‚‰", + "server returned":"サーãƒã‹ã‚‰ã®è¿”ç­”" +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ko-kr.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ko-kr.js new file mode 100644 index 000000000..03c7626d7 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ko-kr.js @@ -0,0 +1,53 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"경고:í기예정ë¨", + "Implementation Notes":"구현 노트", + "Response Class":"ì‘답 í´ëž˜ìŠ¤", + "Status":"ìƒíƒœ", + "Parameters":"매개변수들", + "Parameter":"매개변수", + "Value":"ê°’", + "Description":"설명", + "Parameter Type":"매개변수 타입", + "Data Type":"ë°ì´í„° 타입", + "Response Messages":"ì‘답 메세지", + "HTTP Status Code":"HTTP ìƒíƒœ 코드", + "Reason":"ì›ì¸", + "Response Model":"ì‘답 모ë¸", + "Request URL":"요청 URL", + "Response Body":"ì‘답 본문", + "Response Code":"ì‘답 코드", + "Response Headers":"ì‘답 í—¤ë”", + "Hide Response":"ì‘답 숨기기", + "Headers":"í—¤ë”", + "Try it out!":"ì¨ë³´ê¸°ï¼", + "Show/Hide":"ë³´ì´ê¸°/숨기기", + "List Operations":"ëª©ë¡ ìž‘ì—…", + "Expand Operations":"ì „ê°œ ìž‘ì—…", + "Raw":"ì›ë³¸", + "can't parse JSON. Raw result":"JSONì„ íŒŒì‹±í• ìˆ˜ ì—†ìŒ. ì›ë³¸ê²°ê³¼:", + "Model Schema":"ëª¨ë¸ ìŠ¤í‚¤ë§ˆ", + "Model":"모ë¸", + "apply":"ì ìš©", + "Username":"ì‚¬ìš©ìž ì´ë¦„", + "Password":"암호", + "Terms of service":"ì´ìš©ì•½ê´€", + "Created by":"작성ìž", + "See more at":"추가정보:", + "Contact the developer":"개발ìžì—게 문ì˜", + "api version":"api버전", + "Response Content Type":"ì‘답Content Type", + "fetching resource":"리소스 가져오기", + "fetching resource list":"리소스 ëª©ë¡ ê°€ì ¸ì˜¤ê¸°", + "Explore":"íƒìƒ‰", + "Show Swagger Petstore Example Apis":"Swagger Petstore 예제 보기", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"서버로부터 ì½ì–´ë“¤ì¼ìˆ˜ 없습니다. access-control-origin ì„¤ì •ì´ ì˜¬ë°”ë¥´ì§€ ì•Šì„수 있습니다.", + "Please specify the protocol for":"다ìŒì„ 위한 í”„ë¡œí† ì½œì„ ì •í•˜ì„¸ìš”", + "Can't read swagger JSON from":"swagger JSON ì„ ë‹¤ìŒìœ¼ë¡œ 부터 ì½ì„수 없습니다", + "Finished Loading Resource Information. Rendering Swagger UI":"리소스 ì •ë³´ 불러오기 완료. Swagger UI ëžœë”ë§", + "Unable to read api":"api를 ì½ì„ 수 없습니다.", + "from path":"ë‹¤ìŒ ê²½ë¡œë¡œ 부터", + "server returned":"서버 ì‘답함." +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/pl.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/pl.js new file mode 100644 index 000000000..ce41e9179 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/pl.js @@ -0,0 +1,53 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"Uwaga: Wycofane", + "Implementation Notes":"Uwagi Implementacji", + "Response Class":"Klasa Odpowiedzi", + "Status":"Status", + "Parameters":"Parametry", + "Parameter":"Parametr", + "Value":"Wartość", + "Description":"Opis", + "Parameter Type":"Typ Parametru", + "Data Type":"Typ Danych", + "Response Messages":"WiadomoÅ›ci Odpowiedzi", + "HTTP Status Code":"Kod Statusu HTTP", + "Reason":"Przyczyna", + "Response Model":"Model Odpowiedzi", + "Request URL":"URL WywoÅ‚ania", + "Response Body":"Treść Odpowiedzi", + "Response Code":"Kod Odpowiedzi", + "Response Headers":"Nagłówki Odpowiedzi", + "Hide Response":"Ukryj Odpowiedź", + "Headers":"Nagłówki", + "Try it out!":"Wypróbuj!", + "Show/Hide":"Pokaż/Ukryj", + "List Operations":"Lista Operacji", + "Expand Operations":"RozwiÅ„ Operacje", + "Raw":"Nieprzetworzone", + "can't parse JSON. Raw result":"nie można przetworzyć pliku JSON. Nieprzetworzone dane", + "Model Schema":"Schemat Modelu", + "Model":"Model", + "apply":"użyj", + "Username":"Nazwa użytkownika", + "Password":"HasÅ‚o", + "Terms of service":"Warunki używania", + "Created by":"Utworzone przez", + "See more at":"Zobacz wiÄ™cej na", + "Contact the developer":"Kontakt z deweloperem", + "api version":"wersja api", + "Response Content Type":"Typ Zasobu Odpowiedzi", + "fetching resource":"Å‚adowanie zasobu", + "fetching resource list":"Å‚adowanie listy zasobów", + "Explore":"Eksploruj", + "Show Swagger Petstore Example Apis":"Pokaż PrzykÅ‚adowe Api Swagger Petstore", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"Brak poÅ‚Ä…czenia z serwerem. Może on nie mieć odpowiednich ustawieÅ„ access-control-origin.", + "Please specify the protocol for":"ProszÄ™ podać protokół dla", + "Can't read swagger JSON from":"Nie można odczytać swagger JSON z", + "Finished Loading Resource Information. Rendering Swagger UI":"UkoÅ„czono Åadowanie Informacji o Zasobie. Renderowanie Swagger UI", + "Unable to read api":"Nie można odczytać api", + "from path":"ze Å›cieżki", + "server returned":"serwer zwróciÅ‚" +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/pt.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/pt.js new file mode 100644 index 000000000..f2e7c13d4 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/pt.js @@ -0,0 +1,53 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"Aviso: Depreciado", + "Implementation Notes":"Notas de Implementação", + "Response Class":"Classe de resposta", + "Status":"Status", + "Parameters":"Parâmetros", + "Parameter":"Parâmetro", + "Value":"Valor", + "Description":"Descrição", + "Parameter Type":"Tipo de parâmetro", + "Data Type":"Tipo de dados", + "Response Messages":"Mensagens de resposta", + "HTTP Status Code":"Código de status HTTP", + "Reason":"Razão", + "Response Model":"Modelo resposta", + "Request URL":"URL requisição", + "Response Body":"Corpo da resposta", + "Response Code":"Código da resposta", + "Response Headers":"Cabeçalho da resposta", + "Headers":"Cabeçalhos", + "Hide Response":"Esconder resposta", + "Try it out!":"Tente agora!", + "Show/Hide":"Mostrar/Esconder", + "List Operations":"Listar operações", + "Expand Operations":"Expandir operações", + "Raw":"Cru", + "can't parse JSON. Raw result":"Falha ao analisar JSON. Resulto cru", + "Model Schema":"Modelo esquema", + "Model":"Modelo", + "apply":"Aplicar", + "Username":"Usuário", + "Password":"Senha", + "Terms of service":"Termos do serviço", + "Created by":"Criado por", + "See more at":"Veja mais em", + "Contact the developer":"Contate o desenvolvedor", + "api version":"Versão api", + "Response Content Type":"Tipo de conteúdo da resposta", + "fetching resource":"busca recurso", + "fetching resource list":"buscando lista de recursos", + "Explore":"Explorar", + "Show Swagger Petstore Example Apis":"Show Swagger Petstore Example Apis", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"Não é possível ler do servidor. Pode não ter as apropriadas configurações access-control-origin", + "Please specify the protocol for":"Por favor especifique o protocolo", + "Can't read swagger JSON from":"Não é possível ler o JSON Swagger de", + "Finished Loading Resource Information. Rendering Swagger UI":"Carregar informação de recurso finalizada. Renderizando Swagger UI", + "Unable to read api":"Não foi possível ler api", + "from path":"do caminho", + "server returned":"servidor retornou" +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ru.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ru.js new file mode 100644 index 000000000..592744e95 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/ru.js @@ -0,0 +1,56 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"Предупреждение: УÑтарело", + "Implementation Notes":"Заметки", + "Response Class":"Пример ответа", + "Status":"СтатуÑ", + "Parameters":"Параметры", + "Parameter":"Параметр", + "Value":"Значение", + "Description":"ОпиÑание", + "Parameter Type":"Тип параметра", + "Data Type":"Тип данных", + "HTTP Status Code":"HTTP код", + "Reason":"Причина", + "Response Model":"Структура ответа", + "Request URL":"URL запроÑа", + "Response Body":"Тело ответа", + "Response Code":"HTTP код ответа", + "Response Headers":"Заголовки ответа", + "Hide Response":"СпрÑтать ответ", + "Headers":"Заголовки", + "Response Messages":"Что может прийти в ответ", + "Try it out!":"Попробовать!", + "Show/Hide":"Показать/Скрыть", + "List Operations":"Операции кратко", + "Expand Operations":"Операции подробно", + "Raw":"Ð’ Ñыром виде", + "can't parse JSON. Raw result":"Ðе удаетÑÑ Ñ€Ð°ÑпарÑить ответ:", + "Example Value":"Пример", + "Model Schema":"Структура", + "Model":"ОпиÑание", + "Click to set as parameter value":"Ðажмите, чтобы иÑпльзовать в качеÑтве Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°", + "apply":"применить", + "Username":"Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ", + "Password":"Пароль", + "Terms of service":"УÑÐ»Ð¾Ð²Ð¸Ñ Ð¸ÑпользованиÑ", + "Created by":"Разработано", + "See more at":"Еще тут", + "Contact the developer":"СвÑзатьÑÑ Ñ Ñ€Ð°Ð·Ñ€Ð°Ð±Ð¾Ñ‚Ñ‡Ð¸ÐºÐ¾Ð¼", + "api version":"ВерÑÐ¸Ñ API", + "Response Content Type":"Content Type ответа", + "Parameter content type:":"Content Type параметра:", + "fetching resource":"Получение реÑурÑа", + "fetching resource list":"Получение реÑурÑов", + "Explore":"Показать", + "Show Swagger Petstore Example Apis":"Показать примеры ÐПИ", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ ответ от Ñервера. Возможно, проблема Ñ Ð½Ð°Ñтройками доÑтупа", + "Please specify the protocol for":"ПожалуйÑта, укажите протокол длÑ", + "Can't read swagger JSON from":"Ðе получаетÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚ÑŒ swagger json из", + "Finished Loading Resource Information. Rendering Swagger UI":"Загрузка информации о реÑурÑах завершена. Рендерим", + "Unable to read api":"Ðе удалоÑÑŒ прочитать api", + "from path":"по адреÑу", + "server returned":"Ñервер Ñказал" +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/tr.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/tr.js new file mode 100644 index 000000000..16426a9c3 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/tr.js @@ -0,0 +1,53 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"Uyarı: Deprecated", + "Implementation Notes":"GerçekleÅŸtirim Notları", + "Response Class":"Dönen Sınıf", + "Status":"Statü", + "Parameters":"Parametreler", + "Parameter":"Parametre", + "Value":"DeÄŸer", + "Description":"Açıklama", + "Parameter Type":"Parametre Tipi", + "Data Type":"Veri Tipi", + "Response Messages":"Dönüş Mesajı", + "HTTP Status Code":"HTTP Statü Kodu", + "Reason":"Gerekçe", + "Response Model":"Dönüş Modeli", + "Request URL":"Ä°stek URL", + "Response Body":"Dönüş İçeriÄŸi", + "Response Code":"Dönüş Kodu", + "Response Headers":"Dönüş Ãœst Bilgileri", + "Hide Response":"Dönüşü Gizle", + "Headers":"Ãœst Bilgiler", + "Try it out!":"Dene!", + "Show/Hide":"Göster/Gizle", + "List Operations":"Operasyonları Listele", + "Expand Operations":"Operasyonları Aç", + "Raw":"Ham", + "can't parse JSON. Raw result":"JSON çözümlenemiyor. Ham sonuç", + "Model Schema":"Model Åžema", + "Model":"Model", + "apply":"uygula", + "Username":"Kullanıcı Adı", + "Password":"Parola", + "Terms of service":"Servis ÅŸartları", + "Created by":"OluÅŸturan", + "See more at":"Daha fazlası için", + "Contact the developer":"GeliÅŸtirici ile Ä°letiÅŸime Geçin", + "api version":"api versiyon", + "Response Content Type":"Dönüş İçerik Tipi", + "fetching resource":"kaynak getiriliyor", + "fetching resource list":"kaynak listesi getiriliyor", + "Explore":"KeÅŸfet", + "Show Swagger Petstore Example Apis":"Swagger Petstore Örnek Api'yi Gör", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"Sunucudan okuma yapılamıyor. Sunucu access-control-origin ayarlarınızı kontrol edin.", + "Please specify the protocol for":"Lütfen istenen adres için protokol belirtiniz", + "Can't read swagger JSON from":"Swagger JSON bu kaynaktan okunamıyor", + "Finished Loading Resource Information. Rendering Swagger UI":"Kaynak baglantısı tamamlandı. Swagger UI gösterime hazırlanıyor", + "Unable to read api":"api okunamadı", + "from path":"yoldan", + "server returned":"sunucuya dönüldü" +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/translator.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/translator.js new file mode 100644 index 000000000..ffb879f9a --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/translator.js @@ -0,0 +1,39 @@ +'use strict'; + +/** + * Translator for documentation pages. + * + * To enable translation you should include one of language-files in your index.html + * after . + * For example - + * + * If you wish to translate some new texts you should do two things: + * 1. Add a new phrase pair ("New Phrase": "New Translation") into your language file (for example lang/ru.js). It will be great if you add it in other language files too. + * 2. Mark that text it templates this way New Phrase or . + * The main thing here is attribute data-sw-translate. Only inner html, title-attribute and value-attribute are going to translate. + * + */ +window.SwaggerTranslator = { + + _words:[], + + translate: function(sel) { + var $this = this; + sel = sel || '[data-sw-translate]'; + + $(sel).each(function() { + $(this).html($this._tryTranslate($(this).html())); + + $(this).val($this._tryTranslate($(this).val())); + $(this).attr('title', $this._tryTranslate($(this).attr('title'))); + }); + }, + + _tryTranslate: function(word) { + return this._words[$.trim(word)] !== undefined ? this._words[$.trim(word)] : word; + }, + + learn: function(wordsMap) { + this._words = wordsMap; + } +}; diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/zh-cn.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/zh-cn.js new file mode 100644 index 000000000..3af61ad6e --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lang/zh-cn.js @@ -0,0 +1,56 @@ +'use strict'; + +/* jshint quotmark: double */ +window.SwaggerTranslator.learn({ + "Warning: Deprecated":"警告:已过时", + "Implementation Notes":"实现备注", + "Response Class":"å“应类", + "Status":"状æ€", + "Parameters":"å‚æ•°", + "Parameter":"å‚æ•°", + "Value":"值", + "Description":"æè¿°", + "Parameter Type":"å‚数类型", + "Data Type":"æ•°æ®ç±»åž‹", + "Response Messages":"å“应消æ¯", + "HTTP Status Code":"HTTP状æ€ç ", + "Reason":"原因", + "Response Model":"å“应模型", + "Request URL":"请求URL", + "Response Body":"å“应体", + "Response Code":"å“应ç ", + "Response Headers":"å“应头", + "Hide Response":"éšè—å“应", + "Headers":"头", + "Try it out!":"试一下ï¼", + "Show/Hide":"显示/éšè—", + "List Operations":"显示æ“作", + "Expand Operations":"展开æ“作", + "Raw":"原始", + "can't parse JSON. Raw result":"无法解æžJSON. 原始结果", + "Example Value":"示例", + "Click to set as parameter value":"点击设置å‚æ•°", + "Model Schema":"模型架构", + "Model":"模型", + "apply":"应用", + "Username":"用户å", + "Password":"密ç ", + "Terms of service":"æœåŠ¡æ¡æ¬¾", + "Created by":"创建者", + "See more at":"查看更多:", + "Contact the developer":"è”系开å‘者", + "api version":"api版本", + "Response Content Type":"å“应Content Type", + "Parameter content type:":"å‚数类型:", + "fetching resource":"正在获å–资æº", + "fetching resource list":"正在获å–资æºåˆ—表", + "Explore":"æµè§ˆ", + "Show Swagger Petstore Example Apis":"显示 Swagger Petstore 示例 Apis", + "Can't read from server. It may not have the appropriate access-control-origin settings.":"无法从æœåŠ¡å™¨è¯»å–。å¯èƒ½æ²¡æœ‰æ­£ç¡®è®¾ç½®access-control-origin。", + "Please specify the protocol for":"请指定å议:", + "Can't read swagger JSON from":"无法读å–swagger JSON于", + "Finished Loading Resource Information. Rendering Swagger UI":"已加载资æºä¿¡æ¯ã€‚正在渲染Swagger UI", + "Unable to read api":"无法读å–api", + "from path":"从路径", + "server returned":"æœåŠ¡å™¨è¿”回" +}); diff --git a/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/backbone-min.js b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/backbone-min.js new file mode 100644 index 000000000..8eff02e98 --- /dev/null +++ b/ms/controllerblueprints/application/src/main/resources/swagger-ui/dist/lib/backbone-min.js @@ -0,0 +1 @@ +!function(t,e){if("function"==typeof define&&define.amd)define(["underscore","jquery","exports"],function(i,n,s){t.Backbone=e(t,s,i,n)});else if("undefined"!=typeof exports){var i=require("underscore");e(t,exports,i)}else t.Backbone=e(t,{},t._,t.jQuery||t.Zepto||t.ender||t.$)}(this,function(t,e,i,n){var s=t.Backbone,r=[],a=(r.push,r.slice);r.splice;e.VERSION="1.1.2",e.$=n,e.noConflict=function(){return t.Backbone=s,this},e.emulateHTTP=!1,e.emulateJSON=!1;var o=e.Events={on:function(t,e,i){if(!c(this,"on",t,[e,i])||!e)return this;this._events||(this._events={});var n=this._events[t]||(this._events[t]=[]);return n.push({callback:e,context:i,ctx:i||this}),this},once:function(t,e,n){if(!c(this,"once",t,[e,n])||!e)return this;var s=this,r=i.once(function(){s.off(t,r),e.apply(this,arguments)});return r._callback=e,this.on(t,r,n)},off:function(t,e,n){var s,r,a,o,h,u,l,d;if(!this._events||!c(this,"off",t,[e,n]))return this;if(!t&&!e&&!n)return this._events=void 0,this;for(o=t?[t]:i.keys(this._events),h=0,u=o.length;h").attr(t);this.setElement(n,!1)}}}),e.sync=function(t,n,s){var r=E[t];i.defaults(s||(s={}),{emulateHTTP:e.emulateHTTP,emulateJSON:e.emulateJSON});var a={type:r,dataType:"json"};if(s.url||(a.url=i.result(n,"url")||j()),null!=s.data||!n||"create"!==t&&"update"!==t&&"patch"!==t||(a.contentType="application/json",a.data=JSON.stringify(s.attrs||n.toJSON(s))),s.emulateJSON&&(a.contentType="application/x-www-form-urlencoded",a.data=a.data?{model:a.data}:{}),s.emulateHTTP&&("PUT"===r||"DELETE"===r||"PATCH"===r)){a.type="POST",s.emulateJSON&&(a.data._method=r);var o=s.beforeSend;s.beforeSend=function(t){if(t.setRequestHeader("X-HTTP-Method-Override",r),o)return o.apply(this,arguments)}}"GET"===a.type||s.emulateJSON||(a.processData=!1),"PATCH"===a.type&&x&&(a.xhr=function(){return new ActiveXObject("Microsoft.XMLHTTP")});var h=s.xhr=e.ajax(i.extend(a,s));return n.trigger("request",n,h,s),h};var x=!("undefined"==typeof window||!window.ActiveXObject||window.XMLHttpRequest&&(new XMLHttpRequest).dispatchEvent),E={create:"POST",update:"PUT",patch:"PATCH","delete":"DELETE",read:"GET"};e.ajax=function(){return e.$.ajax.apply(e.$,arguments)};var k=e.Router=function(t){t||(t={}),t.routes&&(this.routes=t.routes),this._bindRoutes(),this.initialize.apply(this,arguments)},T=/\((.*?)\)/g,$=/(\(\?)?:\w+/g,S=/\*\w+/g,H=/[\-{}\[\]+?.,\\\^$|#\s]/g;i.extend(k.prototype,o,{initialize:function(){},route:function(t,n,s){i.isRegExp(t)||(t=this._routeToRegExp(t)),i.isFunction(n)&&(s=n,n=""),s||(s=this[n]);var r=this;return e.history.route(t,function(i){var a=r._extractParameters(t,i);r.execute(s,a),r.trigger.apply(r,["route:"+n].concat(a)),r.trigger("route",n,a),e.history.trigger("route",r,n,a)}),this},execute:function(t,e){t&&t.apply(this,e)},navigate:function(t,i){return e.history.navigate(t,i),this},_bindRoutes:function(){if(this.routes){this.routes=i.result(this,"routes");for(var t,e=i.keys(this.routes);null!=(t=e.pop());)this.route(t,this.routes[t])}},_routeToRegExp:function(t){return t=t.replace(H,"\\$&").replace(T,"(?:$1)?").replace($,function(t,e){return e?t:"([^/?]+)"}).replace(S,"([^?]*?)"),new RegExp("^"+t+"(?:\\?([\\s\\S]*))?$")},_extractParameters:function(t,e){var n=t.exec(e).slice(1);return i.map(n,function(t,e){return e===n.length-1?t||null:t?decodeURIComponent(t):null})}});var A=e.History=function(){this.handlers=[],i.bindAll(this,"checkUrl"),"undefined"!=typeof window&&(this.location=window.location,this.history=window.history)},I=/^[#\/]|\s+$/g,N=/^\/+|\/+$/g,R=/msie [\w.]+/,O=/\/$/,P=/#.*$/;A.started=!1,i.extend(A.prototype,o,{interval:50,atRoot:function(){return this.location.pathname.replace(/[^\/]$/,"$&/")===this.root},getHash:function(t){var e=(t||this).location.href.match(/#(.*)$/);return e?e[1]:""},getFragment:function(t,e){if(null==t)if(this._hasPushState||!this._wantsHashChange||e){t=decodeURI(this.location.pathname+this.location.search);var i=this.root.replace(O,"");t.indexOf(i)||(t=t.slice(i.length))}else t=this.getHash();return t.replace(I,"")},start:function(t){if(A.started)throw new Error("Backbone.history has already been started");A.started=!0,this.options=i.extend({root:"/"},this.options,t),this.root=this.options.root,this._wantsHashChange=this.options.hashChange!==!1,this._wantsPushState=!!this.options.pushState,this._hasPushState=!!(this.options.pushState&&this.history&&this.history.pushState);var n=this.getFragment(),s=document.documentMode,r=R.exec(navigator.userAgent.toLowerCase())&&(!s||s<=7);if(this.root=("/"+this.root+"/").replace(N,"/"),r&&this._wantsHashChange){var a=e.$('