diff options
Diffstat (limited to 'catalog-be/src/main/resources/config')
4 files changed, 1127 insertions, 1044 deletions
diff --git a/catalog-be/src/main/resources/config/configuration.yaml b/catalog-be/src/main/resources/config/configuration.yaml index 2df1fc45cb..3dca45840a 100644 --- a/catalog-be/src/main/resources/config/configuration.yaml +++ b/catalog-be/src/main/resources/config/configuration.yaml @@ -23,12 +23,26 @@ beSslPort: 8443 version: 1.1.0 released: 2012-11-30 -toscaConformanceLevel: 9.0 +toscaConformanceLevel: 12.0 minToscaConformanceLevel: 3.0 +# access restriction +authCookie: + securityKey: "AGLDdG4D04BKm2IxIWEr8o==" + maxSessionTimeOut: 24*60*60*1000 + sessionIdleTimeOut: 2*60*60*1000 + cookieName: "AuthenticationCookie" + path: / + domain: "" + isHttpOnly: true + # redirect variable name from portal.properties file + redirectURL: "ecomp_redirect_url" + excludedUrls: ['/config', '/configmgr', '/kibanaProxy', '/healthcheck', '/v1/catalog', '/v1/catalog/archive', '/v1/followed', '/v1/catalog/upload.*', '/v1/consumers', '/v1/screen', '/v1/catalogUpdateTimea', '/v1/user.*'] + # These values are necessary for running upgrade migration 1710.0 process enableAutoHealing: false appVersion: 1.1.0 +artifactGeneratorConfig: Artifact-Generator.properties resourcesForUpgrade: 8.0: - org.openecomp.resource.cp.extCP @@ -52,8 +66,6 @@ janusGraphReconnectIntervalInSeconds: 3 # The read timeout towards Janus Graph DB when health check is invoked: janusGraphHealthCheckReadTimeout: 1 -# The interval to try and reconnect to Elasticsearch when it is down during ASDC startup: -esReconnectIntervalInSeconds: 3 uebHealthCheckReconnectIntervalInSeconds: 15 uebHealthCheckReadTimeout: 4 @@ -105,33 +117,9 @@ cassandraConfig: - { name: dox, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['DC-sdc-iltlv650', '1']} - { name: sdcaudit, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['DC-sdc-iltlv650', '1']} - { name: sdcartifact, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['DC-sdc-iltlv650', '1']} - - { name: sdccomponent, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['DC-sdc-iltlv650', '1']} + - { name: sdccomponent, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['DC-sdc-iltlv650', '1']} - { name: sdcrepository, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['DC-sdc-iltlv650', '1']} - -#Application-specific settings of ES -elasticSearch: - # Mapping of index prefix to time-based frame. For example, if below is configured: - # - # - indexPrefix: auditingevents - # creationPeriod: minute - # - # then ES object of type which is mapped to "auditingevents-*" template, and created on 2015-12-23 13:24:54, will enter "auditingevents-2015-12-23-13-24" index. - # Another object created on 2015-12-23 13:25:54, will enter "auditingevents-2015-12-23-13-25" index. - # If creationPeriod: month, both of the above will enter "auditingevents-2015-12" index. - # - # PLEASE NOTE: the timestamps are created in UTC/GMT timezone! This is needed so that timestamps will be correctly presented in Kibana. - # - # Legal values for creationPeriod - year, month, day, hour, minute, none (meaning no time-based behaviour). - # - # If no creationPeriod is configured for indexPrefix, default behavour is creationPeriod: month. - - indicesTimeFrequency: - - indexPrefix: auditingevents - creationPeriod: month - - indexPrefix: monitoring_events - creationPeriod: month - artifactTypes: - CHEF - PUPPET @@ -178,11 +166,6 @@ resourceTypes: &allResourceTypes # - VF # - VL deploymentResourceArtifacts: - cdsBlueprint: - displayName: "CDS Blueprint" - type: CONTROLLER_BLUEPRINT_ARCHIVE - description: "CDS deployment artifact" - fileExtension: "zip" # heat: # displayName: "Base HEAT Template" # type: HEAT @@ -321,7 +304,10 @@ systemMonitoring: isProxy: false probeIntervalInSeconds: 15 -defaultHeatArtifactTimeoutMinutes: 60 +heatArtifactDeploymentTimeout: + defaultMinutes: 30 + minMinutes: 1 + maxMinutes: 120 serviceDeploymentArtifacts: CONTROLLER_BLUEPRINT_ARCHIVE: @@ -352,7 +338,7 @@ serviceDeploymentArtifacts: - xml AAI_VF_INSTANCE_MODEL: acceptedTypes: - - xml + - xml CLOUD_TECHNOLOGY_SPECIFIC_ARTIFACT: acceptedTypes: - zip @@ -465,7 +451,7 @@ resourceDeploymentArtifacts: acceptedTypes: validForResourceTypes: - VF - - VFCMT + - VFCMT DCAE_EVENT: acceptedTypes: validForResourceTypes: @@ -521,7 +507,6 @@ resourceDeploymentArtifacts: ONBOARDED_PACKAGE: acceptedTypes: - csar - - zip validForResourceTypes: - VF - PNF @@ -600,7 +585,7 @@ resourceInformationalArtifacts: validForResourceTypes: *allResourceTypes OTHER: acceptedTypes: - validForResourceTypes: + validForResourceTypes: - VFC - CVFC - CP @@ -631,10 +616,6 @@ resourceInformationalArtifacts: resourceInformationalDeployedArtifacts: -requirementsToFulfillBeforeCert: - -capabilitiesToConsumeBeforeCert: - unLoggedUrls: - /sdc2/rest/healthCheck @@ -662,6 +643,12 @@ dcae: port: 8080 healthCheckUri: "/dcae/healthCheck" +ecompPortal: + protocol: https + host: ecomp-portal-web-tdevn2.mtn23a.ecomp.cci.att.com + port: 8443 + healthCheckUri: "/ecompui/portalApi/healthCheck" + switchoverDetector: gBeFqdn: AIO-BE.ecomp.idns.cip.com gFeFqdn: AIO-FE.ecomp.idns.cip.com @@ -703,6 +690,7 @@ toscaValidators: stringMaxLength: 2500 disableAudit: false +consumerBusinessLogic: false vfModuleProperties: min_vf_module_instances: @@ -761,6 +749,7 @@ gabConfig: path: "event.structure.faultFields.structure.alarmAdditionalInformation.comment" searchable: "true" +#Tenant isolation consumer dmaapConsumerConfiguration: active: true hosts: olsd004.wnsnet.ws.com:3905 @@ -789,13 +778,50 @@ dmaapConsumerConfiguration: credential: username: m09875@sdc.com password: mockhmXYcznAljMSisdy8zgcag== + aftDme2SslEnable: true + aftDme2ClientIgnoreSslConfig: false + aftDme2ClientKeystore: /opt/app/jetty/base/be/config/.truststore + aftDme2ClientKeystorePassword: hmXYcznAljMSisdy8zgcag== + aftDme2ClientSslCertAlias: certman + +#Performence microservice dmaap producer +dmaapProducerConfiguration: + active: false + consumerGroup: asdc + consumerId: mama #mama - in Order To Consume Remove This String And Replace It With -> mama + timeoutMs: 15000 + limit: 1 + pollingInterval: 2 + topic: com.sdc.23911-SDCforTestDev-v001 + latitude: 32.109333 + longitude: 34.855499 + version: 1.0 + serviceName: dmaap-v1.dev.dmaap.dt.saat.acsi.com/events + environment: TEST + partner: BOT_R + routeOffer: MR1 + protocol: http + contenttype: application/json + dme2TraceOn: true + aftEnvironment: AFTUAT + aftDme2ConnectionTimeoutMs: 15000 + aftDme2RoundtripTimeoutMs: 240000 + aftDme2ReadTimeoutMs: 50000 + dme2preferredRouterFilePath: DME2preferredRouter.txt + timeLimitForNotificationHandleMs: 120000 + credential: + username: m09875@sdc.com + password: mockhmXYcznAljMSisdy8zgcag== + aftDme2SslEnable: true + aftDme2ClientIgnoreSslConfig: false + aftDme2ClientKeystore: /opt/app/jetty/base/be/config/.truststore + aftDme2ClientKeystorePassword: hmXYcznAljMSisdy8zgcag== + aftDme2ClientSslCertAlias: certman - -dmeConfiguration: - dme2Search: DME2SEARCH - dme2Resolve: DME2RESOLVE +dmeConfiguration: + lookupUriFormat: "http://DME2RESOLVE/service=%s/version=1.0.0/envContext=%s/routeOffer=DEFAULT" excludedPolicyTypesMapping: # VF: @@ -808,21 +834,49 @@ excludedGroupTypesMapping: CR: - org.openecomp.groups.VfModule - org.openecomp.groups.heat.HeatStack + - org.openecomp.groups.Group - tosca.groups.Root PNF: - org.openecomp.groups.VfModule - org.openecomp.groups.heat.HeatStack + - org.openecomp.groups.Group - tosca.groups.Root VF: - org.openecomp.groups.VfModule - org.openecomp.groups.heat.HeatStack + - org.openecomp.groups.Group - tosca.groups.Root Service: - org.openecomp.groups.VfModule - org.openecomp.groups.heat.HeatStack + - org.openecomp.groups.Group - tosca.groups.Root healthStatusExclude: - DE - - ES - DMAAP + - DMAAP_PRODUCER + - ECOMP_PORTAL + +aafNamespace: com.att.sdc + +aafAuthNeeded: false + +cadiFilterParams: + hostname: 192.168.33.10 + csp_domain: PROD + cadi_keyfile: /opt/app/jetty/base/be/config/catalog-be/keyfile + cadi_loglevel: DEBUG + cadi_truststore: /opt/app/jetty/base/be/config/.truststore + cadi_truststore_password: enc:HdzGwQGAK5Rc29vzn3Kqoy9BCTbJNGgNxd72zpCUtjg + #aaf_url: https://DME2RESOLVE/service=com.att.authz.AuthorizationService/version=2.0/envContext=TEST/routeOffer=BAU_SE + aaf_id: m09875@sdc.att.com + aaf_password: enc:HdzGwQGAK5Rc29vzn3Kqoy9BCTbJNGgNxd72zpCUtjg + aaf_env: DEV + aafLocateUrl: https://aaf.api.simpledemo.onap.org:8095 + aaf_url: https://AAF_LOCATE_URL/AAF_NS.service:2.0 + AFT_LATITUDE: "32.780140" + AFT_LONGITUDE: "-96.800451" + AFT_ENVIRONMENT: AFTUAT + cadiX509Issuers: "CN=intermediateCA_1, OU=OSAAF, O=ONAP, C=US" + diff --git a/catalog-be/src/main/resources/config/distribution-engine-configuration.yaml b/catalog-be/src/main/resources/config/distribution-engine-configuration.yaml index 4a788caaab..1817ecbb2b 100644 --- a/catalog-be/src/main/resources/config/distribution-engine-configuration.yaml +++ b/catalog-be/src/main/resources/config/distribution-engine-configuration.yaml @@ -82,4 +82,3 @@ msoConfig: password: OTLEp5lfVhYdyw5EAtTUBQ== numOfRetries: 3 -currentArtifactInstallationTimeout: 120 diff --git a/catalog-be/src/main/resources/config/error-configuration.yaml b/catalog-be/src/main/resources/config/error-configuration.yaml index 3045e9ec97..25989dfe29 100644 --- a/catalog-be/src/main/resources/config/error-configuration.yaml +++ b/catalog-be/src/main/resources/config/error-configuration.yaml @@ -16,90 +16,96 @@ errors: code: 204, message: "No Content" } -#--------POL4050----------------------------- + #--------POL4050----------------------------- NOT_ALLOWED: { code: 405, message: "Error: Method not allowed.", messageId: "POL4050" } -#--------POL5000----------------------------- + #--------POL5000----------------------------- GENERAL_ERROR: { code: 500, message: "Error: Internal Server Error. Please try again later.", messageId: "POL5000" } -#---------POL5001------------------------------ + #---------POL5001------------------------------ MISSING_X_ECOMP_INSTANCE_ID: { code: 400 , message: "Error: Missing 'X-ECOMP-InstanceID' HTTP header.", messageId: "POL5001" } -#---------POL5002------------------------------ + #---------POL5002------------------------------ AUTH_REQUIRED: { code: 401 , message: "Error: Authentication is required to use the API.", messageId: "POL5002" } -#---------POL5003------------------------------ + #---------POL5003------------------------------ AUTH_FAILED: { code: 403 , message: "Error: Not authorized to use the API.", messageId: "POL5003" } -#---------POL5004------------------------------ + #---------POL5004------------------------------ MISSING_USER_ID: { code: 400 , message: "Error: Missing 'USER_ID' HTTP header.", messageId: "POL5004" } -#---------SVC4000----------------------------- + #---------POL5005------------------------------ + SESSION_EXPIRED: { + code: 403 , + message: "Your session has expired. Please close the SDC tab and re-enter the SDC application.", + messageId: "POL5005" + } + #---------SVC4000----------------------------- INVALID_CONTENT: { code: 400, message: "Error: Invalid content.", messageId: "SVC4000" } -#---------SVC4002----------------------------- + #---------SVC4002----------------------------- MISSING_INFORMATION: { code: 403, message: "Error: Missing information.", messageId: "SVC4002" } -#---------SVC4003------------------------------ -# %1 - Users's ID + #---------SVC4003------------------------------ + # %1 - Users's ID USER_NOT_FOUND: { code: 404, message: "Error: User '%1' was not found.", messageId: "SVC4003" } -#---------SVC4004----------------------------- -# %1 - Users's email address + #---------SVC4004----------------------------- + # %1 - Users's email address INVALID_EMAIL_ADDRESS: { code: 400, message: "Error: Invalid email address '%1'.", messageId: "SVC4004" } -#---------SVC4005------------------------------ -# %1 - role + #---------SVC4005------------------------------ + # %1 - role INVALID_ROLE: { code: 400, message: "Error: Invalid role '%1'.", messageId: "SVC4005" } -#---------SVC4006------------------------------ -# %1 - Users's USER_ID + #---------SVC4006------------------------------ + # %1 - Users's USER_ID USER_ALREADY_EXIST: { code: 409, message: "Error: User with '%1' ID already exists.", messageId: "SVC4006" } -#---------SVC4007------------------------------ + #---------SVC4007------------------------------ DELETE_USER_ADMIN_CONFLICT: { code: 409, message: "Error: An administrator can only be deleted by another administrator.", messageId: "SVC4007" } -#---------SVC4008----------------------------- -# %1 - Users's userId + #---------SVC4008----------------------------- + # %1 - Users's userId INVALID_USER_ID: { code: 400, message: "Error: Invalid userId '%1'.", @@ -111,105 +117,105 @@ errors: message: "Error: User Defined '%1'.", messageId: "SVC4009" } -#---------SVC4049------------------------------ -# %1 - service/resource + #---------SVC4049------------------------------ + # %1 - service/resource COMPONENT_MISSING_CONTACT: { code: 400, message: "Error: Invalid Content. Missing %1 contact.", messageId: "SVC4049" } -#---------SVC4050----------------------------- -# %1 - Service/Resource/Additional parameter -# %2 - service/resource/label name + #---------SVC4050----------------------------- + # %1 - Service/Resource/Additional parameter + # %2 - service/resource/label name COMPONENT_NAME_ALREADY_EXIST: { code: 409, message: "Error: %1 with name '%2' already exists.", messageId: "SVC4050" } -#---------SVC4051------------------------------ -# %1 - resource/service + #---------SVC4051------------------------------ + # %1 - resource/service COMPONENT_MISSING_CATEGORY: { code: 400, message: "Error: Invalid Content. Missing %1 category.", messageId: "SVC4051" } -#---------SVC4052------------------------------ + #---------SVC4052------------------------------ COMPONENT_MISSING_TAGS: { code: 400, message: "Error: Invalid Content. At least one tag has to be specified.", messageId: "SVC4052" } -#---------SVC4053------------------------------ -# %1 - service/resource + #---------SVC4053------------------------------ + # %1 - service/resource COMPONENT_MISSING_DESCRIPTION: { code: 400, message: "Error: Invalid Content. Missing %1 description.", messageId: "SVC4053" } -#---------SVC4054------------------------------ -# %1 - resource/service + #---------SVC4054------------------------------ + # %1 - resource/service COMPONENT_INVALID_CATEGORY: { code: 400, message: "Error: Invalid Content. Value %1 for the field Category is invalid.", messageId: "SVC4054" } -#---------SVC4055------------------------------ + #---------SVC4055------------------------------ MISSING_VENDOR_NAME: { code: 400, message: "Error: Invalid Content. Missing vendor name.", messageId: "SVC4055" } -#---------SVC4056------------------------------ + #---------SVC4056------------------------------ MISSING_VENDOR_RELEASE: { code: 400, message: "Error: Invalid Content. Missing vendor release.", messageId: "SVC4056" } -#---------SVC4057------------------------------ + #---------SVC4057------------------------------ MISSING_DERIVED_FROM_TEMPLATE: { code: 400, message: "Error: Invalid Content. Missing derived from template specification.", messageId: "SVC4057" } -#---------SVC4058------------------------------ -# %1 - service/resource + #---------SVC4058------------------------------ + # %1 - service/resource COMPONENT_MISSING_ICON: { code: 400, message: "Error: Invalid Content. Missing %1 icon.", messageId: "SVC4058" } -#---------SVC4059------------------------------ -# %1 - service/resource + #---------SVC4059------------------------------ + # %1 - service/resource COMPONENT_INVALID_ICON: { code: 400, message: "Error: Invalid Content. Invalid %1 icon.", messageId: "SVC4059" } -#---------SVC4060------------------------------ + #---------SVC4060------------------------------ PARENT_RESOURCE_NOT_FOUND: { code: 400, message: "Error: Invalid Content. Derived from resource template was not found.", messageId: "SVC4060" } -#---------SVC4061------------------------------ + #---------SVC4061------------------------------ MULTIPLE_PARENT_RESOURCE_FOUND: { code: 400, message: "Error: Invalid Content. Multiple derived from resource template is not allowed.", messageId: "SVC4061" } -#---------SVC4062------------------------------ -# %1 - service/resource + #---------SVC4062------------------------------ + # %1 - service/resource MISSING_COMPONENT_NAME: { code: 400, message: "Error: Invalid Content. Missing %1 name.", messageId: "SVC4062" } -#---------SVC4063------------------------------ + #---------SVC4063------------------------------ #%1 - resource/service name RESOURCE_NOT_FOUND: { code: 404, @@ -217,205 +223,205 @@ errors: messageId: "SVC4063" } -#---------SVC4064------------------------------ -# %1 - Service/Resource/Property + #---------SVC4064------------------------------ + # %1 - Service/Resource/Property COMPONENT_INVALID_DESCRIPTION: { code: 400, message: "Error: Invalid Content. %1 description contains non-english characters.", messageId: "SVC4064" } -#---------SVC4065------------------------------ -# %1 - Service/Resource/Property -# %2 - max resource/service name length + #---------SVC4065------------------------------ + # %1 - Service/Resource/Property + # %2 - max resource/service name length COMPONENT_DESCRIPTION_EXCEEDS_LIMIT: { code: 400, message: "Error: Invalid Content. %1 description exceeds limit of %2 characters.", messageId: "SVC4065" } -#---------SVC4066------------------------------ -# %1 - max length + #---------SVC4066------------------------------ + # %1 - max length COMPONENT_TAGS_EXCEED_LIMIT: { code: 400, message: "Error: Invalid Content. Tags overall length exceeds limit of %1 characters.", messageId: "SVC4066" } -#---------SVC4067------------------------------ -# %1 - max length + #---------SVC4067------------------------------ + # %1 - max length VENDOR_NAME_EXCEEDS_LIMIT: { code: 400, message: "Error: Invalid Content. Vendor name exceeds limit of %1 characters.", messageId: "SVC4067" } -#---------SVC4068------------------------------ -# %1 - max length + #---------SVC4068------------------------------ + # %1 - max length VENDOR_RELEASE_EXCEEDS_LIMIT: { code: 400, message: "Error: Invalid Content. Vendor release exceeds limit of %1 characters.", messageId: "SVC4068" } -#---------SVC4069------------------------------ -# %1 - Service/Resource/Product + #---------SVC4069------------------------------ + # %1 - Service/Resource/Product COMPONENT_INVALID_CONTACT: { code: 400, - message: "Error: Invalid Content. %1 Contact Id should be in format 'mnnnnnn' or 'aannna' or 'aannnn', where m=m ,a=a-zA-Z and n=0-9", + message: "Error: Invalid Content. %1 Contact Id should be in format 'mnnnnnn' or 'aannna' or 'aannnn', where m=m ,a=a-zA-Z and n=0-9. Max length: 50", messageId: "SVC4069" } -#---------SVC4070------------------------------ -# %1 - Service/Resource + #---------SVC4070------------------------------ + # %1 - Service/Resource INVALID_COMPONENT_NAME: { code: 400, message: 'Error: Invalid Content. Value %1 for Component name is invalid. Only alphanumeric characters and regular spaces are allowed.', messageId: "SVC4070" } -#---------SVC4071------------------------------ + #---------SVC4071------------------------------ INVALID_VENDOR_NAME: { code: 400, message: 'Error: Invalid Content. Value %1 for the field Vendor name is invalid. Only alphanumeric characters and regular spaces are allowed.', messageId: "SVC4071" } -#---------SVC4072------------------------------ + #---------SVC4072------------------------------ INVALID_VENDOR_RELEASE: { code: 400, message: 'Error: Invalid Content. Value %1 for the field Vendor release is invalid. Only alphanumeric characters and regular spaces are allowed.', messageId: "SVC4072" } -#---------SVC4073------------------------------ -# %1 - Service/Resource -# %2 - max resource/service name + #---------SVC4073------------------------------ + # %1 - Service/Resource + # %2 - max resource/service name COMPONENT_NAME_EXCEEDS_LIMIT: { code: 400, message: "Error: Invalid Content. %1 name exceeds limit of %2 characters.", messageId: "SVC4073" } -#---------SVC4080------------------------------ -# %1 - resource/service name -# %2 - resource/service -# %3 - First name of last modifier -# %4 - Last name of last modifier -# %5 - USER_ID of last modifier + #---------SVC4080------------------------------ + # %1 - resource/service name + # %2 - resource/service + # %3 - First name of last modifier + # %4 - Last name of last modifier + # %5 - USER_ID of last modifier COMPONENT_IN_CHECKOUT_STATE: { code: 403, message: "Error: Requested '%1' %2 is locked for modification by %3 %4(%5).", messageId: "SVC4080" } -#---------SVC4081----------------------------- -# %1 - resource/service name -# %2 - resource/service -# %3 - First name of last modifier -# %4 - Last name of last modifier -# %5 - USER_ID of last modifier + #---------SVC4081----------------------------- + # %1 - resource/service name + # %2 - resource/service + # %3 - First name of last modifier + # %4 - Last name of last modifier + # %5 - USER_ID of last modifier COMPONENT_IN_CERT_IN_PROGRESS_STATE: { code: 403, message: "Error: Requested '%1' %2 is locked for certification by %3 %4(%5).", messageId: "SVC4081" } -#-----------SVC4082--------------------------- -# %1 - resource/service name -# %2 - resource/service -# %3 - First name of last modifier -# %4 - Last name of last modifier -# %5 - USER_ID of last modifier + #-----------SVC4082--------------------------- + # %1 - resource/service name + # %2 - resource/service + # %3 - First name of last modifier + # %4 - Last name of last modifier + # %5 - USER_ID of last modifier COMPONENT_SENT_FOR_CERTIFICATION: { code: 403, message: "Error: Requested '%1' %2 is sent for certification by %3 %4(%5).", messageId: "SVC4082" } -#-----------SVC4083--------------------------- + #-----------SVC4083--------------------------- COMPONENT_VERSION_ALREADY_EXIST: { code: 409, message: "Error: Version of this %1 was already promoted.", messageId: "SVC4083" } -#-----------SVC4084--------------------------- -# %1 - resource/service/product name -# %2 - resource/service/product -# %3 - First name of last modifier -# %4 - Last name of last modifier -# %5 - USER_ID of last modifier + #-----------SVC4084--------------------------- + # %1 - resource/service/product name + # %2 - resource/service/product + # %3 - First name of last modifier + # %4 - Last name of last modifier + # %5 - USER_ID of last modifier COMPONENT_ALREADY_CHECKED_IN: { code: 409, message: "Error: The current version of '%1' %2 was already checked-in by %3 %4(%5).", messageId: "SVC4084" } -#-----------SVC4085--------------------------- -# %1 - resource/service/product name -# %2 - resource/service/product -# %3 - First name of last modifier -# %4 - Last name of last modifier -# %5 - USER_ID of last modifier + #-----------SVC4085--------------------------- + # %1 - resource/service/product name + # %2 - resource/service/product + # %3 - First name of last modifier + # %4 - Last name of last modifier + # %5 - USER_ID of last modifier COMPONENT_CHECKOUT_BY_ANOTHER_USER: { code: 403, message: "Error: %1 %2 has already been checked out by %3 %4(%5).", messageId: "SVC4085" } -#-----------SVC4086--------------------------- -# %1 - resource/service name -# %2 - resource/service + #-----------SVC4086--------------------------- + # %1 - resource/service name + # %2 - resource/service COMPONENT_IN_USE: { code: 403, message: "Error: '%1' %2 is still held by previous action. Please try again later.", messageId: "SVC4086" } -#-----------SVC4087--------------------------- -# %1 - component name -# %2 - resource/service/product + #-----------SVC4087--------------------------- + # %1 - component name + # %2 - resource/service/product COMPONENT_HAS_NEWER_VERSION: { code: 409, message: "Error: Checking out of the requested version of the '%1' %2 is not allowed as a newer version exists.", messageId: "SVC4087" } -#-----------SVC4088--------------------------- -# %1 - resource/service name -# %2 - resource/service -# %3 - First name of last modifier -# %4 - Last name of last modifier -# %5 - USER_ID of last modifier + #-----------SVC4088--------------------------- + # %1 - resource/service name + # %2 - resource/service + # %3 - First name of last modifier + # %4 - Last name of last modifier + # %5 - USER_ID of last modifier COMPONENT_ALREADY_CERTIFIED: { code: 403, message: "Error: Requested %1 %2 has already been certified by %3 %4(%5).", messageId: "SVC4088" } -#-----------SVC4089--------------------------- -# %1 - resource/service name -# %2 - resource/service + #-----------SVC4089--------------------------- + # %1 - resource/service name + # %2 - resource/service COMPONENT_NOT_READY_FOR_CERTIFICATION: { code: 403, message: "Error: Requested '%1' %2 is not ready for certification.", messageId: "SVC4089" } -#-----------SVC4100--------------------------- -#%1 - property name + #-----------SVC4100--------------------------- + #%1 - property name PROPERTY_NOT_FOUND: { code: 404, message: "Error: Requested '%1' property was not found.", messageId: "SVC4100" } -#-----------SVC4101--------------------------- -#%1 - property name + #-----------SVC4101--------------------------- + #%1 - property name PROPERTY_ALREADY_EXIST: { code: 409, message: "Error: Property with '%1' name already exists.", messageId: "SVC4101" } -#-----------SVC4102--------------------------- -# %1 - capability type name + #-----------SVC4102--------------------------- + # %1 - capability type name CAPABILITY_TYPE_ALREADY_EXIST: { code: 409, message: "Error: Capability Type with name '%1' already exists.", messageId: "SVC4102" } -#-----------SVC4114--------------------------- + #-----------SVC4114--------------------------- AUTH_FAILED_INVALIDE_HEADER: { code: 400, message: "Error: Invalid Authorization header.", messageId: "SVC4114" } -#-----------SVC4115--------------------------- -# %1 - capability type name + #-----------SVC4115--------------------------- + # %1 - capability type name MISSING_CAPABILITY_TYPE: { code: 400, message: "Error: Invalid Content. Missing Capability Type '%1'.", @@ -426,216 +432,216 @@ errors: message: "Error: Invalid Content.", messageId: "SVC4116" } -#-----------SVC4117--------------------------- -# %1 - resource instance name -# %2 - resource instance name -# %3 - requirement name + #-----------SVC4117--------------------------- + # %1 - resource instance name + # %2 - resource instance name + # %3 - requirement name RESOURCE_INSTANCE_MATCH_NOT_FOUND: { code: 404, message: "Error: Match not found between resource instance '%1' and resource instance '%2' for requirement '%3'.", messageId: "SVC4117" } -#-----------SVC4118--------------------------- -# %1 - resource instance name -# %2 - resource instance name -# %3 - requirement name + #-----------SVC4118--------------------------- + # %1 - resource instance name + # %2 - resource instance name + # %3 - requirement name RESOURCE_INSTANCE_ALREADY_EXIST: { code: 409, message: "Error: Resource instances '%1' and '%2' are already associated with requirement '%3'.", messageId: "SVC4118" } -#-----------SVC4119--------------------------- -# %1 - resource instance name -# %2 - resource instance name -# %3 - requirement name + #-----------SVC4119--------------------------- + # %1 - resource instance name + # %2 - resource instance name + # %3 - requirement name RESOURCE_INSTANCE_RELATION_NOT_FOUND: { code: 404, message: "Error: No relation found between resource instances '%1' and '%2' for requirement '%3'.", messageId: "SVC4119" } -#-----------SVC4120--------------------------- -# %1 - User's USER_ID + #-----------SVC4120--------------------------- + # %1 - User's USER_ID USER_INACTIVE: { code: 404, - message: "Error: User %1 was not found.", + message: "Error: User %1 inactive.", messageId: "SVC4120" } -#-----------SVC4121--------------------------- -# %1 - User's USER_ID + #-----------SVC4121--------------------------- + # %1 - User's USER_ID USER_HAS_ACTIVE_ELEMENTS: { code: 403, message: "Error: User with %1 ID can not be deleted since it has active elements(resources/services/artifacts).", messageId: "SVC4121" } -#-----------SVC4122--------------------------- -# %1 - artifact type + #-----------SVC4122--------------------------- + # %1 - artifact type ARTIFACT_TYPE_NOT_SUPPORTED: { code: 400, message: "Error: Invalid artifact type '%1'.", messageId: "SVC4122" } -#-----------SVC4123--------------------------- + #-----------SVC4123--------------------------- ARTIFACT_LOGICAL_NAME_CANNOT_BE_CHANGED: { code: 400, message: "Error: Artifact logical name cannot be changed.", messageId: "SVC4123" } -#-----------SVC4124--------------------------- + #-----------SVC4124--------------------------- MISSING_ARTIFACT_TYPE: { code: 400, message: "Error: Missing artifact type.", messageId: "SVC4124" } -#-----------SVC4125--------------------------- -# %1-artifact name + #-----------SVC4125--------------------------- + # %1-artifact name ARTIFACT_EXIST: { code: 400, message: "Error: Artifact '%1' already exists.", messageId: "SVC4125" } -#---------SVC4126------------------------------ -# %1 - resource/service/product/... -# %2 - field (tag, vendor name...) + #---------SVC4126------------------------------ + # %1 - resource/service/product/... + # %2 - field (tag, vendor name...) INVALID_FIELD_FORMAT: { code: 400, message: "Error: Invalid %1 %2 format.", messageId: "SVC4126" } -#-----------SVC4127--------------------------- + #-----------SVC4127--------------------------- ARTIFACT_INVALID_MD5: { code: 400, message: "Error: Invalid artifact checksum.", messageId: "SVC4127" } -#-----------SVC4128--------------------------- + #-----------SVC4128--------------------------- MISSING_ARTIFACT_NAME: { code: 400, message: "Error: Invalid content. Missing artifact name.", messageId: "SVC4128" } -#-----------SVC4129--------------------------- + #-----------SVC4129--------------------------- MISSING_PROJECT_CODE: { code: 400, message: "Error: Invalid Content. Missing PROJECT_CODE number.", messageId: "SVC4129" } -#-----------SVC4130--------------------------- + #-----------SVC4130--------------------------- INVALID_PROJECT_CODE: { code: 400, - message: "Error: Invalid Content. PROJECT_CODE must be from 3 up to 50 characters.", + message: "Error: Invalid Content. PROJECT_CODE must be from 5 up to 50 characters.", messageId: "SVC4130" } -#-----------SVC4131--------------------------- -# %1-resource/service -# %2-srtifact/artifacts -# %3-semicolomn separated list of artifact + #-----------SVC4131--------------------------- + # %1-resource/service + # %2-srtifact/artifacts + # %3-semicolomn separated list of artifact COMPONENT_MISSING_MANDATORY_ARTIFACTS: { code: 403, message: "Error: Missing mandatory informational %1 %2: [%3].", messageId: "SVC4131" } -#-----------SVC4132--------------------------- -# %1 - lifecycle type name + #-----------SVC4132--------------------------- + # %1 - lifecycle type name LIFECYCLE_TYPE_ALREADY_EXIST: { code: 409, message: "Error: Lifecycle Type with name '%1' already exists.", messageId: "SVC4132" } -#-----------SVC4133--------------------------- -# %1 - service version -# %2 - service name + #-----------SVC4133--------------------------- + # %1 - service version + # %2 - service name SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION: { code: 403, message: "Error: Version %1 of '%2' service is not available for distribution.", messageId: "SVC4133" } -#-----------SVC4134--------------------------- + #-----------SVC4134--------------------------- MISSING_LIFECYCLE_TYPE: { code: 400, message: "Error: Invalid Content. Missing interface life-cycle type.", messageId: "SVC4134" } -#---------SVC4135------------------------------ + #---------SVC4135------------------------------ SERVICE_CATEGORY_CANNOT_BE_CHANGED: { code: 400, message: "Error: Service category cannot be changed once the service is certified.", messageId: "SVC4135" } -#---------SVC4136------------------------------ -# %1 - distribution environment name + #---------SVC4136------------------------------ + # %1 - distribution environment name DISTRIBUTION_ENVIRONMENT_NOT_AVAILABLE: { code: 500, message: "Error: Requested distribution environment '%1' is not available.", messageId: "SVC4136" } -#---------SVC4137------------------------------ -# %1 - distribution environment name + #---------SVC4137------------------------------ + # %1 - distribution environment name DISTRIBUTION_ENVIRONMENT_NOT_FOUND: { code: 400, message: "Error: Requested distribution environment '%1' was not found.", messageId: "SVC4137" } -#---------SVC4138------------------------------ + #---------SVC4138------------------------------ DISTRIBUTION_ENVIRONMENT_INVALID: { code: 400, message: "Error: Invalid distribution environment.", messageId: "SVC4138" } -#---------SVC4200------------------------------ -# %1 - Service/Resource -# %2 - max icon name length + #---------SVC4200------------------------------ + # %1 - Service/Resource + # %2 - max icon name length COMPONENT_ICON_EXCEEDS_LIMIT: { code: 400, message: "Error: Invalid Content. %1 icon name exceeds limit of %2 characters.", messageId: "SVC4200" } -#---------SVC4300------------------------------ + #---------SVC4300------------------------------ RESTRICTED_ACCESS: { code: 403, message: "Error: Restricted access.", messageId: "SVC4300" } -#---------SVC4301------------------------------ + #---------SVC4301------------------------------ RESTRICTED_OPERATION: { code: 403, message: "Error: Restricted operation.", messageId: "SVC4301" } -#---------SVC4500------------------------------ + #---------SVC4500------------------------------ MISSING_BODY: { code: 400 , message: "Error: Missing request body.", messageId: "SVC4500" } -#---------SVC4501------------------------------ + #---------SVC4501------------------------------ MISSING_PUBLIC_KEY: { code: 400 , message: "Error: Invalid Content. Missing mandatory parameter 'apiPublicKey'." , messageId: "SVC4501" } -#---------SVC4502------------------------------ + #---------SVC4502------------------------------ DISTRIBUTION_ENV_DOES_NOT_EXIST: { code: 400 , message: "Error: Invalid Body : Missing mandatory parameter 'distrEnvName'." , messageId: "SVC4502" } -#-----------SVC4503--------------------------- -# %1 - service name + #-----------SVC4503--------------------------- + # %1 - service name SERVICE_NOT_FOUND: { code: 404, message: "Error: Requested '%1' service was not found.", messageId: "SVC4503" } -#---------SVC4504------------------------------ -# %1 - Service/Resource -# %2 - service/resource version + #---------SVC4504------------------------------ + # %1 - Service/Resource + # %2 - service/resource version COMPONENT_VERSION_NOT_FOUND: { code: 404, message: "Error: %1 version %2 was not found.", messageId: "SVC4504" } -#-----------SVC4505--------------------------- + #-----------SVC4505--------------------------- #%1-artifact name ARTIFACT_NOT_FOUND: { @@ -643,807 +649,788 @@ errors: message: "Error: Artifact '%1' was not found.", messageId: "SVC4505" } -#---------SVC4506------------------------------ + #---------SVC4506------------------------------ MISSING_ENV_NAME: { code: 400 , message: "Error: Invalid Content. Missing mandatory parameter 'distrEnvName'.", messageId: "SVC4506" } -#---------SVC4507------------------------------ + #---------SVC4507------------------------------ COMPONENT_INVALID_TAGS_NO_COMP_NAME: { code: 400, message: "Error: Invalid Content. One of the tags should be the component name.", messageId: "SVC4507" } -#---------SVC4508------------------------------ + #---------SVC4508------------------------------ SERVICE_NAME_CANNOT_BE_CHANGED: { code: 400, message: "Error: Service name cannot be changed once the service is certified.", messageId: "SVC4508" } -#---------SVC4509------------------------------ + #---------SVC4509------------------------------ SERVICE_ICON_CANNOT_BE_CHANGED: { code: 400, message: "Error: Icon cannot be changed once the service is certified.", messageId: "SVC4509" } -#---------SVC4510------------------------------ -# %1 - icon name max length + #---------SVC4510------------------------------ + # %1 - icon name max length SERVICE_ICON_EXCEEDS_LIMIT: { code: 400, message: "Error: Invalid Content. Icon name exceeds limit of %1 characters.", messageId: "SVC4510" } -#---------SVC4511------------------------------ + #---------SVC4511------------------------------ DISTRIBUTION_REQUESTED_NOT_FOUND: { code: 404, message: "Error: Requested distribution was not found.", messageId: "SVC4511" } -#---------SVC4512------------------------------ -# %1 - Distribution ID + #---------SVC4512------------------------------ + # %1 - Distribution ID DISTRIBUTION_REQUESTED_FAILED: { code: 403, message: "Error: Requested distribution '%1' failed.", messageId: "SVC4512" } -#---------SVC4513------------------------------ + #---------SVC4513------------------------------ RESOURCE_CATEGORY_CANNOT_BE_CHANGED: { code: 400, message: "Error: Resource category cannot be changed once the resource is certified.", messageId: "SVC4513" } -#---------SVC4514------------------------------ + #---------SVC4514------------------------------ RESOURCE_NAME_CANNOT_BE_CHANGED: { code: 400, message: "Error: Resource name cannot be changed once the resource is certified.", messageId: "SVC4514" } -#---------SVC4515------------------------------ + #---------SVC4515------------------------------ RESOURCE_ICON_CANNOT_BE_CHANGED: { code: 400, message: "Error: Icon cannot be changed once the resource is certified.", messageId: "SVC4515" } -#---------SVC4516------------------------------ + #---------SVC4516------------------------------ RESOURCE_VENDOR_NAME_CANNOT_BE_CHANGED: { code: 400, message: "Error: Vendor name cannot be changed once the resource is certified.", messageId: "SVC4516" } -#---------SVC4517------------------------------ + #---------SVC4517------------------------------ RESOURCE_DERIVED_FROM_CANNOT_BE_CHANGED: { code: 400, message: "Error: Derived from resource template cannot be changed once the resource is certified.", messageId: "SVC4517" } -#---------SVC4518------------------------------ -# %1 - max length + #---------SVC4518------------------------------ + # %1 - max length COMPONENT_SINGLE_TAG_EXCEED_LIMIT: { code: 400, message: "Error: Invalid Content. Single tag exceeds limit of %1 characters.", messageId: "SVC4518" } -#---------SVC4519------------------------------ + #---------SVC4519------------------------------ INVALID_DEFAULT_VALUE: { code: 400, message: "Error: mismatch in data-type occurred for property %1. data type is %2 and default value found is %3.", messageId: "SVC4519" } -#---------SVC4520------------------------------ -# %1 - service or resource + #---------SVC4520------------------------------ + # %1 - service or resource ADDITIONAL_INFORMATION_MAX_NUMBER_REACHED: { code: 409, message: "Error: Maximal number of additional %1 parameters was reached.", messageId: "SVC4520" } -#---------SVC4521------------------------------ + #---------SVC4521------------------------------ ADDITIONAL_INFORMATION_EMPTY_STRING_NOT_ALLOWED: { code: 400, message: "Error: Invalid Content. The Additional information label and value cannot be empty.", messageId: "SVC4521" } -#---------SVC4522------------------------------ -# %1 - label/value -# %2 - Maximal length of %1 + #---------SVC4522------------------------------ + # %1 - label/value + # %2 - Maximal length of %1 ADDITIONAL_INFORMATION_EXCEEDS_LIMIT: { code: 400, message: "Error: Invalid Content. Additional information %1 exceeds limit of %2 characters.", messageId: "SVC4522" } -#---------SVC4523------------------------------ + #---------SVC4523------------------------------ ADDITIONAL_INFORMATION_KEY_NOT_ALLOWED_CHARACTERS: { code: 400, message: 'Error: Invalid Content. Additional information label is not allowed to contain characters like <>:"\/|?* and space characters other than regular space.', messageId: "SVC4523" } -#---------SVC4524------------------------------ + #---------SVC4524------------------------------ ADDITIONAL_INFORMATION_NOT_FOUND: { code: 409, message: "Error: Requested additional information was not found.", messageId: "SVC4524" } -#---------SVC4525------------------------------ + #---------SVC4525------------------------------ ADDITIONAL_INFORMATION_VALUE_NOT_ALLOWED_CHARACTERS: { code: 400, message: 'Error: Invalid Content. Additional information contains non-english characters.', messageId: "SVC4525" } -#---------SVC4526------------------------------ + #---------SVC4526------------------------------ RESOURCE_INSTANCE_NOT_FOUND: { code: 404, message: "Error: Requested '%1' resource instance was not found.", messageId: "SVC4526" } -#---------SVC4527------------------------------ + #---------SVC4527------------------------------ ASDC_VERSION_NOT_FOUND: { code: 500, message: 'Error: ASDC version cannot be displayed.', messageId: "SVC4527" } -#---------SVC4528------------------------------ -# %1-artifact url/artifact label/artifact description/VNF Service Indicator + #---------SVC4528------------------------------ + # %1-artifact url/artifact label/artifact description/VNF Service Indicator MISSING_DATA: { code: 400, message: "Error: Invalid content. Missing %1.", messageId: "SVC4528" } -#---------SVC4529------------------------------ -# %1-artifact url/artifact label/artifact description/artifact name -# %2 - Maximal length of %1 + #---------SVC4529------------------------------ + # %1-artifact url/artifact label/artifact description/artifact name + # %2 - Maximal length of %1 EXCEEDS_LIMIT: { code: 400, message: "Error: Invalid Content. %1 exceeds limit of %2 characters.", messageId: "SVC4529" } -#---------SVC4530------------------------------ + #---------SVC4530------------------------------ ARTIFACT_INVALID_TIMEOUT: { code: 400, message: "Error: Invalid Content. Artifact Timeout should be set to valid positive non-zero number of minutes.", messageId: "SVC4530" } -#---------SVC4531------------------------------ + #---------SVC4531------------------------------ SERVICE_IS_VNF_CANNOT_BE_CHANGED: { code: 400, message: "Error: VNF Indicator cannot be updated for certified service.", messageId: "SVC4531" } - #---------SVC4532------------------------------ + #---------SVC4532------------------------------ RESOURCE_INSTANCE_NOT_FOUND_ON_SERVICE: { code: 404, message: "Error: Requested '%1' resource instance was not found on the service '%2.", messageId: "SVC4532" } - #---------SVC4533------------------------------ - # %1 - "HEAT"/"HEAT_ENV"/"MURANO_PKG"/"YANG_XML" + #---------SVC4533------------------------------ + # %1 - "HEAT"/"HEAT_ENV"/"MURANO_PKG"/"YANG_XML" WRONG_ARTIFACT_FILE_EXTENSION: { code: 400, message: "Error: Invalid file extension for %1 artifact type.", messageId: "SVC4533" } -#---------SVC4534------------------------------ -# %1 - "HEAT"/"HEAT_ENV" + #---------SVC4534------------------------------ + # %1 - "HEAT"/"HEAT_ENV" INVALID_YAML: { code: 400, message: "Error: Uploaded YAML file for %1 artifact is invalid.", messageId: "SVC4534" } -#---------SVC4535------------------------------ -# %1 - "HEAT" + #---------SVC4535------------------------------ + # %1 - "HEAT" INVALID_DEPLOYMENT_ARTIFACT_HEAT: { code: 400, message: "Error: Invalid %1 artifact.", messageId: "SVC4535" } -#---------SVC4536------------------------------ -# %1 - "Resource"/"Service" -# %2 - resource/service name -# %3 - "HEAT"/"HEAT_ENV"/"MURANO_PKG" -# %4 - "HEAT"/"HEAT_ENV"/"MURANO_PKG + #---------SVC4536------------------------------ + # %1 - "Resource"/"Service" + # %2 - resource/service name + # %3 - "HEAT"/"HEAT_ENV"/"MURANO_PKG" + # %4 - "HEAT"/"HEAT_ENV"/"MURANO_PKG DEPLOYMENT_ARTIFACT_OF_TYPE_ALREADY_EXISTS: { code: 400, message: "Error: %1 '%2' already has a deployment artifact of %3 type .Please delete or update an existing %4 artifact.", messageId: "SVC4536" } -#---------SVC4537------------------------------ + #---------SVC4537------------------------------ MISSING_HEAT: { code: 400, message: "Error: Missing HEAT artifact. HEAT_ENV artifact cannot be uploaded without corresponding HEAT template.", messageId: "SVC4537" } -#---------SVC4538------------------------------ + #---------SVC4538------------------------------ MISMATCH_HEAT_VS_HEAT_ENV: { code: 400, message: "Error: Invalid artifact content. Parameter's set in HEAT_ENV '%1' artifact doesn't match the parameters in HEAT '%2' artifact.", messageId: "SVC4538" } -#---------SVC4539------------------------------ + #---------SVC4539------------------------------ INVALID_RESOURCE_PAYLOAD: { code: 400, message: "Error: Invalid resource payload.", messageId: "SVC4539" } -#---------SVC4540------------------------------ + #---------SVC4540------------------------------ INVALID_TOSCA_FILE_EXTENSION: { code: 400, message: "Error: Invalid file extension for TOSCA template.", messageId: "SVC4540" } -#---------SVC4541------------------------------ + #---------SVC4541------------------------------ INVALID_YAML_FILE: { code: 400, message: "Error: Invalid YAML file.", messageId: "SVC4541" } -#---------SVC4542------------------------------ + #---------SVC4542------------------------------ INVALID_TOSCA_TEMPLATE: { code: 400, message: "Error: Invalid TOSCA template.", messageId: "SVC4542" } -#---------SVC4543------------------------------ + #---------SVC4543------------------------------ NOT_RESOURCE_TOSCA_TEMPLATE: { code: 400, message: "Error: Imported Service TOSCA template.", messageId: "SVC4543" } -#---------SVC4544------------------------------ + #---------SVC4544------------------------------ NOT_SINGLE_RESOURCE: { code: 400, message: "Error: Imported TOSCA template should contain one resource definition.", messageId: "SVC4544" } -#---------SVC4545------------------------------ + #---------SVC4545------------------------------ INVALID_RESOURCE_NAMESPACE: { code: 400, message: "Error: Invalid resource namespace.", messageId: "SVC4545" } -#---------SVC4546------------------------------ + #---------SVC4546------------------------------ RESOURCE_ALREADY_EXISTS: { code: 400, message: "Error: Imported resource already exists in ASDC Catalog.", messageId: "SVC4546" } -#---------SVC4549------------------------------ + #---------SVC4549------------------------------ INVALID_RESOURCE_CHECKSUM: { code: 400, message: "Error: Invalid resource checksum.", messageId: "SVC4549" } -#---------SVC4550------------------------------ - #%1 - Consumer salt - INVALID_LENGTH: { - code: 400, - message: "Error: Invalid %1 length.", - messageId: "SVC4550" - } #---------SVC4551------------------------------ - #%1 - ECOMP User name + # %1 - ECOMP User name ECOMP_USER_NOT_FOUND: { code: 404, message: "Error: ECOMP User '%1' was not found.", messageId: "SVC4551" } -#---------SVC4552------------------------------ - CONSUMER_ALREADY_EXISTS: { - code: 409, - message: "Error: ECOMP User already exists.", - messageId: "SVC4552" - } -#---------SVC4553----------------------------- - #%1 - Consumer name / Consumer password/ Consumer salt - INVALID_CONTENT_PARAM: { - code: 400, - message: "Error: %1 is invalid.", - messageId: "SVC4553" - } #---------SVC4554------------------------------ -# %1 - "Resource"/"Service" + # %1 - Artifact Id + # %2 - "Resource"/"Service" COMPONENT_ARTIFACT_NOT_FOUND: { code: 404, - message: "Error: Requested artifact doesn't belong to specified %1.", + message: "Error: Requested artifact %1 doesn't belong to specified %2.", messageId: "SVC4554" } -#---------SVC4554------------------------------ -# %1 - "Service name" + #---------SVC4554------------------------------ + # %1 - "Service name" SERVICE_DEPLOYMENT_ARTIFACT_NOT_FOUND: { code: 403, message: "Error: Requested '%1' service is not ready for certification. Service has to have at least one deployment artifact.", messageId: "SVC4554" } -#---------SVC4555------------------------------ -#%1 - "Resource"/"Service"/"Product" -#%2 - "category" + #---------SVC4555------------------------------ + # %1 - "Resource"/"Service"/"Product" + # %2 - "category" COMPONENT_ELEMENT_INVALID_NAME_LENGTH: { code: 400, message: "Error: Invalid %1 %2 name length.", messageId: "SVC4555" } -#---------SVC4556------------------------------ -#%1 - "Resource"/"Service"/"Product" -#%2 - "category" + #---------SVC4556------------------------------ + # %1 - "Resource"/"Service"/"Product" + # %2 - "category" COMPONENT_ELEMENT_INVALID_NAME_FORMAT: { code: 400, message: "Error: Invalid %1 %2 name format.", messageId: "SVC4556" } -#---------SVC4557------------------------------ -#%1 - "Resource"/"Service"/"Product" -#%2 - "category name" + #---------SVC4557------------------------------ + # %1 - "Resource"/"Service"/"Product" + # %2 - "category name" COMPONENT_CATEGORY_ALREADY_EXISTS: { code: 409, message: "Error: %1 category name '%2' already exists.", messageId: "SVC4557" } -#---------SVC4558------------------------------ -# %1 - "service"/"VF" -# %2 - "Resource name" + #---------SVC4558------------------------------ + # %1 - "service"/"VF" + # %2 - "Resource name" VALIDATED_RESOURCE_NOT_FOUND: { code: 403, message: "Error: Submit for Testing is not permitted as your '%1' includes non-validated '%2' resource.", messageId: "SVC4558" } -#---------SVC4559------------------------------ -# %1 - "service"/"VF" -# %2 - "Resource name" + #---------SVC4559------------------------------ + # %1 - "service"/"VF" + # %2 - "Resource name" FOUND_ALREADY_VALIDATED_RESOURCE: { code: 403, message: "Error: Submit for Testing is not permitted as your '%1' includes non-validated '%2' resource. Please use already available validated resource version.", messageId: "SVC4559" } -#---------SVC4560------------------------------ -# %1 - "service"/"VF" -# %2 - "Resource name" + #---------SVC4560------------------------------ + # %1 - "service"/"VF" + # %2 - "Resource name" FOUND_LIST_VALIDATED_RESOURCES: { code: 403, message: "Error: Submit for Testing is not permitted as your '%1' includes non-validated '%2' resource. Please use one of available validated resource versions.", messageId: "SVC4560" } -#---------SVC4561------------------------------ -# %1 - "resource"/"product" -# %2 - "category" -# %3 - "category name" + #---------SVC4561------------------------------ + # %1 - "resource"/"product" + # %2 - "category" + # %3 - "category name" COMPONENT_CATEGORY_NOT_FOUND: { code: 404, message: "Error: Requested %1 %2 '%3' was not found.", messageId: "SVC4561" } -#---------SVC4562------------------------------ -# %1 - "Resource"/"Product" -# %2 - "sub-category name" -# %3 - "category name" + #---------SVC4562------------------------------ + # %1 - "Resource"/"Product" + # %2 - "sub-category name" + # %3 - "category name" COMPONENT_SUB_CATEGORY_EXISTS_FOR_CATEGORY: { code: 409, message: "Error: %1 sub-category '%2' already exists under '%3' category.", messageId: "SVC4562" } -#---------SVC4563------------------------------ -# %1 - "Product" -# %2 - "grouping name" -# %3 - "sub-category name" + #---------SVC4563------------------------------ + # %1 - "Product" + # %2 - "grouping name" + # %3 - "sub-category name" COMPONENT_GROUPING_EXISTS_FOR_SUB_CATEGORY: { code: 409, message: "Error: %1 grouping '%2' already exists under '%3' sub-category.", messageId: "SVC4563" } -#---------SVC4564------------------------------ -# %1 - product name + #---------SVC4564------------------------------ + # %1 - product name PRODUCT_NOT_FOUND: { code: 404, message: "Error: Requested '%1' product was not found.", messageId: "SVC4564" } -#---------SVC4565------------------------------ -# %1 - "HEAT" -# %2 - parameter type ("string" , "boolean" , "number") -# %3 - parameter name + #---------SVC4565------------------------------ + # %1 - "HEAT" + # %2 - parameter type ("string" , "boolean" , "number") + # %3 - parameter name INVALID_HEAT_PARAMETER_VALUE: { code: 400, message: "Error: Invalid %1 artifact. Invalid %2 value set for '%3' parameter.", messageId: "SVC4565" } -#---------SVC4566------------------------------ -# %1 - "HEAT" -# %2 - parameter type ("string" , "boolean" , "number") + #---------SVC4566------------------------------ + # %1 - "HEAT" + # %2 - parameter type ("string" , "boolean" , "number") INVALID_HEAT_PARAMETER_TYPE: { code: 400, message: "Error: Invalid %1 artifact. Unsupported '%2' parameter type.", messageId: "SVC4566" } -#---------SVC4567------------------------------ -# %1 - "YANG_XML" + #---------SVC4567------------------------------ + # %1 - "YANG_XML" INVALID_XML: { code: 400, message: "Error: Uploaded XML file for %1 artifact is invalid.", messageId: "SVC4567" } -#---------SVC4567------------------------------ -# %1 - "User Name and UserId" -# %2 -"checked-out"/"in-certification" + #---------SVC4569------------------------------ + # %1 - "User Name and UserId" + # %2 -"component names ot IDs" CANNOT_DELETE_USER_WITH_ACTIVE_ELEMENTS: { - code: 409, - message: "Error: User cannot be deleted. User '%1' has %2 projects.", - messageId: "SVC4567" + code: 412, + message: "Error: User cannot be deleted. User '%1' has projects that cannot be committed: %2.", + messageId: "SVC4569" } -#---------SVC4568------------------------------ -# %1 - "User Name and UserId" -# %2 -"checked-out"/"in-certification" + #---------SVC4568------------------------------ + # %1 - "User Name and UserId" + # %2 -"checked-out"/"in-certification" CANNOT_UPDATE_USER_WITH_ACTIVE_ELEMENTS: { code: 409, message: "Error: Role cannot be changed. User '%1' has %2 projects.", messageId: "SVC4568" } -#---------SVC4570------------------------------ + #---------SVC4570------------------------------ UPDATE_USER_ADMIN_CONFLICT: { code: 409, message: "Error: An administrator is not allowed to change his/her role.", messageId: "SVC4570" } -#---------SVC4571------------------------------ + #---------SVC4571------------------------------ SERVICE_CANNOT_CONTAIN_SUBCATEGORY: { code: 400, message: "Error: Sub category cannot be defined for service", messageId: "SVC4571" } -#---------SVC4572------------------------------ -# %1 - "Resource"/"Service" + #---------SVC4572------------------------------ + # %1 - "Resource"/"Service" COMPONENT_TOO_MUCH_CATEGORIES: { code: 400, message: "Error: %1 must have only 1 category", messageId: "SVC4572" } -#---------SVC4574------------------------------ + #---------SVC4574------------------------------ RESOURCE_TOO_MUCH_SUBCATEGORIES: { code: 400, message: "Error: Resource must have only 1 sub category", messageId: "SVC4574" } -#---------SVC4575------------------------------ + #---------SVC4575------------------------------ COMPONENT_MISSING_SUBCATEGORY: { code: 400, message: "Error: Missing sub category", messageId: "SVC4575" } - #---------SVC4576------------------------------ -# %1 - "component type" + #---------SVC4576------------------------------ + # %1 - "component type" UNSUPPORTED_ERROR: { code: 400, message: "Error : Requested component type %1 is unsupported.", messageId: "SVC4576" } #---------SVC4577------------------------------ -# %1 - "resource type" + # %1 - "resource type" RESOURCE_CANNOT_CONTAIN_RESOURCE_INSTANCES: { code: 409, message: "Error : Resource of type %1 cannot contain resource instances.", messageId: "SVC4577" } -#---------SVC4578------------------------------ -# %1 - "Resource"/"Service" -# %2 - resource/service name -# %3 - "artifact name" + #---------SVC4578------------------------------ + # %1 - "Resource"/"Service" + # %2 - resource/service name + # %3 - "artifact name" DEPLOYMENT_ARTIFACT_NAME_ALREADY_EXISTS: { code: 400, message: "Error: %1 '%2' already has a deployment artifact named '%3'.", messageId: "SVC4578" } -#---------SVC4579------------------------------ -# %1 - "Category"/"Sub-Category"/"Group" -# %2 - category/sub-category/grouping name. + #---------SVC4579------------------------------ + # %1 - "Category"/"Sub-Category"/"Group" + # %2 - category/sub-category/grouping name. INVALID_GROUP_ASSOCIATION: { code: 400, message: "Error: Invalid group association. %1 '%2' was not found.", messageId: "SVC4579" } -#---------SVC4580------------------------------ + #---------SVC4580------------------------------ EMPTY_PRODUCT_CONTACTS_LIST: { code: 400, message: "Error: Invalid content. At least one Product Contact has to be specified.", messageId: "SVC4580" } -#---------SVC4581------------------------------ -# %1 - UserId + #---------SVC4581------------------------------ + # %1 - UserId INVALID_PRODUCT_CONTACT: { code: 400, message: "Error: Invalid content. User '%1' cannot be set as Product Contact.", messageId: "SVC4581" } -#---------SVC4582------------------------------ -# %1 - Product -# %2 - "abbreviated"/"full" + #---------SVC4582------------------------------ + # %1 - Product + # %2 - "abbreviated"/"full" MISSING_ONE_OF_COMPONENT_NAMES: { code: 400, message: "Error: Invalid content. Missing %1 %2 name.", messageId: "SVC4582" } -#---------SVC4583------------------------------ -# %1 - "Icon" -# %2 - "resource"/"service"/"product" + #---------SVC4583------------------------------ + # %1 - "Icon" + # %2 - "resource"/"service"/"product" COMPONENT_PARAMETER_CANNOT_BE_CHANGED: { code: 400, message: "Error: %1 cannot be changed once the %2 is certified.", messageId: "SVC4583" } -#---------SVC4584------------------------------ -# %1 - service/VF name -# %2 - "service" /"VF" -# %3 - resource instance origin type -# %4 - resource instance name -# %5 - requirement/capability -# %6 - requirement/capability name -# %7 - "fulfilled" (for req)/"consumed (for cap)" + #---------SVC4584------------------------------ + # %1 - service/VF name + # %2 - "service" /"VF" + # %3 - resource instance origin type + # %4 - resource instance name + # %5 - requirement/capability + # %6 - requirement/capability name + # %7 - "fulfilled" (for req)/"consumed (for cap)" REQ_CAP_NOT_SATISFIED_BEFORE_CERTIFICATION: { code: 403, message: "Error: Requested '%1' %2 is not ready for certification. %3 '%4' has to have %5 '%6' %7.", messageId: "SVC4584" } -#---------SVC4585------------------------------ + #---------SVC4585------------------------------ INVALID_OCCURRENCES: { code: 400, message: "Error: Invalid occurrences format.", messageId: "SVC4585" } -#---------SVC4586------------------------------ -#---------SVC4586------------------------------ + #---------SVC4586------------------------------ + #---------SVC4586------------------------------ INVALID_SERVICE_API_URL: { code: 400, message: 'Error: Invalid Service API URL. Please check whether your URL has a valid domain extension and does not contain the following characters - #?&@%+;,=$<>~^`\[]{}|"*!', messageId: "SVC4586" } -#---------SVC4587------------------------------ -# %1 - Data type name + #---------SVC4587------------------------------ + # %1 - Data type name DATA_TYPE_ALREADY_EXIST: { code: 409, message: 'Error: Data type %1 already exists.', messageId: "SVC4587" } -#---------SVC4588------------------------------ -# %1 - Data type name + #---------SVC4588------------------------------ + # %1 - Data type name DATA_TYPE_NOR_PROPERTIES_NEITHER_DERIVED_FROM: { code: 400, message: 'Error: Invalid Data type %1. Data type must have either a valid derived from declaration or at least one valid property', messageId: "SVC4588" } -#---------SVC4589------------------------------ -# %1 - Data type name + #---------SVC4589------------------------------ + # %1 - Data type name DATA_TYPE_PROPERTIES_CANNOT_BE_EMPTY: { code: 400, message: "Error: Invalid Data type %1. 'properties' parameter cannot be empty if provided.", messageId: "SVC4589" } -#---------SVC4590------------------------------ -# %1 - Property type name -# %2 - Property name + #---------SVC4590------------------------------ + # %1 - Property type name + # %2 - Property name INVALID_PROPERTY_TYPE: { code: 400, message: "Error: Invalid Property type %1 in property %2.", messageId: "SVC4590" } -#---------SVC4591------------------------------ -# %1 - Property inner type -# %2 - Property name + #---------SVC4591------------------------------ + # %1 - Property inner type + # %2 - Property name INVALID_PROPERTY_INNER_TYPE: { code: 400, message: "Error: Invalid property inner type %1, in property %2", messageId: "SVC4591" } -#---------SVC4592------------------------------ -# %1 - component instance name -# %2 - "resource instance"/"service instance" + #---------SVC4592------------------------------ + # %1 - component instance name + # %2 - "resource instance"/"service instance" COMPONENT_INSTANCE_NOT_FOUND: { code: 404, message: "Error: Requested '%1' %2 was not found.", messageId: "SVC4592" } -#---------SVC4593------------------------------ -# %1 - component instance name -# %2 - "resource instance"/"service instance" -# %3 - "resource/"service"/"product" -# %4 - container name + #---------SVC4593------------------------------ + # %1 - component instance name + # %2 - "resource instance"/"service instance" + # %3 - "resource/"service"/"product" + # %4 - container name COMPONENT_INSTANCE_NOT_FOUND_ON_CONTAINER: { code: 404, message: "Error: Requested '%1' %2 was not found on the %3 '%4'.", messageId: "SVC4593" } -#---------SVC4594------------------------------ -#%1 - requirement / capability -#%2 - requirement name + #---------SVC4594------------------------------ + #%1 - requirement / capability + #%2 - requirement name IMPORT_DUPLICATE_REQ_CAP_NAME: { code: 400, message: "Error: Imported TOSCA template contains more than one %1 named '%2'.", messageId: "SVC4594" } -#---------SVC4595------------------------------ -#%1 - requirement / capability -#%2 - requirement name -#%3 - parent containing the requirement + #---------SVC4595------------------------------ + #%1 - requirement / capability + #%2 - requirement name + #%3 - parent containing the requirement IMPORT_REQ_CAP_NAME_EXISTS_IN_DERIVED: { code: 400, message: "Error: Imported TOSCA template contains %1 '%2' that is already defined by derived template %3.", messageId: "SVC4595" } -#---------SVC4596------------------------------ -# %1 - Data type name + #---------SVC4596------------------------------ + # %1 - Data type name DATA_TYPE_DERIVED_IS_MISSING: { code: 400, message: "Error: Invalid Content. The ancestor data type %1 cannot be found in the system.", messageId: "SVC4596" } -#---------SVC4597------------------------------ -# %1 - Data type name -# %2 - Property names + #---------SVC4597------------------------------ + # %1 - Data type name + # %2 - Property names DATA_TYPE_PROPERTY_ALREADY_DEFINED_IN_ANCESTOR: { code: 400, message: "Error: Invalid Content. The data type %1 contains properties named %2 which are already defined in one of its ancestors.", messageId: "SVC4597" } -#---------SVC4598------------------------------ -# %1 - Data type name + #---------SVC4598------------------------------ + # %1 - Data type name DATA_TYPE_DUPLICATE_PROPERTY: { code: 400, message: "Error: Invalid Content. The data type %1 contains duplicate property.", messageId: "SVC4598" } -#---------SVC4599------------------------------ -# %1 - Data type name -# %2 - Property names + #---------SVC4599------------------------------ + # %1 - Data type name + # %2 - Property names DATA_TYPE_PROEPRTY_CANNOT_HAVE_SAME_TYPE_OF_DATA_TYPE: { code: 400, message: "Error: Invalid Content. The data type %1 contains properties %2 which their type is this data type.", messageId: "SVC4599" } -#---------SVC4600------------------------------ -# %1 - Data type name + #---------SVC4600------------------------------ + # %1 - Data type name DATA_TYPE_CANNOT_HAVE_PROPERTIES: { code: 400, message: "Error: Invalid Content. The data type %1 cannot have properties since it is of type scalar", messageId: "SVC4600" } -#---------SVC4601------------------------------ + #---------SVC4601------------------------------ NOT_TOPOLOGY_TOSCA_TEMPLATE: { code: 400, message: "Error: TOSCA yaml file %1 cannot be modeled to VF as it does not contain 'topology_template.", messageId: "SVC4601" } -#---------SVC4602-------------------------------- -# %1 - yaml file name -# %2 - node_template label -# %3 - node_template type + #---------SVC4602-------------------------------- + # %1 - yaml file name + # %2 - node_template label + # %3 - node_template type INVALID_NODE_TEMPLATE: { code: 400, message: "Error: TOSCA yaml file '%1' contains node_template '%2' of type '%3' that does not represent existing VFC/CP/VL", messageId: "SVC4602" } -#---------SVC4603------------------------------ -# %1 - component type -# %2 - component name -# %3 - state + #---------SVC4603------------------------------ + # %1 - component type + # %2 - component name + # %3 - state ILLEGAL_COMPONENT_STATE: { code: 403, - message: "Error: Component instance of %1 can not be created because the component '%2' is in an illegal state %3.", + message: "Error: Action is not allowed on %1 '%2' because it is in an illegal state %3.", messageId: "SVC4603" } -#---------SVC4604------------------------------ -# %1 - csar file name + #---------SVC4604------------------------------ + # %1 - csar file name CSAR_INVALID: { code: 400, message: "Error: TOSCA CSAR '%1' is invalid. 'TOSCA-Metadata/Tosca.meta' file must be provided.", messageId: "SVC4604" } -#---------SVC4605------------------------------ -# %1 - csar file name + #---------SVC4605------------------------------ + # %1 - csar file name CSAR_INVALID_FORMAT: { code: 400, message: "Error: TOSCA CSAR '%1' is invalid. Invalid 'TOSCA-Metadata/Tosca.meta' file format.", messageId: "SVC4605" } -#---------SVC4606------------------------------ -# %1 - property name -# %2 - property type -# %3 - property innerType -# %4 - default value is + #---------SVC4606------------------------------ + # %1 - property name + # %2 - property type + # %3 - property innerType + # %4 - default value is INVALID_COMPLEX_DEFAULT_VALUE: { code: 400, message: "Error: Invalid default value of property %1. Data type is %2 with inner type %3 and default value found is %4.", messageId: "SVC4606" } -#---------SVC4607------------------------------ -# %1 - csar file name + #---------SVC4607------------------------------ + # %1 - csar file name CSAR_NOT_FOUND: { code: 400, message: "Error: TOSCA CSAR '%1' is not found.", messageId: "SVC4607" } -#---------SVC4608------------------------------ -# %1 - artifact name -# %2 - component type -# %3 - actual component type + #---------SVC4608------------------------------ + # %1 - artifact name + # %2 - component type + # %3 - actual component type MISMATCH_BETWEEN_ARTIFACT_TYPE_AND_COMPONENT_TYPE: { code: 400, message: "Error: Artifact %1 is only compatible with component of type %2, but component type is %3.", messageId: "SVC4608" } -#---------SVC4609------------------------------ -# %1 - "INVALID_JSON" + #---------SVC4609------------------------------ + # %1 - "INVALID_JSON" INVALID_JSON: { code: 400, message: "Error: Uploaded JSON file for %1 artifact is invalid.", messageId: "SVC4609" } -#---------SVC4610------------------------------ -# %1 - csar file name -# %2 - missing file name + #---------SVC4610------------------------------ + # %1 - csar file name + # %2 - missing file name YAML_NOT_FOUND_IN_CSAR: { code: 400, message: "Error - TOSCA CSAR %1 is invalid. TOSCA-Metadata/Tosca.meta refers to file %2 that is not provided.", messageId: "SVC4610" } -#---------SVC4611------------------------------ -# %1 - group name + #---------SVC4611------------------------------ + # %1 - group name GROUP_MEMBER_EMPTY: { code: 400, message: "Error: Invalid Content. Group %1 member list was provided but does not have values", messageId: "SVC4611" } -#---------SVC4612------------------------------ -# %1 - group name + #---------SVC4612------------------------------ + # %1 - group name GROUP_TYPE_ALREADY_EXIST: { code: 409, message: 'Error: Group type %1 already exists.', messageId: "SVC4612" } -#---------SVC4613------------------------------ -# %1 - group name -# %2 - VF name(component name) -# %3 - actual component type [VF] + #---------SVC4613------------------------------ + # %1 - group name + # %2 - VF name(component name) + # %3 - actual component type [VF] GROUP_ALREADY_EXIST: { code: 409, message: "Error: Group with name '%1' already exists in %2 %3.", messageId: "SVC4613" } -#---------SVC4614------------------------------ -# %1 - group type + #---------SVC4614------------------------------ + # %1 - group type GROUP_TYPE_IS_INVALID: { code: 400, message: "Error: Invalid content. Group type %1 does not exist", messageId: "SVC4614" } -#---------SVC4615------------------------------ -# %1 - group name + #---------SVC4615------------------------------ + # %1 - group name GROUP_MISSING_GROUP_TYPE: { code: 400, message: "Error: Invalid Content. Missing Group Type for group '%1'", messageId: "SVC4615" } -#---------SVC4616------------------------------ -# %1 - member name -# %2 - group name -# %3 - VF name -# %4 - component type [VF ] + #---------SVC4616------------------------------ + # %1 - member name + # %2 - group name + # %3 - VF name + # %4 - component type [VF ] GROUP_INVALID_COMPONENT_INSTANCE: { code: 400, message: "Error: Member '%1' listed in group '%2' is not part of '%3' %4.", messageId: "SVC4616" } -#---------SVC4617------------------------------ -# %1 - member name -# %2 - group name -# %3 - group type + #---------SVC4617------------------------------ + # %1 - member name + # %2 - group name + # %3 - group type GROUP_INVALID_TOSCA_NAME_OF_COMPONENT_INSTANCE: { code: 400, message: "Error: member %1 listed in group %2 is not part of allowed members of group type %3.", messageId: "SVC4617" } -#---------SVC4618------------------------------ -# %1 - missing file name -# %2 - csar file name + #---------SVC4618------------------------------ + # %1 - missing file name + # %2 - csar file name ARTIFACT_NOT_FOUND_IN_CSAR: { code: 400, message: "Error: artifact %1 is defined in CSAR %2 manifest but is not provided", @@ -1458,424 +1445,398 @@ errors: message: "Error: artifact %1 in type %2 already exists in type %3.", messageId: "SVC4619" } -#---------SVC4620------------------------------ + #---------SVC4620------------------------------ FAILED_RETRIVE_ARTIFACTS_TYPES: { code: 400, message: "Error: Failed to retrieve list of suported artifact types.", messageId: "SVC4620" } -#---------SVC4621------------------------------ -# %1 - artifact name -# %2 - master + #---------SVC4621------------------------------ + # %1 - artifact name + # %2 - master ARTIFACT_ALRADY_EXIST_IN_MASTER_IN_CSAR: { code: 400, message: "Error: artifact %1 already exists in master %2 .", messageId: "SVC4621" } -#---------SVC4622------------------------------ -# %1 - artifact name -# %2 - artifact type -# %3 - master name -# %4 - master type + #---------SVC4622------------------------------ + # %1 - artifact name + # %2 - artifact type + # %3 - master name + # %4 - master type ARTIFACT_NOT_VALID_IN_MASTER: { code: 400, message: "Error: artifact %1 in type %2 can not be exists under master %3 in type %4.", messageId: "SVC4622" } -#---------SVC4623------------------------------ -# %1 - artifact name -# %2 - artifact type -# %3 - env name -# %4 - existing env + #---------SVC4623------------------------------ + # %1 - artifact name + # %2 - artifact type + # %3 - env name + # %4 - existing env ARTIFACT_NOT_VALID_ENV: { code: 400, message: "Error: Artifact %1 in type %2 with env %3 already exists with another env %4", messageId: "SVC4623" } -#---------SVC4624------------------------------ -# %1 - groups names -# %2 - VF name -# %3 - component type [VF ] + #---------SVC4624------------------------------ + # %1 - groups names + # %2 - VF name + # %3 - component type [VF ] GROUP_IS_MISSING: { code: 400, message: "Error: Invalid Content. The groups '%1' cannot be found under %2 %3.", messageId: "SVC4624" } -#---------SVC4625------------------------------ -# %1 - groups name + #---------SVC4625------------------------------ + # %1 - groups name GROUP_ARTIFACT_ALREADY_ASSOCIATED: { code: 400, message: "Error: Invalid Content. Artifact already associated to group '%1'.", messageId: "SVC4625" } -#---------SVC4626------------------------------ -# %1 - groups name + #---------SVC4626------------------------------ + # %1 - groups name GROUP_ARTIFACT_ALREADY_DISSOCIATED: { code: 400, message: "Error: Invalid Content. Artifact already dissociated from group '%1'.", messageId: "SVC4626" } -#---------SVC4627------------------------------ -# %1 - property name -# %2 - group name -# %3 - group type name + #---------SVC4627------------------------------ + # %1 - property name + # %2 - group name + # %3 - group type name GROUP_PROPERTY_NOT_FOUND: { code: 400, message: "Error: property %1 listed in group %2 is not exist in group type %3.", messageId: "SVC4627" } -#---------SVC4628------------------------------ -# %1 - csarUUID -# %2 - VF name + #---------SVC4628------------------------------ + # %1 - csarUUID + # %2 - VF name VSP_ALREADY_EXISTS: { code: 400, message: "Error: The VSP with UUID %1 was already imported for VF %2. Please select another or update the existing VF.", messageId: "SVC4628" } -#---------SVC4629------------------------------ -# %1 - VF name + #---------SVC4629------------------------------ + # %1 - VF name MISSING_CSAR_UUID: { code: 400, message: "Error: The Csar UUID or payload name is missing for VF %1.", messageId: "SVC4629" } -#---------SVC4630------------------------------ -# %1 - VF name -# %2 - new csarUUID -# %3 - old csarUUID + #---------SVC4630------------------------------ + # %1 - VF name + # %2 - new csarUUID + # %3 - old csarUUID RESOURCE_LINKED_TO_DIFFERENT_VSP: { code: 400, message: "Error: Resource %1 cannot be updated using CsarUUID %2 since the resource is linked to a different VSP with csarUUID %3.", messageId: "SVC4630" } -#---------SVC4631------------------------------ -# %1 - policy name + #---------SVC4631------------------------------ + # %1 - policy name POLICY_TYPE_ALREADY_EXIST: { code: 409, message: "Error: Policy type %1 already exists.", messageId: "SVC4631" } -#---------SVC4632------------------------------ -# %1 - target name -# %2 - policy type name + #---------SVC4632------------------------------ + # %1 - target name + # %2 - policy type name TARGETS_NON_VALID: { code: 400, message: "Error: target %1 listed in policy type %2 is not a group or resource.", messageId: "SVC4632" } -#---------SVC4633------------------------------ -# %1 - policy name + #---------SVC4633------------------------------ + # %1 - policy name TARGETS_EMPTY: { code: 400, message: "Error: Invalid Content. Policy %1 target list was provided but does not have values", messageId: "SVC4633" } -#---------SVC4634------------------------------ + #---------SVC4634------------------------------ DATA_TYPE_CANNOT_BE_EMPTY: { code: 500, message: "Error: Data types are empty. Please import the data types.", messageId: "SVC4634" } -#---------SVC4635------------------------------ -# %1 - csar uuid + #---------SVC4635------------------------------ + # %1 - csar uuid RESOURCE_FROM_CSAR_NOT_FOUND: { code: 400, message: "Error: resource from csar uuid %1 not found", messageId: "SVC4635" } -#---------SVC4636------------------------------ -# %1 - Data type name + #---------SVC4636------------------------------ + # %1 - Data type name DATA_TYPE_CANNOT_BE_UPDATED_BAD_REQUEST: { code: 400, message: 'Error: Data type %1 cannot be upgraded. The new data type does not contain old properties or the type of one of the properties has been changed.', messageId: "SVC4636" } -#-----------SVC4637--------------------------- -#%1 - attribute name + #-----------SVC4637--------------------------- + #%1 - attribute name ATTRIBUTE_NOT_FOUND: { code: 404, message: "Error: Requested '%1' attribute was not found.", messageId: "SVC4637" } -#-----------SVC4638--------------------------- -#%1 - attribute name + #-----------SVC4638--------------------------- + #%1 - attribute name ATTRIBUTE_ALREADY_EXIST: { code: 409, message: "Error: Attribute with '%1' name already exists.", messageId: "SVC4638" } -#-----------SVC4639--------------------------- -#%1 - property name + #-----------SVC4639--------------------------- + #%1 - property name PROPERTY_NAME_ALREADY_EXISTS: { code: 409, message: "Error: Property with '%1' name and different type already exists.", messageId: "SVC4639" } -#-----------SVC4640--------------------------- -#%1 - property name + #-----------SVC4640--------------------------- + #%1 - property name INVALID_PROPERTY: { code: 409, message: "Error: Invalid property received.", messageId: "SVC4640" } -#---------SVC4641----------------------------- -#%1 - invalid filter -#%2 - valid filters + #---------SVC4641----------------------------- + #%1 - invalid filter + #%2 - valid filters INVALID_FILTER_KEY: { code: 400, message: "Error: The filter %1 is not applicable. Please use one of the following filters: %2", messageId: "SVC4641" } -#---------SVC4642----------------------------- -#%1 - asset type -#%2 - filter + #---------SVC4642----------------------------- + #%1 - asset type + #%2 - filter NO_ASSETS_FOUND: { code: 404, message: "No %1 were found to match criteria %2", messageId: "SVC4642" } -#---------SVC4643------------------------------ -# %1 - "Resource"/"Product" -# %2 - "sub-category name" -# %3 - "category name" + #---------SVC4643------------------------------ + # %1 - "Resource"/"Product" + # %2 - "sub-category name" + # %3 - "category name" COMPONENT_SUB_CATEGORY_NOT_FOUND_FOR_CATEGORY: { code: 404, message: "Error: %1 sub-category '%2' not found under category '%3'.", messageId: "SVC4643" } -#---------SVC4644------------------------------ -# %1 - Format + #---------SVC4644------------------------------ + # %1 - Format CORRUPTED_FORMAT: { code: 400, message: "Error: %1 format is corrupted.", messageId: "SVC4644" } -#---------SVC4645------------------------------ -# %1 - "groupType" + #---------SVC4645------------------------------ + # %1 - "groupType" INVALID_VF_MODULE_TYPE: { code: 400, message: "Error: Invalid group type '%1' (should be VfModule).", messageId: "SVC4645" } -#---------SVC4646------------------------------ -# %1 - "groupName" + #---------SVC4646------------------------------ + # %1 - "groupName" INVALID_VF_MODULE_NAME: { code: 400, message: "Error: Invalid Content. Group name '%1' contains invalid characters", messageId: "SVC4646" } -#---------SVC4647------------------------------ -# %1 - "modifiedName" + #---------SVC4647------------------------------ + # %1 - "modifiedName" INVALID_VF_MODULE_NAME_MODIFICATION: { code: 400, message: "Error: Invalid VF Module name modification, can not modify '%1'", messageId: "SVC4647" } -#---------SVC4648------------------------------ -# %1 - "inputId" -# %2 - "componentId" + #---------SVC4648------------------------------ + # %1 - "inputId" + # %2 - "componentId" INPUT_IS_NOT_CHILD_OF_COMPONENT: { code: 400, message: "Error: Input id: '%1' is not child of component id: '%2'", messageId: "SVC4648" } -#---------SVC4649------------------------------ -# %1 - "groupName" + #---------SVC4649------------------------------ + # %1 - "groupName" GROUP_HAS_CYCLIC_DEPENDENCY: { code: 400, message: "Error: The group '%1' has cyclic dependency", messageId: "SVC4649" } -#---------SVC4650------------------------------ -# %1 - "Component Type" -# %2 - <ServiceName> -# %3 - error description + #---------SVC4650------------------------------ + # %1 - "Component Type" + # %2 - <ServiceName> + # %3 - error description AAI_ARTIFACT_GENERATION_FAILED: { code: 500, message: "Error: %1 %2 automatic generation of artifacts failed. Description: %3", messageId: "SVC4650" } -#---------SVC4651------------------------------ + #---------SVC4651------------------------------ PARENT_RESOURCE_DOES_NOT_EXTEND: { code: 400, message: "Error: Once resource is certified, derived_from can be changed only to a sibling", messageId: "SVC4651" } -#---------SVC4652------------------------------ -# %1 - resource/service + #---------SVC4652------------------------------ + # %1 - resource/service COMPONENT_INVALID_SUBCATEGORY: { code: 400, message: "Error: Invalid Content. Invalid %1 sub category.", messageId: "SVC4652" } -#---------SVC4653------------------------------ -# %1 - group instance uniqueId -# %2 - service uniqueId + #---------SVC4653------------------------------ + # %1 - group instance uniqueId + # %2 - service uniqueId GROUP_INSTANCE_NOT_FOUND_ON_COMPONENT_INSTANCE: { code: 404, message: "Error: Requested group instance %1 was not found on component %2.", messageId: "SVC4653" } -#---------SVC4654------------------------------ -# %1 - group property name -# %2 - valid min limit value -# %3 - valid max limit value + #---------SVC4654------------------------------ + # %1 - group property name + # %2 - valid min limit value + # %3 - valid max limit value INVALID_GROUP_MIN_MAX_INSTANCES_PROPERTY_VALUE: { code: 400, message: "Error: Value of %1 must be not higher than %2, and not lower than %3.", messageId: "SVC4654" } -#---------SVC4655------------------------------ -# %1 - group property name -# %2 - valid min limit value -# %3 - valid max limit value + #---------SVC4655------------------------------ + # %1 - group property name + # %2 - valid min limit value + # %3 - valid max limit value INVALID_GROUP_INITIAL_COUNT_PROPERTY_VALUE: { code: 400, message: "Error: Value of %1 must be between %2 and %3.", messageId: "SVC4655" } -#---------SVC4656------------------------------ -# %1 - group property name -# %2 - lower/higher -# %3 - valid max/min value + #---------SVC4656------------------------------ + # %1 - group property name + # %2 - lower/higher + # %3 - valid max/min value INVALID_GROUP_PROPERTY_VALUE_LOWER_HIGHER: { code: 400, message: "Error: Value of %1 must be %2 or equals to %3.", messageId: "SVC4656" } -#---------SVC4657------------------------------ -# %1 - certificationRequest / startTesting + #---------SVC4657------------------------------ + # %1 - certificationRequest / startTesting RESOURCE_VFCMT_LIFECYCLE_STATE_NOT_VALID: { code: 400, message: "Error - Lifecycle state %1 is not valid for resource of type VFCMT", messageId: "SVC4657" } -#---------SVC4658------------------------------ -# %1 – asset type [service / resource ] -# %2 – main asset uuid -# %3 – not found asset type [service / resource] -# %4 – not found asset name + #---------SVC4658------------------------------ + # %1 – asset type [service / resource ] + # %2 – main asset uuid + # %3 – not found asset type [service / resource] + # %4 – not found asset name ASSET_NOT_FOUND_DURING_CSAR_CREATION: { code: 400, message: "Error: CSAR packaging failed for %1 %2. %3 %4 was not found", messageId: "SVC4658" } -#---------SVC4659------------------------------ -# %1 – asset type [service / resource ] -# %2 – main asset uuid -# %3 – Artifact name -# %4 – Artifact uuid + #---------SVC4659------------------------------ + # %1 – asset type [service / resource ] + # %2 – main asset uuid + # %3 – Artifact name + # %4 – Artifact uuid ARTIFACT_PAYLOAD_NOT_FOUND_DURING_CSAR_CREATION: { code: 400, message: "Error: CSAR packaging failed for %1 %2. Artifact %3 [%4] was not found", messageId: "SVC4659" } -#---------SVC4660------------------------------ -# %1 - assetType -# %2 - matching generic node type name + #---------SVC4660------------------------------ + # %1 - assetType + # %2 - matching generic node type name GENERIC_TYPE_NOT_FOUND: { code: 404, message: "Creation of %1 failed. Generic type %2 was not found", messageId: "SVC4660" } -#---------SVC4661------------------------------ -# %1 - assetType -# %2 - matching generic node type name + #---------SVC4661------------------------------ + # %1 - assetType + # %2 - matching generic node type name TOSCA_SCHEMA_FILES_NOT_FOUND: { code: 400, message: "Error: CSAR packaging failed. TOSCA schema files for SDC-Version: %1 and Conformance-Level %2 were not found", messageId: "SVC4661" } -#---------SVC4662------------------------------ -# %1 - file name -# %2 - parser error + #---------SVC4662------------------------------ + # %1 - file name + # %2 - parser error TOSCA_PARSE_ERROR: { code: 400, message: "Error: Invalid TOSCA template in file %1. %2", messageId: "SVC4662" } -#---------SVC4663------------------------------ -# %1 - max length + #---------SVC4663------------------------------ + # %1 - max length RESOURCE_VENDOR_MODEL_NUMBER_EXCEEDS_LIMIT: { code: 400, message: "Error: Invalid Content. Resource vendor model number exceeds limit of %1 characters.", messageId: "SVC4663" } -#---------SVC4664------------------------------ + #---------SVC4664------------------------------ INVALID_RESOURCE_VENDOR_MODEL_NUMBER: { code: 400, message: 'Error: Invalid Content. Resource vendor model number is not allowed to contain characters like <>:"\/|?* and space characters other than regular space.', messageId: "SVC4664" } -#---------SVC4665------------------------------ -# %1 - max length - SERVICE_TYPE_EXCEEDS_LIMIT: { - code: 400, - message: "Error: Invalid Content. Service type exceeds limit of %1 characters.", - messageId: "SVC4665" - } -#---------SVC4666------------------------------ - INVALID_SERVICE_TYPE: { - code: 400, - message: 'Error: Invalid Content. Serivce type is not allowed to contain characters like <>:"\/|?* and space characters other than regular space.', - messageId: "SVC4666" - } -#---------SVC4667------------------------------ -# %1 - max length - SERVICE_ROLE_EXCEEDS_LIMIT: { - code: 400, - message: "Error: Invalid Content. Service role exceeds limit of %1 characters.", - messageId: "SVC4667" - } -#---------SVC4668------------------------------ - INVALID_SERVICE_ROLE: { - code: 400, - message: 'Error: Invalid Content. Service role is not allowed to contain characters like <>:"\/|?* and space characters other than regular space.', - messageId: "SVC4668" - } -#---------SVC4669----------------------------- + #---------SVC4669----------------------------- INVALID_RESOURCE_TYPE: { code: 400, message: "Error: Invalid resource type.", messageId: "SVC4669" } -#---------SVC4670------------------------------ + #---------SVC4670------------------------------ ARTIFACT_NAME_INVALID: { code: 400, message: "Error: Artifact name is invalid.", messageId: "SVC4670" } -#---------SVC4671------------------------------ -# %1 - VSP name -# %2 - VFC name + #---------SVC4671------------------------------ + # %1 - VSP name + # %2 - VFC name CFVC_LOOP_DETECTED: { code: 400, message: 'Error: VSP %1 cannot be imported. The VSP contains internal loop in VFC %2', messageId: "SVC4671" } -#---------SVC4672------------------------------ -# %1 - capability uniqueId -# %2 - instance uniqueId -# %3 - container uniqueId + #---------SVC4672------------------------------ + # %1 - capability uniqueId + # %2 - instance uniqueId + # %3 - container uniqueId CAPABILITY_OF_INSTANCE_NOT_FOUND_ON_CONTAINER: { code: 404, message: "Error: Requested capability %1 of instance %2 was not found on the container %3.", messageId: "SVC4672" } -#---------SVC4673------------------------------ -# %1 - requirement uniqueId -# %2 - instance uniqueId -# %3 - container uniqueId + #---------SVC4673------------------------------ + # %1 - requirement uniqueId + # %2 - instance uniqueId + # %3 - container uniqueId REQUIREMENT_OF_INSTANCE_NOT_FOUND_ON_CONTAINER: { code: 404, message: "Error: Requested requirement %1 of instance %2 was not found on the container %3.", messageId: "SVC4673" } -#---------SVC4674----------------------------- -# %1 - relation Id -# %2 - container uniqueId + #---------SVC4674----------------------------- + # %1 - relation Id + # %2 - container uniqueId RELATION_NOT_FOUND: { code: 404, message: "Error: Requested relation %1 was not found on the container %2.", @@ -1883,168 +1844,168 @@ errors: } -#---------SVC4675------------------------------ + #---------SVC4675------------------------------ INVALID_SERVICE_STATE: { code: 409, message: "Service state is invalid for this action", messageId: "SVC4675" } -#---------SVC4676------------------------------ + #---------SVC4676------------------------------ INVALID_RESPONSE_FROM_PROXY: { code: 502, message: "Error: The server was acting as a gateway or proxy and received an invalid response from the upstream server", messageId: "SVC4676" } -#---------SVC4677------------------------------ + #---------SVC4677------------------------------ API_RESOURCE_NOT_FOUND: { code: 404, message: "Error: Requested '%1' was not found.", messageId: "SVC4677" } -#---------SVC4678------------------------------ + #---------SVC4678------------------------------ BAD_REQUEST_MISSING_RESOURCE: { code: 400, message: "Error: The required resource name/id is missing in the request", messageId: "SVC4678" } -#---------SVC4679------------------------------ -# %1 forwarding path name maximum length + #---------SVC4679------------------------------ + # %1 forwarding path name maximum length FORWARDING_PATH_NAME_MAXIMUM_LENGTH: { code: 400, message: "Forwarding path name too long, , maximum allowed 200 characters : '%1'.", messageId: "SVC4679" } -#---------SVC4680------------------------------ -# %1 Forwarding path name already in use + #---------SVC4680------------------------------ + # %1 Forwarding path name already in use FORWARDING_PATH_NAME_ALREADY_IN_USE: { code: 400, message: "Forwarding path name already in use : '%1'.", messageId: "SVC4680" } -#---------SVC4681------------------------------ -# %1 Forwarding path name empty + #---------SVC4681------------------------------ + # %1 Forwarding path name empty FORWARDING_PATH_NAME_EMPTY: { code: 400, message: "Forwarding Path Name can't be empty .", messageId: "SVC4681" } -#---------SVC4682------------------------------ -# %1 - resource uniqueId -# %2 - resource component type + #---------SVC4682------------------------------ + # %1 - resource uniqueId + # %2 - resource component type RESOURCE_CANNOT_CONTAIN_POLICIES: { code: 400, message: "Error: The resource %1 type of %2 cannot contain policies.", messageId: "SVC4682" } -#---------SVC4683------------------------------ -# %1 - policy uniqueId -# %2 - component uniqueId + #---------SVC4683------------------------------ + # %1 - policy uniqueId + # %2 - component uniqueId POLICY_NOT_FOUND_ON_CONTAINER: { code: 404, message: "Error: Requested policy %1 was not found on the container %2.", messageId: "SVC4683" -} -#---------SVC4684------------------------------ -# %1 - policy name + } + #---------SVC4684------------------------------ + # %1 - policy name INVALID_POLICY_NAME: { code: 400, message: "Error: Invalid policy name %1 received.", messageId: "SVC4684" } -#---------SVC4685------------------------------ -# %1 - policy name + #---------SVC4685------------------------------ + # %1 - policy name POLICY_NAME_ALREADY_EXIST: { code: 409, message: "Error: The policy with the name %1 already exists.", messageId: "SVC4685" } -#---------SVC4686------------------------------ -# %1 - policy name + #---------SVC4686------------------------------ + # %1 - policy name POLICY_TARGET_DOES_NOT_EXIST: { code: 400, message: "Error: The targets %1 are not valid, all targets have to be on the topologyTemplate.", messageId: "SVC4686" } -#---------SVC4687------------------------------ -# %1 - policy type -# %2 - component type + #---------SVC4687------------------------------ + # %1 - policy type + # %2 - component type EXCLUDED_POLICY_TYPE: { code: 400, message: "Error: The policy of the type %1 excluded to add to a component of the type %2.", messageId: "SVC4687" } #---------SVC4688------------------------------ -# %1 - group type -# %2 - component type + # %1 - group type + # %2 - component type GROUP_TYPE_ILLEGAL_PER_COMPONENT: { code: 400, message: "Error: group type %1 not permitted in component of type %2", messageId: "SVC4688" } #---------SVC4689------------------------------ -# %1 - group type -# %2 - component type + # %1 - group type + # %2 - component type POLICY_TARGET_TYPE_DOES_NOT_EXIST: { code: 400, message: "Error: The target types %1 are not valid.", messageId: "SVC4689" } -#---------SVC4690------------------------------ -# %1 forwarding path protocol maximum length + #---------SVC4690------------------------------ + # %1 forwarding path protocol maximum length FORWARDING_PATH_PROTOCOL_MAXIMUM_LENGTH: { code: 400, message: "Forwarding path protocol too long, , maximum allowed 200 characters : '%1'.", messageId: "SVC4690" } -#---------SVC4691------------------------------ -# %1 forwarding path destination port maximum length + #---------SVC4691------------------------------ + # %1 forwarding path destination port maximum length FORWARDING_PATH_DESTINATION_PORT_MAXIMUM_LENGTH: { code: 400, message: "Forwarding path destination port too long, , maximum allowed 200 characters : '%1'.", messageId: "SVC4691" } -#---------POL4692------------------------------ + #---------POL4692------------------------------ MISSING_OLD_COMPONENT_INSTANCE: { code: 400 , message: "Error: Missing 'componentInstanceId' HTTP param.", messageId: "POL4692" } -#---------POL4693------------------------------ + #---------POL4693------------------------------ MISSING_NEW_COMPONENT_INSTANCE: { code: 400 , message: "Error: Missing 'newComponentInstanceId' HTTP param.", messageId: "POL4693" } -#---------SVC4694------------------------------ -# %1 External Reference Value + #---------SVC4694------------------------------ + # %1 External Reference Value EXT_REF_NOT_FOUND: { code: 404, message: "Error: External Reference '%1' was not found.", messageId: "SVC4694" } -#---------SVC4695----------------------------- -# %1 - Interface Operation Name + #---------SVC4695----------------------------- + # %1 - Interface Operation Name INTERFACE_OPERATION_NAME_ALREADY_IN_USE: { code: 409, message: "Error: Interface Operation name '%1' already in use, Your current changes will not be saved.", messageId: "SVC4695" } -#---------SVC4696----------------------------- -# %1 - Interface Operation Name + #---------SVC4696----------------------------- + # %1 - Interface Operation Name INTERFACE_OPERATION_NAME_INVALID: { code: 400, message: "Error: Interface Operation name '%1' is Invalid, Operation name should not contain special character, space and should not be greater than 200 characters.", messageId: "SVC4696" } -#---------SVC4697----------------------------- + #---------SVC4697----------------------------- INTERFACE_OPERATION_NAME_MANDATORY: { code: 400, message: "Error: Interface Operation name is mandatory, Operation name can't be empty.", @@ -2057,14 +2018,14 @@ errors: message: "Error: Invalid input, only one operation is allowed in local interface type '%1'.", messageId: "SVC4698" } -#---------SVC4699----------------------------- -# %1 - Interface Operation input parameter name + #---------SVC4699----------------------------- + # %1 - Interface Operation input parameter name INTERFACE_OPERATION_INPUT_NAME_ALREADY_IN_USE: { - code: 400, - message: "Error: Interface Operation input parameter name '%1' already in use, Your current changes will not be saved.", - messageId: "SVC4699" + code: 400, + message: "Error: Interface Operation input parameter name '%1' already in use, Your current changes will not be saved.", + messageId: "SVC4699" } -#---------SVC4700----------------------------- + #---------SVC4700----------------------------- INTERFACE_OPERATION_INPUT_NAME_MANDATORY: { code: 400, message: "Error: Interface operation input parameter name should not be empty.", @@ -2077,61 +2038,68 @@ errors: message: "Error: Interface operation not found in the component '%1'.", messageId: "SVC4701" } -#---------SVC4702----------------------------- + #---------SVC4702----------------------------- INTERFACE_OPERATION_NOT_DELETED: { code: 400, message: "Error: Failed to delete interface operation.", messageId: "SVC4702" } -#-----------SVC4692--------------------------- + #-----------SVC4692--------------------------- RESOURCE_LIFECYCLE_STATE_NOT_VALID: { code: 400, message: "Error: Lifecycle state %1 is not valid for resource", messageId: "SVC4692" } -#-----------SVC4693--------------------------- -#%1 - component name + #-----------SVC4693--------------------------- + #%1 - component name COMPONENT_IS_ARCHIVED: { code: 400, - message: "Error: Component %1 is arhived", + message: "Error: Component %1 is archived", messageId: "SVC4693" } -#-----------SVC4703--------------------------- -#%1 - component name + #-----------SVC4703--------------------------- + #%1 - component name COMPONENT_IS_NOT_HIHGEST_CERTIFIED: { code: 400, message: "Error: Component %1 is not highest certified", messageId: "SVC4703" } -#---------SVC4704------------------------------ -# %1 - "service"/"VF" -# %2 - "Resource name" + #---------SVC4704------------------------------ + # %1 - "service"/"VF" + # %2 - "Resource name" ARCHIVED_ORIGINS_FOUND: { code: 403, message: "Error: Action is not permitted as your '%1' '%2' includes archived resources", messageId: "SVC4704" } -#---------SVC4705------------------------------ -# %1-artifact name + #---------SVC4705------------------------------ + # %1-artifact name ARTIFACT_PAYLOAD_EMPTY: { code: 400, message: "Error: Invalid content. Uploaded file %1 is empty. Please retry with the correct file.", messageId: "SVC4705" } -#---------SVC4706------------------------------ -# %1-input(s) name(s) string + #---------SVC4800------------------------------ + # %1 - "component id" + UPDATE_CATALOG_FAILED: { + code: 403, + message: "Error: update catalog for component '%1' failed.", + messageId: "SVC4800" + } + #---------SVC4706------------------------------ + # %1-input(s) name(s) string INPUTS_NOT_FOUND: { code: 400, message: "Error: missing input value(s) %1.", messageId: "SVC4706" } #---------SVC4707----------------------------- -# %1 – asset type [service / resource ] -# %2 – main asset uuid + # %1 – asset type [service / resource ] + # %2 – main asset uuid ERROR_DURING_CSAR_CREATION: { - code: 404, - message: "Error: CSAR packaging failed for %1 %2.", - messageId: "SVC4706" + code: 404, + message: "Error: CSAR packaging failed for %1 %2.", + messageId: "SVC4706" } #---------SVC4708----------------------------- # %1 - Interface Operation input property name, component type @@ -2160,18 +2128,128 @@ errors: message: "Error: Interface not found in the component '%1'.", messageId: "SVC4711" } + #---------SVC4709----------------------------- + INVALID_PROPERTY_CONSTRAINTS: { + # %1 – property constraints type + # %2 – received property constraints value + # %3 – property type + code: 400, + message: "Error: Invalid %1 %2 for the type %3 have been received.", + messageId: "SVC4709" + } + #---------SVC4710----------------------------- + INVALID_PROPERTY_CONSTRAINTS_FORMAT: { + # %1 – received property constraints json section + code: 400, + message: "Error: Invalid format of the received property constraints section: %1. The property constraints section should be a list.", + messageId: "SVC4710" + } + #---------SVC4711----------------------------- + CANNOT_DELETE_VALID_VALUES: { + # %1 – property constraints type + # %2 – missing valid values + code: 400, + message: "Error: Deletion of existing %1 is not permitted on an update. Missing values: %2", + messageId: "SVC4711" + } + #---------SVC4712------------------------------ + MISSING_PROPERTY_NAME: { + code: 400 , + message: "Error: Invalid Content. Missing mandatory parameter 'name'." , + messageId: "SVC4712" + } + #---------SVC4713------------------------------ + MISSING_PROPERTY_VALUE: { + code: 400 , + message: "Error: Invalid Content. Missing mandatory parameter 'value'." , + messageId: "SVC4713" + } + + #---------SVC4712--------------------------- + INVALID_INSTANTIATION_TYPE: { + code: 400, + message: "Invalid instantiationType: %1", + messageId: "SVC4712" + } + + #----------SVC4713--------------------------- + MISSING_ECOMP_GENERATED_NAMING: { + code: 400, + message: "Missing ecompGeneratedNaming property", + messageId: "SVC4713" + } + + #-----------SVC4714-------------------------- + NAMING_POLICY_EXCEEDS_LIMIT: { + code: 400, + message: "Error: Invalid Content. Naming policy exceeds limit of %1 characters.", + messageId: "SVC4714" + } + + #---------SVC4715------------------------------ + INVALID_NAMING_POLICY: { + code: 400, + message: 'Error: Invalid Content. Naming policy is not allowed to contain characters like <>:"\/|?* and space characters other than regular space.', + messageId: "SVC4715" + } + + #---------SVC4716------------------------------ + INVALID_ENVIRONMENT_CONTEXT: { + code: 400, + message: 'Error: Invalid Environment context: %1', + messageId: "SVC4716" + } + + #---------SVC4717------------------------------ + UNSUPPORTED_DISTRIBUTION_STATUS: { + code: 400, + message: 'Error: Unsupported distribution action: %1', + messageId: "SVC4717" + } + #---------SVC4718------------------------------ + CONTAINER_CANNOT_CONTAIN_INSTANCE: { + # %1 - "container type" + # %2- “component type” + code: 400 , + message: "Error : %1 can’t contain component instance %2" , + messageId: "SVC4718" + } + #---------SVC4719------------------------------ + CONTAINER_CANNOT_CONTAIN_COMPONENT_IN_STATE: { + # %1 - "container type" + # %2- "lifecycle state" + code: 400 , + message: "Error: Container %1 can’t contain component in state %2" , + messageId: "SVC4719" + } + + #---------SVC4720------------------------------ + MISSING_MANDATORY_PROPERTY: { + # %1 - "property name" + code: 400 , + message: "Error: Missing mandatory %1 property" , + messageId: "SVC4720" + } + + #---------SVC4721------------------------------ + MANDATORY_PROPERTY_MISSING_VALUE: { + # %1 - "property name" + code: 400 , + message: "Error: Missing value for the mandatory %1 property" , + messageId: "SVC4721" + } #---------SVC4712----------------------------- INTERFACE_LIFECYCLE_TYPES_NOT_FOUND: { - code: 404, - message: "Error: Interface Lifecycle types not found.", - messageId: "SVC4712" + code: 404, + message: "Error: Interface Lifecycle types not found.", + messageId: "SVC4712" } #---------SVC4713----------------------------- # %1 - Interface Operation Name INTERFACE_OPERATION_INVALID_FOR_GLOBAL_TYPE: { - code: 400, - message: "Error: Invalid input, only pre-defined operation names are allowed in global interface type '%1'", - messageId: "SVC4713" + code: 400, + message: "Error: Invalid input, only pre-defined operation names are allowed in global interface type '%1'", + messageId: "SVC4713" } #---------SVC4714----------------------------- @@ -2284,9 +2362,23 @@ errors: } #---------SVC4729------------------------------ - # %1 - resource Id + # %1 - resource Id CAPABILITY_PROPERTIES_NOT_FOUND: { code: 400, message: "Error: Capability properties not found in the resource '%1'.", messageId: "SVC4729" - }
\ No newline at end of file + } +#---------SVC4730------------------------------ + # %1 - property name + PROPERTY_EXCEEDS_LIMIT: { + code: 400, + message: "Error: Invalid Content. %1 exceeds limit.", + messageId: "SVC4722" + } +#---------SVC4731------------------------------ + INVALID_PROPERY: { + # %1 - property name + code: 400, + message: 'Error: Invalid Content. %1 has invalid format.', + messageId: "SVC4723" + } diff --git a/catalog-be/src/main/resources/config/logback.xml b/catalog-be/src/main/resources/config/logback.xml index 7044d345c5..2098836dd3 100644 --- a/catalog-be/src/main/resources/config/logback.xml +++ b/catalog-be/src/main/resources/config/logback.xml @@ -1,315 +1,253 @@ <?xml version="1.0" encoding="UTF-8"?> <configuration scan="true" scanPeriod="5 seconds"> - <property scope="system" name="ECOMP-component-name" value="SDC" /> - <property scope="system" name="ECOMP-subcomponent-name" value="SDC-BE" /> - <property file="${config.home}/catalog-be/configuration.yaml" /> - <property scope="context" name="enable-all-log" value="false" /> - - <!-- value used by pattern field list (| - is inter-field separator, || - unavailable or not applicable field value) (m - mandatory, o- optional)--> - <!--timestamp(m)| requestID(m)| serviceInstanceID(o)| threadID(m)| physicalServerName(o)| serviceName(m)| userID(m)| logLevel(m)| severity(o)| serverIpAddress(m)| serverName(m)| clientIpAddress(o)| className(m)| timer(o)| detailedMessage(o)--> - <property name="default-log-pattern" - value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{BeginTimestamp}|%X{EndTimestamp}|%X{uuid}|%X{serviceInstanceID}|%thread|%X{ServerName}|%X{ServiceName}|${ECOMP-subcomponent-name}|%X{userId}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%level|%X{alarmSeverity}|%X{localAddr}|%X{ElapsedTime}|${beFqdn}|%X{remoteAddr}|%logger{35}|%X{timer}|ActivityType=<%M>, Desc=<%msg>%n" /> - - <property name="error-log-pattern" - value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{ErrorCategory}|%X{ErrorCode}|%msg|%n" /> - - <property name="audit-log-pattern" value="%X{AuditBeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|ActivityType=<%M>, Desc=<%msg>%n" /> - - <property name="metric-log-pattern" value="%X{MetricBeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|ActivityType=<%M>, Desc=<%msg>%n" /> - - <property name="debug-log-pattern" value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%msg|^\n%n"/> - - <!-- All log --> - <if condition='property("enable-all-log").equalsIgnoreCase("true")'> - <then> - <appender name="ALL_ROLLING" - class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log - </file> - - <rollingPolicy - class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> - <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log.%i - </fileNamePattern> - <minIndex>1</minIndex> - <maxIndex>10</maxIndex> - </rollingPolicy> - - <triggeringPolicy - class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> - <maxFileSize>20MB</maxFileSize> - </triggeringPolicy> - <encoder> - <pattern>${default-log-pattern}</pattern> - </encoder> - </appender> - - <appender name="ASYNC_ALL" class="ch.qos.logback.classic.AsyncAppender"> - <appender-ref ref="ALL_ROLLING" /> - </appender> - </then> - </if> - - <!-- Error log --> - <appender name="ERROR_ROLLING" - class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log - </file> - - <!-- Audit messages filter - deny audit messages --> - <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> - <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator"> - <marker>AUDIT_MARKER</marker> - </evaluator> - <onMismatch>NEUTRAL</onMismatch> - <onMatch>DENY</onMatch> - </filter> - - <!-- Transaction messages filter - deny Transaction messages --> - <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> - <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator"> - <marker>TRANSACTION_MARKER</marker> - </evaluator> - <onMismatch>NEUTRAL</onMismatch> - <onMatch>DENY</onMatch> - </filter> - - <!-- deny all events with a level below INFO, that is TRACE and DEBUG --> - <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> - <level>INFO</level> - </filter> - - <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> - <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log.%i - </fileNamePattern> - <minIndex>1</minIndex> - <maxIndex>10</maxIndex> - </rollingPolicy> - - <triggeringPolicy - class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> - <maxFileSize>20MB</maxFileSize> - </triggeringPolicy> - <encoder> - <pattern>${error-log-pattern}</pattern> - </encoder> - </appender> - - <!-- Debug log --> - <appender name="DEBUG_ROLLING" - class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log - </file> - - <!-- No need to deny audit messages - they are INFO only, will be denied - anyway --> - <!-- Transaction messages filter - deny Transaction messages, there are - some DEBUG level messages among them --> - <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> - <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator"> - <marker>TRANSACTION_MARKER</marker> - </evaluator> - <onMismatch>NEUTRAL</onMismatch> - <onMatch>DENY</onMatch> - </filter> - - <!-- accept DEBUG and TRACE level --> - <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> - <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator"> - <expression> - e.level.toInt() <= DEBUG.toInt() - </expression> - </evaluator> - <OnMismatch>DENY</OnMismatch> - <!--<OnMatch>NEUTRAL</OnMatch>--> - <OnMatch>ACCEPT</OnMatch> - </filter> - - <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> - <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log.%i - </fileNamePattern> - <minIndex>1</minIndex> - <maxIndex>10</maxIndex> - </rollingPolicy> - - <triggeringPolicy - class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> - <maxFileSize>20MB</maxFileSize> - </triggeringPolicy> - <encoder> - <pattern>${debug-log-pattern}</pattern> - </encoder> - </appender> - - - <!-- ASDC debug by package--> - <appender name="PACKAGE_DEBUG_ROLLING" - class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug_by_package.log - </file> - - <!-- No need to deny audit messages - they are INFO only, will be denied - anyway --> - <!-- Transaction messages filter - deny Transaction messages, there are - some DEBUG level messages among them --> - <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> - <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator"> - <marker>TRANSACTION_MARKER</marker> - </evaluator> - <onMismatch>NEUTRAL</onMismatch> - <onMatch>DENY</onMatch> - </filter> - - <!-- accept DEBUG and TRACE level --> - <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> - <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator"> - <expression> - e.level.toInt() <= DEBUG.toInt() - </expression> - </evaluator> - <OnMismatch>DENY</OnMismatch> - <OnMatch>NEUTRAL</OnMatch> - </filter> - - <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> - <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug_by_package.log.%i - </fileNamePattern> - <minIndex>1</minIndex> - <maxIndex>10</maxIndex> - </rollingPolicy> - - <triggeringPolicy - class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> - <maxFileSize>20MB</maxFileSize> - </triggeringPolicy> - <encoder> - <pattern>${debug-log-pattern}</pattern> - </encoder> - </appender> - - <!-- Audit log --> - <appender name="AUDIT_ROLLING" - class="ch.qos.logback.core.rolling.RollingFileAppender"> - - <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log - </file> - - <!-- Audit messages filter - accept audit messages --> - <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> - <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator"> - <marker>AUDIT_MARKER</marker> - <marker>AUDIT</marker> - </evaluator> - <onMismatch>DENY</onMismatch> - <onMatch>ACCEPT</onMatch> - </filter> - - <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> - <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log.%i - </fileNamePattern> - <minIndex>1</minIndex> - <maxIndex>10</maxIndex> - </rollingPolicy> - - <triggeringPolicy - class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> - <maxFileSize>20MB</maxFileSize> - </triggeringPolicy> - <encoder> - <pattern>${audit-log-pattern}</pattern> - </encoder> - </appender> - - <!-- Metrics log --> - <appender name="METRICS_ROLLING" - class="ch.qos.logback.core.rolling.RollingFileAppender"> - - <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log - </file> - - <!-- Metric messages filter - accept metric messages --> - <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> - <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator"> - <marker>METRICS</marker> - </evaluator> - <onMismatch>DENY</onMismatch> - <onMatch>ACCEPT</onMatch> - </filter> - - <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> - <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log.%i - </fileNamePattern> - <minIndex>1</minIndex> - <maxIndex>10</maxIndex> - </rollingPolicy> - - <triggeringPolicy - class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> - <maxFileSize>20MB</maxFileSize> - </triggeringPolicy> - <encoder> - <pattern>${metric-log-pattern}</pattern> - </encoder> - </appender> - - <!-- SdncTransaction log --> - <appender name="TRANSACTION_ROLLING" - class="ch.qos.logback.core.rolling.RollingFileAppender"> - - <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/transaction.log - </file> - - <!-- Transaction messages filter - accept audit messages --> - <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> - <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator"> - <marker>TRANSACTION_MARKER</marker> - </evaluator> - <onMismatch>DENY</onMismatch> - <onMatch>ACCEPT</onMatch> - </filter> - - <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> - <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/transaction.log.%i - </fileNamePattern> - <minIndex>1</minIndex> - <maxIndex>10</maxIndex> - </rollingPolicy> - - <triggeringPolicy - class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> - <maxFileSize>20MB</maxFileSize> - </triggeringPolicy> - <encoder> - <pattern>${default-log-pattern}</pattern> - </encoder> - </appender> - - <!-- Asynchronicity Configurations --> - <appender name="ASYNC_DEBUG" class="ch.qos.logback.classic.AsyncAppender"> - <appender-ref ref="DEBUG_ROLLING" /> - </appender> - - <appender name="ASYNC_TRANSACTION" class="ch.qos.logback.classic.AsyncAppender"> - <appender-ref ref="TRANSACTION_ROLLING" /> - </appender> - - <appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender"> - <appender-ref ref="ERROR_ROLLING" /> - </appender> - - <root level="INFO"> - <appender-ref ref="ASYNC_ERROR" /> - <appender-ref ref="ASYNC_DEBUG" /> - <appender-ref ref="AUDIT_ROLLING" /> - <appender-ref ref="ASYNC_TRANSACTION" /> - <appender-ref ref="METRICS_ROLLING" /> - <if condition='property("enable-all-log").equalsIgnoreCase("true")'> - <then> - <appender-ref ref="ALL_ROLLING" /> - </then> - </if> - </root> - - <logger name="org.openecomp.sdc" level="INFO" /> -</configuration>
\ No newline at end of file + <property scope="system" name="ECOMP-component-name" value="SDC"/> + <property scope="system" name="ECOMP-subcomponent-name" value="SDC-BE"/> + <property file="${config.home}/catalog-be/configuration.yaml"/> + <property scope="context" name="enable-all-log" value="false"/> + <property name="p_msg" value="%replace(%replace(%replace(%replace(%msg){'\t','\\\\t'}){'\n', '\\\\n'}){'\\\|', '-'}){'\r','\\\\r'}"/> + <property name="p_ex" value="%replace(%replace(%replace(%replace(%exception{full}){'\t','\\\\t'}){'\n', '\\\\n'}){'\\\|', '-'}){'\r','\\\\r'}"/> + <property name="p_debugInfo" value="%replace(%replace(%replace(%replace(%thread#%level#%logger{35}#%msg){'\t','\\\\t'}){'\n', '\\\\n'}){'\\\|', '-'}){'\r','\\\\r'}"/> + + <property name="all-log-pattern" + value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{BeginTimestamp}|%X{EndTimestamp}|%X{uuid}|%X{serviceInstanceID}|%thread|%X{ServerName}|%X{ServiceName}|${ECOMP-subcomponent-name}|%X{userId}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceID}|%level|%X{alarmSeverity}|%X{localAddr}|%X{ElapsedTime}|${beFqdn}|%X{remoteAddr}|%logger{35}|%X{timer}|ActivityType=<%M>, Desc=<${p_msg}>%n"/> + + <property name="debug-log-pattern" + value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestID}|${p_debugInfo} ${p_ex}|^\n%n%nopex"/> + + <property name="error-log-pattern" + value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestID}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{ErrorCategory}|%X{ErrorCode}|${p_msg} ${p_ex}|%n%nopex"/> + + <property name="audit-log-pattern" + value="%X{EntryTimestamp}|%X{LogTimestamp}|%X{RequestID}|%X{ServiceInstanceID}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{Severity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%logger{35}|%X{Unused}|%X{ProcessKey}|%marker|InvocationID=%X{InvocationID}|%X{CustomField3}|%X{CustomField4}|ActivityType=<%M>, Desc=<${p_msg}>%n"/> + + <property name="metric-log-pattern" + value="%X{InvokeTimestamp}|%X{EndTimestamp}|%X{RequestID}|%X{ServiceInstanceID}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceID}|%.-5level|%X{Severity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|||%X{ClassName}|%X{Unused}|%X{ProcessKey}|%marker|InvocationID=%X{OutgoingInvocationId}|%X{CustomField3}|%X{CustomField4}|ActivityType=<%M>, Desc=<%msg>%n" /> + + <property name="supportability-log-pattern" + value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{SupportablityComponentName}|%X{SupportablityAction}|%thread|%X{SupportablityComponentUUID}|%X{SupportablityStatus}|ActivityType=<%M>, Desc=<${p_msg}>%n"/> + + + <!-- All log --> + <if condition='property("enable-all-log").equalsIgnoreCase("true")'> + <then> + <appender name="ALL_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log</file> + + <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> + <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log.%i + </fileNamePattern> + <minIndex>1</minIndex> + <maxIndex>10</maxIndex> + </rollingPolicy> + + <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> + <maxFileSize>20MB</maxFileSize> + </triggeringPolicy> + + <encoder> + <pattern>${all-log-pattern}</pattern> + </encoder> + </appender> + </then> + </if> + + + <!-- Debug log --> + <appender name="DEBUG_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log</file> + + <!-- Audit and Metric messages filter - deny audit and metric messages --> + <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> + <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator"> + <marker>ENTRY</marker> + <marker>EXIT</marker> + <marker>INVOKE</marker> + <marker>INVOKE-RETURN</marker> + <marker>INVOKE-SYNCHRONOUS</marker> + </evaluator> + <onMismatch>NEUTRAL</onMismatch> + <onMatch>DENY</onMatch> + </filter> + + <!-- accept INFO, DEBUG and TRACE level --> + <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> + <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator"> + <expression> + e.level.toInt() <= INFO.toInt() + </expression> + </evaluator> + <OnMismatch>DENY</OnMismatch> + <OnMatch>ACCEPT</OnMatch> + </filter> + + <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> + <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log.%i + </fileNamePattern> + <minIndex>1</minIndex> + <maxIndex>10</maxIndex> + </rollingPolicy> + + <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> + <maxFileSize>20MB</maxFileSize> + </triggeringPolicy> + + <encoder> + <pattern>${debug-log-pattern}</pattern> + </encoder> + </appender> + + + <!-- Error log --> + <appender name="ERROR_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log</file> + + <!-- deny all events with a level below WARN, that is INFO TRACE and DEBUG --> + <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> + <level>WARN</level> + </filter> + + <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> + <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log.%i + </fileNamePattern> + <minIndex>1</minIndex> + <maxIndex>10</maxIndex> + </rollingPolicy> + + <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> + <maxFileSize>20MB</maxFileSize> + </triggeringPolicy> + + <encoder> + <pattern>${error-log-pattern}</pattern> + </encoder> + </appender> + + + <!-- Audit log --> + <appender name="AUDIT_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log</file> + + <!-- Audit messages filter - accept audit messages --> + <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> + <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator"> + <marker>ENTRY</marker> + <marker>EXIT</marker> + </evaluator> + <onMismatch>DENY</onMismatch> + <onMatch>ACCEPT</onMatch> + </filter> + + <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> + <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log.%i + </fileNamePattern> + <minIndex>1</minIndex> + <maxIndex>10</maxIndex> + </rollingPolicy> + + <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> + <maxFileSize>20MB</maxFileSize> + </triggeringPolicy> + + <encoder> + <pattern>${audit-log-pattern}</pattern> + </encoder> + </appender> + + + <!-- Metrics log --> + <appender name="METRICS_ROLLING" + class="ch.qos.logback.core.rolling.RollingFileAppender"> + + <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log + </file> + + <!-- Metric messages filter - accept metric messages --> + <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> + <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator"> + <marker>INVOKE</marker> + <marker>INVOKE-RETURN</marker> + <marker>INVOKE-SYNCHRONOUS</marker> + </evaluator> + <onMismatch>DENY</onMismatch> + <onMatch>ACCEPT</onMatch> + </filter> + + <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> + <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log.%i + </fileNamePattern> + <minIndex>1</minIndex> + <maxIndex>10</maxIndex> + </rollingPolicy> + + <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> + <maxFileSize>20MB</maxFileSize> + </triggeringPolicy> + + <encoder> + <pattern>${metric-log-pattern}</pattern> + </encoder> + </appender> + + + <!-- Supporability log --> + <appender name="SUPPORTABILITY_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender"> + + <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/supportability.log</file> + + <!-- Supporability messages filter - accept suppportability messages --> + <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> + <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator"> + <marker>SUPPORTABILITY_MARKER</marker> + </evaluator> + <onMismatch>DENY</onMismatch> + <onMatch>ACCEPT</onMatch> + </filter> + + <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> + <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/supportability.log.%i + </fileNamePattern> + <minIndex>1</minIndex> + <maxIndex>10</maxIndex> + </rollingPolicy> + + <triggeringPolicy + class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> + <maxFileSize>20MB</maxFileSize> + </triggeringPolicy> + + <encoder> + <pattern>${supportability-log-pattern}</pattern> + </encoder> + </appender> + + + <!-- Asynchronicity Configurations --> + <appender name="ASYNC_DEBUG" class="ch.qos.logback.classic.AsyncAppender"> + <appender-ref ref="DEBUG_ROLLING"/> + </appender> + + <appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender"> + <appender-ref ref="ERROR_ROLLING"/> + </appender> + + <appender name="ASYNC_ALL" class="ch.qos.logback.classic.AsyncAppender"> + <appender-ref ref="ALL_ROLLING"/> + </appender> + + + <root level="INFO"> + <appender-ref ref="ASYNC_DEBUG"/> + <appender-ref ref="ASYNC_ERROR"/> + <appender-ref ref="AUDIT_ROLLING"/> + <appender-ref ref="METRICS_ROLLING"/> + <appender-ref ref="SUPPORTABILITY_ROLLING"/> + <if condition='property("enable-all-log").equalsIgnoreCase("true")'> + <then> + <appender-ref ref="ASYNC_ALL"/> + </then> + </if> + </root> + + <logger name="org.openecomp.sdc" level="INFO"/> +</configuration> |