Add support for loading packaged standard registries

Added JsonPackagedFileReader to allow loading JSON from filesystem.

Added licensed Redfish standard message registry files.

Currently, the method to load the files is not intended to be
used by Sushy users, but Sushy will use it internally when
needed in following patches.

Change-Id: Iae206dac90b499614a489fc0e90a0d881f21d310
Story: 2001791
Task: 23062
This commit is contained in:
Aija Jaunteva 2018-08-08 13:44:48 +03:00
parent fb465bc3e0
commit 7993f04490
11 changed files with 2658 additions and 1 deletions

View File

@ -13,6 +13,9 @@ project. As the project grows and more features from `Redfish`_ are
needed we can expand Sushy to fulfill those requirements.
* Free software: Apache license
* Includes Redfish registry files licensed under
Creative Commons Attribution 4.0 License:
https://creativecommons.org/licenses/by/4.0/
* Documentation: https://docs.openstack.org/sushy/latest/
* Usage: https://docs.openstack.org/sushy/latest/reference/usage.html
* Source: https://git.openstack.org/cgit/openstack/sushy

View File

@ -0,0 +1,6 @@
---
other:
- |
Includes Redfish standard message registry files that are licensed
under Creative Commons Attribution 4.0 License:
https://creativecommons.org/licenses/by/4.0/

View File

@ -13,6 +13,7 @@
# License for the specific language governing permissions and limitations
# under the License.
import logging
import pkg_resources
from sushy import auth as sushy_auth
from sushy import connector as sushy_connector
@ -21,6 +22,7 @@ from sushy.resources import base
from sushy.resources.chassis import chassis
from sushy.resources.compositionservice import compositionservice
from sushy.resources.manager import manager
from sushy.resources.registry import message_registry
from sushy.resources.registry import message_registry_file
from sushy.resources.sessionservice import session
from sushy.resources.sessionservice import sessionservice
@ -29,6 +31,8 @@ from sushy.resources.updateservice import updateservice
LOG = logging.getLogger(__name__)
STANDARD_REGISTRY_PATH = 'standard_registries/'
class ProtocolFeaturesSupportedField(base.CompositeField):
@ -277,3 +281,20 @@ class Sushy(base.ResourceBase):
return compositionservice.CompositionService(
self._conn, self._composition_service_path,
redfish_version=self.redfish_version)
def _get_standard_message_registry_collection(self):
"""Load packaged standard message registries
:returns: list of MessageRegistry
"""
message_registries = []
resource_package_name = __name__
for json_file in pkg_resources.resource_listdir(
resource_package_name, STANDARD_REGISTRY_PATH):
mes_reg = message_registry.MessageRegistry(
None, STANDARD_REGISTRY_PATH + json_file,
reader=base.JsonPackagedFileReader(resource_package_name))
message_registries.append(mes_reg)
return message_registries

View File

@ -19,6 +19,7 @@ import copy
import io
import json
import logging
import pkg_resources
import zipfile
import six
@ -300,6 +301,24 @@ class JsonArchiveReader(AbstractJsonReader):
{'type': data.headers['content-type']})
class JsonPackagedFileReader(AbstractJsonReader):
"""Gets the data from packaged file given by path"""
def __init__(self, resource_package_name):
"""Initializes the reader
:param resource_package: Python package/module name
"""
self._resource_package_name = resource_package_name
def get_json(self):
"""Gets JSON file from packaged file denoted by path"""
with pkg_resources.resource_stream(self._resource_package_name,
self._path) as resource:
return json.loads(resource.read().decode(encoding='utf-8'))
@six.add_metaclass(abc.ABCMeta)
class ResourceBase(object):

View File

@ -0,0 +1,466 @@
{
"@Redfish.Copyright": "Copyright © 2014-2015 Distributed Management Task Force, Inc. (DMTF). All rights reserved.",
"@Redfish.License": "Creative Commons Attribution 4.0 License. For full text see link: https://creativecommons.org/licenses/by/4.0/",
"@odata.type": "#MessageRegistry.1.0.0.MessageRegistry",
"Id": "Base.1.0.0",
"Name": "Base Message Registry",
"Language": "en",
"Description": "This registry defines the base messages for Redfish",
"RegistryPrefix": "Base",
"RegistryVersion": "1.0.0",
"OwningEntity": "DMTF",
"Messages": {
"Success": {
"Description": "Indicates that all conditions of a successful operation have been met.",
"Message": "Successfully Completed Request",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "None"
},
"GeneralError": {
"Description": "Indicates that a general error has occurred.",
"Message": "A general error has occurred. See ExtendedInfo for more information.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "See ExtendedInfo for more information."
},
"Created": {
"Description": "Indicates that all conditions of a successful creation operation have been met.",
"Message": "The resource has been created successfully",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "None"
},
"PropertyDuplicate": {
"Description": "Indicates that a duplicate property was included in the request body.",
"Message": "The property %1 was duplicated in the request.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the duplicate property from the request body and resubmit the request if the operation failed."
},
"PropertyUnknown": {
"Description": "Indicates that an unknown property was included in the request body.",
"Message": "The property %1 is not in the list of valid properties for the resource.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the unknown property from the request body and resubmit the request if the operation failed."
},
"PropertyValueTypeError": {
"Description": "Indicates that a property was given the wrong value type, such as when a number is supplied for a property that requires a string.",
"Message": "The value %1 for the property %2 is of a different type than the property can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the property in the request body and resubmit the request if the operation failed."
},
"PropertyValueFormatError": {
"Description": "Indicates that a property was given the correct value type but the value of that property was not supported. This includes value size/length exceeded.",
"Message": "The value %1 for the property %2 is of a different format than the property can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the property in the request body and resubmit the request if the operation failed."
},
"PropertyValueNotInList": {
"Description": "Indicates that a property was given the correct value type but the value of that property was not supported. This values not in an enumeration",
"Message": "The value %1 for the property %2 is not in the list of acceptable values.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Choose a value from the enumeration list that the implementation can support and resubmit the request if the operation failed."
},
"PropertyNotWritable": {
"Description": "Indicates that a property was given a value in the request body, but the property is a readonly property.",
"Message": "The property %1 is a read only property and cannot be assigned a value.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the property from the request body and resubmit the request if the operation failed."
},
"PropertyMissing": {
"Description": "Indicates that a required property was not supplied as part of the request.",
"Message": "The property %1 is a required property and must be included in the request.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the property is in the request body and has a valid value and resubmit the request if the operation failed."
},
"MalformedJSON": {
"Description": "Indicates that the request body was malformed JSON. Could be duplicate, syntax error,etc.",
"Message": "The request body submitted was malformed JSON and could not be parsed by the receiving service.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Ensure that the request body is valid JSON and resubmit the request."
},
"ActionNotSupported": {
"Description": "Indicates that the action supplied with the POST operation is not supported by the resource.",
"Message": "The action %1 is not supported by the resource.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "The action supplied cannot be resubmitted to the implementation. Perhaps the action was invalid, the wrong resource was the target or the implementation documentation may be of assistance."
},
"ActionParameterMissing": {
"Description": "Indicates that the action requested was missing a parameter that is required to process the action.",
"Message": "The action %1 requires the parameter %2 to be present in the request body.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Supply the action with the required parameter in the request body when the request is resubmitted."
},
"ActionParameterDuplicate": {
"Description": "Indicates that the action was supplied with a duplicated parameter in the request body.",
"Message": "The action %1 was submitted with more than one value for the parameter %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Resubmit the action with only one instance of the parameter in the request body if the operation failed."
},
"ActionParameterUnknown": {
"Description": "Indicates that an action was submitted but a parameter supplied did not match any of the known parameters.",
"Message": "The action %1 was submitted with with the invalid parameter %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the invalid parameter and resubmit the request if the operation failed."
},
"ActionParameterValueTypeError": {
"Description": "Indicates that a parameter was given the wrong value type, such as when a number is supplied for a parameter that requires a string.",
"Message": "The value %1 for the parameter %2 in the action %3 is of a different type than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Correct the value for the parameter in the request body and resubmit the request if the operation failed."
},
"ActionParameterValueFormatError": {
"Description": "Indicates that a parameter was given the correct value type but the value of that parameter was not supported. This includes value size/length exceeded.",
"Message": "The value %1 for the parameter %2 in the action %3 is of a different format than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Correct the value for the parameter in the request body and resubmit the request if the operation failed."
},
"ActionParameterNotSupported": {
"Description": "Indicates that the parameter supplied for the action is not supported on the resource.",
"Message": "The parameter %1 for the action %2 is not supported on the target resource.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Remove the parameter supplied and resubmit the request if the operation failed."
},
"QueryParameterValueTypeError": {
"Description": "Indicates that a query parameter was given the wrong value type, such as when a number is supplied for a query parameter that requires a string.",
"Message": "The value %1 for the query parameter %2 is of a different type than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the query parameter in the request and resubmit the request if the operation failed."
},
"QueryParameterValueFormatError": {
"Description": "Indicates that a query parameter was given the correct value type but the value of that parameter was not supported. This includes value size/length exceeded.",
"Message": "The value %1 for the parameter %2 is of a different format than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the query parameter in the request and resubmit the request if the operation failed."
},
"QueryParameterOutOfRange": {
"Description": "Indicates that a query parameter was supplied that is out of range for the given resource. This can happen with values that are too low or beyond that possible for the supplied resource, such as when a page is requested that is beyond the last page.",
"Message": "The value %1 for the query parameter %2 is out of range %3.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Reduce the value for the query parameter to a value that is within range, such as a start or count value that is within bounds of the number of resources in a collection or a page that is within the range of valid pages."
},
"QueryNotSupportedOnResource": {
"Description": "Indicates that query is not supported on the given resource, such as when a start/count query is attempted on a resource that is not a collection.",
"Message": "Querying is not supported on the requested resource.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the query parameters and resubmit the request if the operation failed."
},
"QueryNotSupported": {
"Description": "Indicates that query is not supported on the implementation.",
"Message": "Querying is not supported by the implementation.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the query parameters and resubmit the request if the operation failed."
},
"SessionLimitExceeded": {
"Description": "Indicates that a session establishment has been requested but the operation failed due to the number of simultaneous sessions exceeding the limit of the implementation.",
"Message": "The session establishment failed due to the number of simultaneous sessions exceeding the limit of the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Reduce the number of other sessions before trying to establish the session or increase the limit of simultaneous sessions (if supported)."
},
"EventSubscriptionLimitExceeded": {
"Description": "Indicates that a event subscription establishment has been requested but the operation failed due to the number of simultaneous connection exceeding the limit of the implementation.",
"Message": "The event subscription failed due to the number of simultaneous subscriptions exceeding the limit of the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Reduce the number of other subscriptions before trying to establish the event subscription or increase the limit of simultaneous subscriptions (if supported)."
},
"ResourceCannotBeDeleted": {
"Description": "Indicates that a delete operation was attempted on a resource that cannot be deleted.",
"Message": "The delete request failed because the resource requested cannot be deleted.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Do not attempt to delete a non-deletable resource."
},
"ResourceInUse": {
"Description": "Indicates that a change was requested to a resource but the change was rejected due to the resource being in use or transition.",
"Message": "The change to the requested resource failed because the resource is in use or in transition.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the condition and resubmit the request if the operation failed."
},
"ResourceAlreadyExists": {
"Description": "Indicates that a resource change or creation was attempted but that the operation cannot proceed because the resource already exists.",
"Message": "The requested resource already exists.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Do not repeat the create operation as the resource has already been created."
},
"CreateFailedMissingReqProperties": {
"Description": "Indicates that a create was attempted on a resource but that properties that are required for the create operation were missing from the request.",
"Message": "The create operation failed because the required property %1 was missing from the request.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Correct the body to include the required property with a valid value and resubmit the request if the operation failed."
},
"CreateLimitReachedForResource": {
"Description": "Indicates that no more resources can be created on the resource as it has reached its create limit.",
"Message": "The create operation failed because the resource has reached the limit of possible resources.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Either delete resources and resubmit the request if the operation failed or do not resubmit the request."
},
"ServiceShuttingDown": {
"Description": "Indicates that the operation failed as the service is shutting down, such as when the service reboots.",
"Message": "The operation failed because the service is shutting down and can no longer take incoming requests.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "When the service becomes available, resubmit the request if the operation failed."
},
"ServiceInUnknownState": {
"Description": "Indicates that the operation failed because the service is in an unknown state and cannot accept additional requests.",
"Message": "The operation failed because the service is in an unknown state and can no longer take incoming requests.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Restart the service and resubmit the request if the operation failed."
},
"NoValidSession": {
"Description": "Indicates that the operation failed because a valid session is required in order to access any resources.",
"Message": "There is no valid session established with the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Establish as session before attempting any operations."
},
"InsufficientPrivilege": {
"Description": "Indicates that the credentials associated with the established session do not have sufficient privileges for the requested operation",
"Message": "There are insufficient privileges for the account or credentials associated with the current session to perform the requested operation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Either abandon the operation or change the associated access rights and resubmit the request if the operation failed."
},
"AccountModified": {
"Description": "Indicates that the account was successfully modified.",
"Message": "The account was successfully modifed.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "No resolution is required."
},
"AccountNotModified": {
"Description": "Indicates that the modification requested for the account was not successful.",
"Message": "The account modification request failed.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "The modification may have failed due to permission issues or issues with the request body."
},
"AccountRemoved": {
"Description": "Indicates that the account was successfully removed.",
"Message": "The account was successfully removed.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "No resolution is required."
},
"AccountForSessionNoLongerExists": {
"Description": "Indicates that the account for the session has been removed, thus the session has been removed as well.",
"Message": "The account for the current session has been removed, thus the current session has been removed as well.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "Attempt to connect with a valid account."
},
"InvalidObject": {
"Description": "Indicates that the object in question is invalid according to the implementation. Examples include a firmware update malformed URI.",
"Message": "The object at %1 is invalid.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Either the object is malformed or the URI is not correct. Correct the condition and resubmit the request if it failed."
},
"InternalError": {
"Description": "Indicates that the request failed for an unknown internal error but that the service is still operational.",
"Message": "The request failed due to an internal service error. The service is still operational.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Resubmit the request. If the problem persists, consider resetting the service."
},
"UnrecognizedRequestBody": {
"Description": "Indicates that the service encountered an unrecognizable request body that could not even be interpreted as malformed JSON.",
"Message": "The service detected a malformed request body that it was unable to interpret.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Correct the request body and resubmit the request if it failed."
},
"ResourceMissingAtURI": {
"Description": "Indicates that the operation expected an image or other resource at the provided URI but none was found. Examples of this are in requests that require URIs like Firmware Update.",
"Message": "The resource at the URI %1 was not found.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Place a valid resource at thr URI or correct the URI and resubmit the request."
},
"ResourceAtUriInUnknownFormat": {
"Description": "Indicates that the URI was valid but the resource or image at that URI was in a format not supported by the service.",
"Message": "The resource at %1 is in a format not recognized by the service.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Place an image or resource or file that is recognized by the service at the URI."
},
"ResourceAtUriUnauthorized": {
"Description": "Indicates that the attempt to access the resource/file/image at the URI was unauthorized.",
"Message": "While accessing the resource at %1, the service received an authorization error %2.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Ensure that the appropriate access is provided for the service in order for it to access the URI."
},
"CouldNotEstablishConnection": {
"Description": "Indicates that the attempt to access the resource/file/image at the URI was unsuccessful because a session could not be established.",
"Message": "The service failed to establish a connection with the URI %1.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the URI contains a valid and reachable node name, protocol information and other URI components."
},
"SourceDoesNotSupportProtocol": {
"Description": "Indicates that while attempting to access, connect to or transfer a resource/file/image from another location that the other end of the connection did not support the protocol",
"Message": "The other end of the connection at %1 does not support the specified protocol %2.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Change protocols or URIs. "
},
"AccessDenied": {
"Description": "Indicates that while attempting to access, connect to or transfer to/from another resource, the service was denied access.",
"Message": "While attempting to establish a connection to %1, the service was denied access.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Attempt to ensure that the URI is correct and that the service has the appropriate credentials."
},
"ServiceTemporarilyUnavailable": {
"Description": "Indicates the service is temporarily unavailable.",
"Message": "The service is temporarily unavailable. Retry in %1 seconds.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Wait for the indicated retry duration and retry the operation."
},
"InvalidIndex": {
"Description": "The Index is not valid.",
"Message": "The Index %1 is not a valid offset into the array.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"number"
],
"Resolution": "Verify the index value provided is within the bounds of the array."
},
"PropertyValueModified": {
"Description": "Indicates that a property was given the correct value type but the value of that property was modified. Examples are truncated or rounded values.",
"Message": "The property %1 was assigned the value %2 due to modification by the service.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "No resolution is required."
}
}
}

View File

@ -0,0 +1,517 @@
{
"@Redfish.Copyright": "Copyright 2014-2015, 2017 Distributed Management Task Force, Inc. (DMTF). All rights reserved.",
"@Redfish.License": "Creative Commons Attribution 4.0 License. For full text see link: https://creativecommons.org/licenses/by/4.0/",
"@odata.type": "#MessageRegistry.v1_0_0.MessageRegistry",
"Id": "Base.1.2.0",
"Name": "Base Message Registry",
"Language": "en",
"Description": "This registry defines the base messages for Redfish",
"RegistryPrefix": "Base",
"RegistryVersion": "1.2.0",
"OwningEntity": "DMTF",
"Messages": {
"Success": {
"Description": "Indicates that all conditions of a successful operation have been met.",
"Message": "Successfully Completed Request",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "None"
},
"GeneralError": {
"Description": "Indicates that a general error has occurred.",
"Message": "A general error has occurred. See ExtendedInfo for more information.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "See ExtendedInfo for more information."
},
"Created": {
"Description": "Indicates that all conditions of a successful creation operation have been met.",
"Message": "The resource has been created successfully",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "None"
},
"PropertyDuplicate": {
"Description": "Indicates that a duplicate property was included in the request body.",
"Message": "The property %1 was duplicated in the request.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the duplicate property from the request body and resubmit the request if the operation failed."
},
"PropertyUnknown": {
"Description": "Indicates that an unknown property was included in the request body.",
"Message": "The property %1 is not in the list of valid properties for the resource.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the unknown property from the request body and resubmit the request if the operation failed."
},
"PropertyValueTypeError": {
"Description": "Indicates that a property was given the wrong value type, such as when a number is supplied for a property that requires a string.",
"Message": "The value %1 for the property %2 is of a different type than the property can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the property in the request body and resubmit the request if the operation failed."
},
"PropertyValueFormatError": {
"Description": "Indicates that a property was given the correct value type but the value of that property was not supported.",
"Message": "The value %1 for the property %2 is of a different format than the property can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the property in the request body and resubmit the request if the operation failed."
},
"PropertyValueNotInList": {
"Description": "Indicates that a property was given the correct value type but the value of that property was not supported. This values not in an enumeration",
"Message": "The value %1 for the property %2 is not in the list of acceptable values.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Choose a value from the enumeration list that the implementation can support and resubmit the request if the operation failed."
},
"PropertyNotWritable": {
"Description": "Indicates that a property was given a value in the request body, but the property is a readonly property.",
"Message": "The property %1 is a read only property and cannot be assigned a value.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the property from the request body and resubmit the request if the operation failed."
},
"PropertyMissing": {
"Description": "Indicates that a required property was not supplied as part of the request.",
"Message": "The property %1 is a required property and must be included in the request.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the property is in the request body and has a valid value and resubmit the request if the operation failed."
},
"MalformedJSON": {
"Description": "Indicates that the request body was malformed JSON. Could be duplicate, syntax error,etc.",
"Message": "The request body submitted was malformed JSON and could not be parsed by the receiving service.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Ensure that the request body is valid JSON and resubmit the request."
},
"EmptyJSON": {
"Description": "Indicates that the request body contained an empty JSON object when one or more properties are expected in the body.",
"Message": "The request body submitted contained an empty JSON object and the service is unable to process it.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Add properties in the JSON object and resubmit the request."
},
"ActionNotSupported": {
"Description": "Indicates that the action supplied with the POST operation is not supported by the resource.",
"Message": "The action %1 is not supported by the resource.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "The action supplied cannot be resubmitted to the implementation. Perhaps the action was invalid, the wrong resource was the target or the implementation documentation may be of assistance."
},
"ActionParameterMissing": {
"Description": "Indicates that the action requested was missing a parameter that is required to process the action.",
"Message": "The action %1 requires the parameter %2 to be present in the request body.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Supply the action with the required parameter in the request body when the request is resubmitted."
},
"ActionParameterDuplicate": {
"Description": "Indicates that the action was supplied with a duplicated parameter in the request body.",
"Message": "The action %1 was submitted with more than one value for the parameter %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Resubmit the action with only one instance of the parameter in the request body if the operation failed."
},
"ActionParameterUnknown": {
"Description": "Indicates that an action was submitted but a parameter supplied did not match any of the known parameters.",
"Message": "The action %1 was submitted with the invalid parameter %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the invalid parameter and resubmit the request if the operation failed."
},
"ActionParameterValueTypeError": {
"Description": "Indicates that a parameter was given the wrong value type, such as when a number is supplied for a parameter that requires a string.",
"Message": "The value %1 for the parameter %2 in the action %3 is of a different type than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Correct the value for the parameter in the request body and resubmit the request if the operation failed."
},
"ActionParameterValueFormatError": {
"Description": "Indicates that a parameter was given the correct value type but the value of that parameter was not supported. This includes value size/length exceeded.",
"Message": "The value %1 for the parameter %2 in the action %3 is of a different format than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Correct the value for the parameter in the request body and resubmit the request if the operation failed."
},
"ActionParameterNotSupported": {
"Description": "Indicates that the parameter supplied for the action is not supported on the resource.",
"Message": "The parameter %1 for the action %2 is not supported on the target resource.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Remove the parameter supplied and resubmit the request if the operation failed."
},
"QueryParameterValueTypeError": {
"Description": "Indicates that a query parameter was given the wrong value type, such as when a number is supplied for a query parameter that requires a string.",
"Message": "The value %1 for the query parameter %2 is of a different type than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the query parameter in the request and resubmit the request if the operation failed."
},
"QueryParameterValueFormatError": {
"Description": "Indicates that a query parameter was given the correct value type but the value of that parameter was not supported. This includes value size/length exceeded.",
"Message": "The value %1 for the parameter %2 is of a different format than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the query parameter in the request and resubmit the request if the operation failed."
},
"QueryParameterOutOfRange": {
"Description": "Indicates that a query parameter was supplied that is out of range for the given resource. This can happen with values that are too low or beyond that possible for the supplied resource, such as when a page is requested that is beyond the last page.",
"Message": "The value %1 for the query parameter %2 is out of range %3.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Reduce the value for the query parameter to a value that is within range, such as a start or count value that is within bounds of the number of resources in a collection or a page that is within the range of valid pages."
},
"QueryNotSupportedOnResource": {
"Description": "Indicates that query is not supported on the given resource, such as when a start/count query is attempted on a resource that is not a collection.",
"Message": "Querying is not supported on the requested resource.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the query parameters and resubmit the request if the operation failed."
},
"QueryNotSupported": {
"Description": "Indicates that query is not supported on the implementation.",
"Message": "Querying is not supported by the implementation.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the query parameters and resubmit the request if the operation failed."
},
"SessionLimitExceeded": {
"Description": "Indicates that a session establishment has been requested but the operation failed due to the number of simultaneous sessions exceeding the limit of the implementation.",
"Message": "The session establishment failed due to the number of simultaneous sessions exceeding the limit of the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Reduce the number of other sessions before trying to establish the session or increase the limit of simultaneous sessions (if supported)."
},
"EventSubscriptionLimitExceeded": {
"Description": "Indicates that a event subscription establishment has been requested but the operation failed due to the number of simultaneous connection exceeding the limit of the implementation.",
"Message": "The event subscription failed due to the number of simultaneous subscriptions exceeding the limit of the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Reduce the number of other subscriptions before trying to establish the event subscription or increase the limit of simultaneous subscriptions (if supported)."
},
"ResourceCannotBeDeleted": {
"Description": "Indicates that a delete operation was attempted on a resource that cannot be deleted.",
"Message": "The delete request failed because the resource requested cannot be deleted.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Do not attempt to delete a non-deletable resource."
},
"ResourceInUse": {
"Description": "Indicates that a change was requested to a resource but the change was rejected due to the resource being in use or transition.",
"Message": "The change to the requested resource failed because the resource is in use or in transition.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the condition and resubmit the request if the operation failed."
},
"ResourceAlreadyExists": {
"Description": "Indicates that a resource change or creation was attempted but that the operation cannot proceed because the resource already exists.",
"Message": "The requested resource of type %1 with the property %2 with the value %3 already exists.",
"Severity": "Critical",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Do not repeat the create operation as the resource has already been created."
},
"ResourceNotFound": {
"Description": "Indicates that the operation expected a resource identifier that corresponds to an existing resource but one was not found.",
"Message": "The requested resource of type %1 named %2 was not found.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Provide a valid resource identifier and resubmit the request."
},
"CreateFailedMissingReqProperties": {
"Description": "Indicates that a create was attempted on a resource but that properties that are required for the create operation were missing from the request.",
"Message": "The create operation failed because the required property %1 was missing from the request.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Correct the body to include the required property with a valid value and resubmit the request if the operation failed."
},
"CreateLimitReachedForResource": {
"Description": "Indicates that no more resources can be created on the resource as it has reached its create limit.",
"Message": "The create operation failed because the resource has reached the limit of possible resources.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Either delete resources and resubmit the request if the operation failed or do not resubmit the request."
},
"ServiceShuttingDown": {
"Description": "Indicates that the operation failed as the service is shutting down, such as when the service reboots.",
"Message": "The operation failed because the service is shutting down and can no longer take incoming requests.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "When the service becomes available, resubmit the request if the operation failed."
},
"ServiceInUnknownState": {
"Description": "Indicates that the operation failed because the service is in an unknown state and cannot accept additional requests.",
"Message": "The operation failed because the service is in an unknown state and can no longer take incoming requests.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Restart the service and resubmit the request if the operation failed."
},
"NoValidSession": {
"Description": "Indicates that the operation failed because a valid session is required in order to access any resources.",
"Message": "There is no valid session established with the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Establish as session before attempting any operations."
},
"InsufficientPrivilege": {
"Description": "Indicates that the credentials associated with the established session do not have sufficient privileges for the requested operation",
"Message": "There are insufficient privileges for the account or credentials associated with the current session to perform the requested operation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Either abandon the operation or change the associated access rights and resubmit the request if the operation failed."
},
"AccountModified": {
"Description": "Indicates that the account was successfully modified.",
"Message": "The account was successfully modified.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "No resolution is required."
},
"AccountNotModified": {
"Description": "Indicates that the modification requested for the account was not successful.",
"Message": "The account modification request failed.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "The modification may have failed due to permission issues or issues with the request body."
},
"AccountRemoved": {
"Description": "Indicates that the account was successfully removed.",
"Message": "The account was successfully removed.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "No resolution is required."
},
"AccountForSessionNoLongerExists": {
"Description": "Indicates that the account for the session has been removed, thus the session has been removed as well.",
"Message": "The account for the current session has been removed, thus the current session has been removed as well.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "Attempt to connect with a valid account."
},
"InvalidObject": {
"Description": "Indicates that the object in question is invalid according to the implementation. Examples include a firmware update malformed URI.",
"Message": "The object at %1 is invalid.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Either the object is malformed or the URI is not correct. Correct the condition and resubmit the request if it failed."
},
"InternalError": {
"Description": "Indicates that the request failed for an unknown internal error but that the service is still operational.",
"Message": "The request failed due to an internal service error. The service is still operational.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Resubmit the request. If the problem persists, consider resetting the service."
},
"UnrecognizedRequestBody": {
"Description": "Indicates that the service encountered an unrecognizable request body that could not even be interpreted as malformed JSON.",
"Message": "The service detected a malformed request body that it was unable to interpret.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Correct the request body and resubmit the request if it failed."
},
"ResourceMissingAtURI": {
"Description": "Indicates that the operation expected an image or other resource at the provided URI but none was found. Examples of this are in requests that require URIs like Firmware Update.",
"Message": "The resource at the URI %1 was not found.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Place a valid resource at the URI or correct the URI and resubmit the request."
},
"ResourceAtUriInUnknownFormat": {
"Description": "Indicates that the URI was valid but the resource or image at that URI was in a format not supported by the service.",
"Message": "The resource at %1 is in a format not recognized by the service.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Place an image or resource or file that is recognized by the service at the URI."
},
"ResourceAtUriUnauthorized": {
"Description": "Indicates that the attempt to access the resource/file/image at the URI was unauthorized.",
"Message": "While accessing the resource at %1, the service received an authorization error %2.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Ensure that the appropriate access is provided for the service in order for it to access the URI."
},
"CouldNotEstablishConnection": {
"Description": "Indicates that the attempt to access the resource/file/image at the URI was unsuccessful because a session could not be established.",
"Message": "The service failed to establish a connection with the URI %1.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the URI contains a valid and reachable node name, protocol information and other URI components."
},
"SourceDoesNotSupportProtocol": {
"Description": "Indicates that while attempting to access, connect to or transfer a resource/file/image from another location that the other end of the connection did not support the protocol",
"Message": "The other end of the connection at %1 does not support the specified protocol %2.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Change protocols or URIs. "
},
"AccessDenied": {
"Description": "Indicates that while attempting to access, connect to or transfer to/from another resource, the service denied access.",
"Message": "While attempting to establish a connection to %1, the service denied access.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Attempt to ensure that the URI is correct and that the service has the appropriate credentials."
},
"ServiceTemporarilyUnavailable": {
"Description": "Indicates the service is temporarily unavailable.",
"Message": "The service is temporarily unavailable. Retry in %1 seconds.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Wait for the indicated retry duration and retry the operation."
},
"InvalidIndex": {
"Description": "The Index is not valid.",
"Message": "The Index %1 is not a valid offset into the array.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"number"
],
"Resolution": "Verify the index value provided is within the bounds of the array."
},
"PropertyValueModified": {
"Description": "Indicates that a property was given the correct value type but the value of that property was modified. Examples are truncated or rounded values.",
"Message": "The property %1 was assigned the value %2 due to modification by the service.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "No resolution is required."
},
"ResourceInStandby": {
"Description": "Indicates that the request could not be performed because the resource is in standby.",
"Message": "The request could not be performed because the resource is in standby.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Ensure that the resource is in the correct power state and resubmit the request."
},
"ResourceExhaustion": {
"Description": "Indicates that a resource could not satisfy the request due to some unavailability of resources. An example is that available capacity has been allocated.",
"Message": "The resource %1 was unable to satisfy the request due to unavailability of resources.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the resources are available and resubmit the request."
},
"StringValueTooLong": {
"Description": "Indicates that a string value passed to the given resource exceeded its length limit. An example is when a shorter limit is imposed by an implementation than that allowed by the specification.",
"Message": "The string %1 exceeds the length limit %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"number"
],
"Resolution": "Resubmit the request with an appropriate string length."
}
}
}

View File

@ -0,0 +1,535 @@
{
"@Redfish.Copyright": "Copyright 2014-2015, 2017-2018 DMTF. All rights reserved.",
"@Redfish.License": "Creative Commons Attribution 4.0 License. For full text see link: https://creativecommons.org/licenses/by/4.0/",
"@odata.type": "#MessageRegistry.v1_0_0.MessageRegistry",
"Id": "Base.1.3.0",
"Name": "Base Message Registry",
"Language": "en",
"Description": "This registry defines the base messages for Redfish",
"RegistryPrefix": "Base",
"RegistryVersion": "1.3.0",
"OwningEntity": "DMTF",
"Messages": {
"Success": {
"Description": "Indicates that all conditions of a successful operation have been met.",
"Message": "Successfully Completed Request",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "None"
},
"GeneralError": {
"Description": "Indicates that a general error has occurred.",
"Message": "A general error has occurred. See ExtendedInfo for more information.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "See ExtendedInfo for more information."
},
"Created": {
"Description": "Indicates that all conditions of a successful creation operation have been met.",
"Message": "The resource has been created successfully",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "None"
},
"PropertyDuplicate": {
"Description": "Indicates that a duplicate property was included in the request body.",
"Message": "The property %1 was duplicated in the request.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the duplicate property from the request body and resubmit the request if the operation failed."
},
"PropertyUnknown": {
"Description": "Indicates that an unknown property was included in the request body.",
"Message": "The property %1 is not in the list of valid properties for the resource.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the unknown property from the request body and resubmit the request if the operation failed."
},
"PropertyValueTypeError": {
"Description": "Indicates that a property was given the wrong value type, such as when a number is supplied for a property that requires a string.",
"Message": "The value %1 for the property %2 is of a different type than the property can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the property in the request body and resubmit the request if the operation failed."
},
"PropertyValueFormatError": {
"Description": "Indicates that a property was given the correct value type but the value of that property was not supported.",
"Message": "The value %1 for the property %2 is of a different format than the property can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the property in the request body and resubmit the request if the operation failed."
},
"PropertyValueNotInList": {
"Description": "Indicates that a property was given the correct value type but the value of that property was not supported. This values not in an enumeration",
"Message": "The value %1 for the property %2 is not in the list of acceptable values.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Choose a value from the enumeration list that the implementation can support and resubmit the request if the operation failed."
},
"PropertyValueOutOfRange": {
"Description": "Indicates that a property was given the correct value type but the value of that property is outside the supported range.",
"Message": "The value %1 for the property %2 is not in the supported range of acceptable values.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the property in the request body and resubmit the request if the operation failed."
},
"PropertyNotWritable": {
"Description": "Indicates that a property was given a value in the request body, but the property is a readonly property.",
"Message": "The property %1 is a read only property and cannot be assigned a value.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the property from the request body and resubmit the request if the operation failed."
},
"PropertyMissing": {
"Description": "Indicates that a required property was not supplied as part of the request.",
"Message": "The property %1 is a required property and must be included in the request.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the property is in the request body and has a valid value and resubmit the request if the operation failed."
},
"MalformedJSON": {
"Description": "Indicates that the request body was malformed JSON. Could be duplicate, syntax error,etc.",
"Message": "The request body submitted was malformed JSON and could not be parsed by the receiving service.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Ensure that the request body is valid JSON and resubmit the request."
},
"EmptyJSON": {
"Description": "Indicates that the request body contained an empty JSON object when one or more properties are expected in the body.",
"Message": "The request body submitted contained an empty JSON object and the service is unable to process it.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Add properties in the JSON object and resubmit the request."
},
"ActionNotSupported": {
"Description": "Indicates that the action supplied with the POST operation is not supported by the resource.",
"Message": "The action %1 is not supported by the resource.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "The action supplied cannot be resubmitted to the implementation. Perhaps the action was invalid, the wrong resource was the target or the implementation documentation may be of assistance."
},
"ActionParameterMissing": {
"Description": "Indicates that the action requested was missing a parameter that is required to process the action.",
"Message": "The action %1 requires the parameter %2 to be present in the request body.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Supply the action with the required parameter in the request body when the request is resubmitted."
},
"ActionParameterDuplicate": {
"Description": "Indicates that the action was supplied with a duplicated parameter in the request body.",
"Message": "The action %1 was submitted with more than one value for the parameter %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Resubmit the action with only one instance of the parameter in the request body if the operation failed."
},
"ActionParameterUnknown": {
"Description": "Indicates that an action was submitted but a parameter supplied did not match any of the known parameters.",
"Message": "The action %1 was submitted with the invalid parameter %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the invalid parameter and resubmit the request if the operation failed."
},
"ActionParameterValueTypeError": {
"Description": "Indicates that a parameter was given the wrong value type, such as when a number is supplied for a parameter that requires a string.",
"Message": "The value %1 for the parameter %2 in the action %3 is of a different type than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Correct the value for the parameter in the request body and resubmit the request if the operation failed."
},
"ActionParameterValueFormatError": {
"Description": "Indicates that a parameter was given the correct value type but the value of that parameter was not supported. This includes value size/length exceeded.",
"Message": "The value %1 for the parameter %2 in the action %3 is of a different format than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Correct the value for the parameter in the request body and resubmit the request if the operation failed."
},
"ActionParameterNotSupported": {
"Description": "Indicates that the parameter supplied for the action is not supported on the resource.",
"Message": "The parameter %1 for the action %2 is not supported on the target resource.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Remove the parameter supplied and resubmit the request if the operation failed."
},
"QueryParameterValueTypeError": {
"Description": "Indicates that a query parameter was given the wrong value type, such as when a number is supplied for a query parameter that requires a string.",
"Message": "The value %1 for the query parameter %2 is of a different type than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the query parameter in the request and resubmit the request if the operation failed."
},
"QueryParameterValueFormatError": {
"Description": "Indicates that a query parameter was given the correct value type but the value of that parameter was not supported. This includes value size/length exceeded.",
"Message": "The value %1 for the parameter %2 is of a different format than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the query parameter in the request and resubmit the request if the operation failed."
},
"QueryParameterOutOfRange": {
"Description": "Indicates that a query parameter was supplied that is out of range for the given resource. This can happen with values that are too low or beyond that possible for the supplied resource, such as when a page is requested that is beyond the last page.",
"Message": "The value %1 for the query parameter %2 is out of range %3.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Reduce the value for the query parameter to a value that is within range, such as a start or count value that is within bounds of the number of resources in a collection or a page that is within the range of valid pages."
},
"QueryNotSupportedOnResource": {
"Description": "Indicates that query is not supported on the given resource, such as when a start/count query is attempted on a resource that is not a collection.",
"Message": "Querying is not supported on the requested resource.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the query parameters and resubmit the request if the operation failed."
},
"QueryNotSupported": {
"Description": "Indicates that query is not supported on the implementation.",
"Message": "Querying is not supported by the implementation.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the query parameters and resubmit the request if the operation failed."
},
"SessionLimitExceeded": {
"Description": "Indicates that a session establishment has been requested but the operation failed due to the number of simultaneous sessions exceeding the limit of the implementation.",
"Message": "The session establishment failed due to the number of simultaneous sessions exceeding the limit of the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Reduce the number of other sessions before trying to establish the session or increase the limit of simultaneous sessions (if supported)."
},
"EventSubscriptionLimitExceeded": {
"Description": "Indicates that a event subscription establishment has been requested but the operation failed due to the number of simultaneous connection exceeding the limit of the implementation.",
"Message": "The event subscription failed due to the number of simultaneous subscriptions exceeding the limit of the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Reduce the number of other subscriptions before trying to establish the event subscription or increase the limit of simultaneous subscriptions (if supported)."
},
"ResourceCannotBeDeleted": {
"Description": "Indicates that a delete operation was attempted on a resource that cannot be deleted.",
"Message": "The delete request failed because the resource requested cannot be deleted.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Do not attempt to delete a non-deletable resource."
},
"ResourceInUse": {
"Description": "Indicates that a change was requested to a resource but the change was rejected due to the resource being in use or transition.",
"Message": "The change to the requested resource failed because the resource is in use or in transition.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the condition and resubmit the request if the operation failed."
},
"ResourceAlreadyExists": {
"Description": "Indicates that a resource change or creation was attempted but that the operation cannot proceed because the resource already exists.",
"Message": "The requested resource of type %1 with the property %2 with the value %3 already exists.",
"Severity": "Critical",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Do not repeat the create operation as the resource has already been created."
},
"ResourceNotFound": {
"Description": "Indicates that the operation expected a resource identifier that corresponds to an existing resource but one was not found.",
"Message": "The requested resource of type %1 named %2 was not found.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Provide a valid resource identifier and resubmit the request."
},
"CreateFailedMissingReqProperties": {
"Description": "Indicates that a create was attempted on a resource but that properties that are required for the create operation were missing from the request.",
"Message": "The create operation failed because the required property %1 was missing from the request.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Correct the body to include the required property with a valid value and resubmit the request if the operation failed."
},
"CreateLimitReachedForResource": {
"Description": "Indicates that no more resources can be created on the resource as it has reached its create limit.",
"Message": "The create operation failed because the resource has reached the limit of possible resources.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Either delete resources and resubmit the request if the operation failed or do not resubmit the request."
},
"ServiceShuttingDown": {
"Description": "Indicates that the operation failed as the service is shutting down, such as when the service reboots.",
"Message": "The operation failed because the service is shutting down and can no longer take incoming requests.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "When the service becomes available, resubmit the request if the operation failed."
},
"ServiceInUnknownState": {
"Description": "Indicates that the operation failed because the service is in an unknown state and cannot accept additional requests.",
"Message": "The operation failed because the service is in an unknown state and can no longer take incoming requests.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Restart the service and resubmit the request if the operation failed."
},
"NoValidSession": {
"Description": "Indicates that the operation failed because a valid session is required in order to access any resources.",
"Message": "There is no valid session established with the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Establish as session before attempting any operations."
},
"InsufficientPrivilege": {
"Description": "Indicates that the credentials associated with the established session do not have sufficient privileges for the requested operation",
"Message": "There are insufficient privileges for the account or credentials associated with the current session to perform the requested operation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Either abandon the operation or change the associated access rights and resubmit the request if the operation failed."
},
"AccountModified": {
"Description": "Indicates that the account was successfully modified.",
"Message": "The account was successfully modified.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "No resolution is required."
},
"AccountNotModified": {
"Description": "Indicates that the modification requested for the account was not successful.",
"Message": "The account modification request failed.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "The modification may have failed due to permission issues or issues with the request body."
},
"AccountRemoved": {
"Description": "Indicates that the account was successfully removed.",
"Message": "The account was successfully removed.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "No resolution is required."
},
"AccountForSessionNoLongerExists": {
"Description": "Indicates that the account for the session has been removed, thus the session has been removed as well.",
"Message": "The account for the current session has been removed, thus the current session has been removed as well.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "Attempt to connect with a valid account."
},
"InvalidObject": {
"Description": "Indicates that the object in question is invalid according to the implementation. Examples include a firmware update malformed URI.",
"Message": "The object at %1 is invalid.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Either the object is malformed or the URI is not correct. Correct the condition and resubmit the request if it failed."
},
"InternalError": {
"Description": "Indicates that the request failed for an unknown internal error but that the service is still operational.",
"Message": "The request failed due to an internal service error. The service is still operational.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Resubmit the request. If the problem persists, consider resetting the service."
},
"UnrecognizedRequestBody": {
"Description": "Indicates that the service encountered an unrecognizable request body that could not even be interpreted as malformed JSON.",
"Message": "The service detected a malformed request body that it was unable to interpret.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Correct the request body and resubmit the request if it failed."
},
"ResourceMissingAtURI": {
"Description": "Indicates that the operation expected an image or other resource at the provided URI but none was found. Examples of this are in requests that require URIs like Firmware Update.",
"Message": "The resource at the URI %1 was not found.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Place a valid resource at the URI or correct the URI and resubmit the request."
},
"ResourceAtUriInUnknownFormat": {
"Description": "Indicates that the URI was valid but the resource or image at that URI was in a format not supported by the service.",
"Message": "The resource at %1 is in a format not recognized by the service.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Place an image or resource or file that is recognized by the service at the URI."
},
"ResourceAtUriUnauthorized": {
"Description": "Indicates that the attempt to access the resource/file/image at the URI was unauthorized.",
"Message": "While accessing the resource at %1, the service received an authorization error %2.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Ensure that the appropriate access is provided for the service in order for it to access the URI."
},
"CouldNotEstablishConnection": {
"Description": "Indicates that the attempt to access the resource/file/image at the URI was unsuccessful because a session could not be established.",
"Message": "The service failed to establish a connection with the URI %1.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the URI contains a valid and reachable node name, protocol information and other URI components."
},
"SourceDoesNotSupportProtocol": {
"Description": "Indicates that while attempting to access, connect to or transfer a resource/file/image from another location that the other end of the connection did not support the protocol",
"Message": "The other end of the connection at %1 does not support the specified protocol %2.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Change protocols or URIs. "
},
"AccessDenied": {
"Description": "Indicates that while attempting to access, connect to or transfer to/from another resource, the service denied access.",
"Message": "While attempting to establish a connection to %1, the service denied access.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Attempt to ensure that the URI is correct and that the service has the appropriate credentials."
},
"ServiceTemporarilyUnavailable": {
"Description": "Indicates the service is temporarily unavailable.",
"Message": "The service is temporarily unavailable. Retry in %1 seconds.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Wait for the indicated retry duration and retry the operation."
},
"InvalidIndex": {
"Description": "The Index is not valid.",
"Message": "The Index %1 is not a valid offset into the array.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"number"
],
"Resolution": "Verify the index value provided is within the bounds of the array."
},
"PropertyValueModified": {
"Description": "Indicates that a property was given the correct value type but the value of that property was modified. Examples are truncated or rounded values.",
"Message": "The property %1 was assigned the value %2 due to modification by the service.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "No resolution is required."
},
"ResourceInStandby": {
"Description": "Indicates that the request could not be performed because the resource is in standby.",
"Message": "The request could not be performed because the resource is in standby.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Ensure that the resource is in the correct power state and resubmit the request."
},
"ResourceExhaustion": {
"Description": "Indicates that a resource could not satisfy the request due to some unavailability of resources. An example is that available capacity has been allocated.",
"Message": "The resource %1 was unable to satisfy the request due to unavailability of resources.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the resources are available and resubmit the request."
},
"StringValueTooLong": {
"Description": "Indicates that a string value passed to the given resource exceeded its length limit. An example is when a shorter limit is imposed by an implementation than that allowed by the specification.",
"Message": "The string %1 exceeds the length limit %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"number"
],
"Resolution": "Resubmit the request with an appropriate string length."
},
"SessionTerminated": {
"Description": "Indicates that the DELETE operation on the Session resource resulted in the successful termination of the session.",
"Message": "The session was successfully terminated.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "No resolution is required."
}
}
}

View File

@ -0,0 +1,535 @@
{
"@Redfish.Copyright": "Copyright 2014-2018 DMTF. All rights reserved.",
"@Redfish.License": "Creative Commons Attribution 4.0 License. For full text see link: https://creativecommons.org/licenses/by/4.0/",
"@odata.type": "#MessageRegistry.v1_0_0.MessageRegistry",
"Id": "Base.1.3.1",
"Name": "Base Message Registry",
"Language": "en",
"Description": "This registry defines the base messages for Redfish",
"RegistryPrefix": "Base",
"RegistryVersion": "1.3.1",
"OwningEntity": "DMTF",
"Messages": {
"Success": {
"Description": "Indicates that all conditions of a successful operation have been met.",
"Message": "Successfully Completed Request",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "None"
},
"GeneralError": {
"Description": "Indicates that a general error has occurred. Use in ExtendedInfo is discouraged. When used in ExtendedInfo, implementations are expected to include a Resolution property with this error to indicate how to resolve the problem.",
"Message": "A general error has occurred. See Resolution for information on how to resolve the error.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "None."
},
"Created": {
"Description": "Indicates that all conditions of a successful creation operation have been met.",
"Message": "The resource has been created successfully",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "None"
},
"PropertyDuplicate": {
"Description": "Indicates that a duplicate property was included in the request body.",
"Message": "The property %1 was duplicated in the request.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the duplicate property from the request body and resubmit the request if the operation failed."
},
"PropertyUnknown": {
"Description": "Indicates that an unknown property was included in the request body.",
"Message": "The property %1 is not in the list of valid properties for the resource.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the unknown property from the request body and resubmit the request if the operation failed."
},
"PropertyValueTypeError": {
"Description": "Indicates that a property was given the wrong value type, such as when a number is supplied for a property that requires a string.",
"Message": "The value %1 for the property %2 is of a different type than the property can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the property in the request body and resubmit the request if the operation failed."
},
"PropertyValueFormatError": {
"Description": "Indicates that a property was given the correct value type but the value of that property was not supported.",
"Message": "The value %1 for the property %2 is of a different format than the property can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the property in the request body and resubmit the request if the operation failed."
},
"PropertyValueNotInList": {
"Description": "Indicates that a property was given the correct value type but the value of that property was not supported. This values not in an enumeration",
"Message": "The value %1 for the property %2 is not in the list of acceptable values.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Choose a value from the enumeration list that the implementation can support and resubmit the request if the operation failed."
},
"PropertyValueOutOfRange": {
"Description": "Indicates that a property was given the correct value type but the value of that property is outside the supported range.",
"Message": "The value %1 for the property %2 is not in the supported range of acceptable values.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the property in the request body and resubmit the request if the operation failed."
},
"PropertyNotWritable": {
"Description": "Indicates that a property was given a value in the request body, but the property is a readonly property.",
"Message": "The property %1 is a read only property and cannot be assigned a value.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the property from the request body and resubmit the request if the operation failed."
},
"PropertyMissing": {
"Description": "Indicates that a required property was not supplied as part of the request.",
"Message": "The property %1 is a required property and must be included in the request.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the property is in the request body and has a valid value and resubmit the request if the operation failed."
},
"MalformedJSON": {
"Description": "Indicates that the request body was malformed JSON. Could be duplicate, syntax error,etc.",
"Message": "The request body submitted was malformed JSON and could not be parsed by the receiving service.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Ensure that the request body is valid JSON and resubmit the request."
},
"EmptyJSON": {
"Description": "Indicates that the request body contained an empty JSON object when one or more properties are expected in the body.",
"Message": "The request body submitted contained an empty JSON object and the service is unable to process it.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Add properties in the JSON object and resubmit the request."
},
"ActionNotSupported": {
"Description": "Indicates that the action supplied with the POST operation is not supported by the resource.",
"Message": "The action %1 is not supported by the resource.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "The action supplied cannot be resubmitted to the implementation. Perhaps the action was invalid, the wrong resource was the target or the implementation documentation may be of assistance."
},
"ActionParameterMissing": {
"Description": "Indicates that the action requested was missing a parameter that is required to process the action.",
"Message": "The action %1 requires the parameter %2 to be present in the request body.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Supply the action with the required parameter in the request body when the request is resubmitted."
},
"ActionParameterDuplicate": {
"Description": "Indicates that the action was supplied with a duplicated parameter in the request body.",
"Message": "The action %1 was submitted with more than one value for the parameter %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Resubmit the action with only one instance of the parameter in the request body if the operation failed."
},
"ActionParameterUnknown": {
"Description": "Indicates that an action was submitted but a parameter supplied did not match any of the known parameters.",
"Message": "The action %1 was submitted with the invalid parameter %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the invalid parameter and resubmit the request if the operation failed."
},
"ActionParameterValueTypeError": {
"Description": "Indicates that a parameter was given the wrong value type, such as when a number is supplied for a parameter that requires a string.",
"Message": "The value %1 for the parameter %2 in the action %3 is of a different type than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Correct the value for the parameter in the request body and resubmit the request if the operation failed."
},
"ActionParameterValueFormatError": {
"Description": "Indicates that a parameter was given the correct value type but the value of that parameter was not supported. This includes value size/length exceeded.",
"Message": "The value %1 for the parameter %2 in the action %3 is of a different format than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Correct the value for the parameter in the request body and resubmit the request if the operation failed."
},
"ActionParameterNotSupported": {
"Description": "Indicates that the parameter supplied for the action is not supported on the resource.",
"Message": "The parameter %1 for the action %2 is not supported on the target resource.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Remove the parameter supplied and resubmit the request if the operation failed."
},
"QueryParameterValueTypeError": {
"Description": "Indicates that a query parameter was given the wrong value type, such as when a number is supplied for a query parameter that requires a string.",
"Message": "The value %1 for the query parameter %2 is of a different type than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the query parameter in the request and resubmit the request if the operation failed."
},
"QueryParameterValueFormatError": {
"Description": "Indicates that a query parameter was given the correct value type but the value of that parameter was not supported. This includes value size/length exceeded.",
"Message": "The value %1 for the parameter %2 is of a different format than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the query parameter in the request and resubmit the request if the operation failed."
},
"QueryParameterOutOfRange": {
"Description": "Indicates that a query parameter was supplied that is out of range for the given resource. This can happen with values that are too low or beyond that possible for the supplied resource, such as when a page is requested that is beyond the last page.",
"Message": "The value %1 for the query parameter %2 is out of range %3.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Reduce the value for the query parameter to a value that is within range, such as a start or count value that is within bounds of the number of resources in a collection or a page that is within the range of valid pages."
},
"QueryNotSupportedOnResource": {
"Description": "Indicates that query is not supported on the given resource, such as when a start/count query is attempted on a resource that is not a collection.",
"Message": "Querying is not supported on the requested resource.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the query parameters and resubmit the request if the operation failed."
},
"QueryNotSupported": {
"Description": "Indicates that query is not supported on the implementation.",
"Message": "Querying is not supported by the implementation.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the query parameters and resubmit the request if the operation failed."
},
"SessionLimitExceeded": {
"Description": "Indicates that a session establishment has been requested but the operation failed due to the number of simultaneous sessions exceeding the limit of the implementation.",
"Message": "The session establishment failed due to the number of simultaneous sessions exceeding the limit of the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Reduce the number of other sessions before trying to establish the session or increase the limit of simultaneous sessions (if supported)."
},
"EventSubscriptionLimitExceeded": {
"Description": "Indicates that a event subscription establishment has been requested but the operation failed due to the number of simultaneous connection exceeding the limit of the implementation.",
"Message": "The event subscription failed due to the number of simultaneous subscriptions exceeding the limit of the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Reduce the number of other subscriptions before trying to establish the event subscription or increase the limit of simultaneous subscriptions (if supported)."
},
"ResourceCannotBeDeleted": {
"Description": "Indicates that a delete operation was attempted on a resource that cannot be deleted.",
"Message": "The delete request failed because the resource requested cannot be deleted.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Do not attempt to delete a non-deletable resource."
},
"ResourceInUse": {
"Description": "Indicates that a change was requested to a resource but the change was rejected due to the resource being in use or transition.",
"Message": "The change to the requested resource failed because the resource is in use or in transition.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the condition and resubmit the request if the operation failed."
},
"ResourceAlreadyExists": {
"Description": "Indicates that a resource change or creation was attempted but that the operation cannot proceed because the resource already exists.",
"Message": "The requested resource of type %1 with the property %2 with the value %3 already exists.",
"Severity": "Critical",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Do not repeat the create operation as the resource has already been created."
},
"ResourceNotFound": {
"Description": "Indicates that the operation expected a resource identifier that corresponds to an existing resource but one was not found.",
"Message": "The requested resource of type %1 named %2 was not found.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Provide a valid resource identifier and resubmit the request."
},
"CreateFailedMissingReqProperties": {
"Description": "Indicates that a create was attempted on a resource but that properties that are required for the create operation were missing from the request.",
"Message": "The create operation failed because the required property %1 was missing from the request.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Correct the body to include the required property with a valid value and resubmit the request if the operation failed."
},
"CreateLimitReachedForResource": {
"Description": "Indicates that no more resources can be created on the resource as it has reached its create limit.",
"Message": "The create operation failed because the resource has reached the limit of possible resources.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Either delete resources and resubmit the request if the operation failed or do not resubmit the request."
},
"ServiceShuttingDown": {
"Description": "Indicates that the operation failed as the service is shutting down, such as when the service reboots.",
"Message": "The operation failed because the service is shutting down and can no longer take incoming requests.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "When the service becomes available, resubmit the request if the operation failed."
},
"ServiceInUnknownState": {
"Description": "Indicates that the operation failed because the service is in an unknown state and cannot accept additional requests.",
"Message": "The operation failed because the service is in an unknown state and can no longer take incoming requests.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Restart the service and resubmit the request if the operation failed."
},
"NoValidSession": {
"Description": "Indicates that the operation failed because a valid session is required in order to access any resources.",
"Message": "There is no valid session established with the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Establish as session before attempting any operations."
},
"InsufficientPrivilege": {
"Description": "Indicates that the credentials associated with the established session do not have sufficient privileges for the requested operation",
"Message": "There are insufficient privileges for the account or credentials associated with the current session to perform the requested operation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Either abandon the operation or change the associated access rights and resubmit the request if the operation failed."
},
"AccountModified": {
"Description": "Indicates that the account was successfully modified.",
"Message": "The account was successfully modified.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "No resolution is required."
},
"AccountNotModified": {
"Description": "Indicates that the modification requested for the account was not successful.",
"Message": "The account modification request failed.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "The modification may have failed due to permission issues or issues with the request body."
},
"AccountRemoved": {
"Description": "Indicates that the account was successfully removed.",
"Message": "The account was successfully removed.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "No resolution is required."
},
"AccountForSessionNoLongerExists": {
"Description": "Indicates that the account for the session has been removed, thus the session has been removed as well.",
"Message": "The account for the current session has been removed, thus the current session has been removed as well.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "Attempt to connect with a valid account."
},
"InvalidObject": {
"Description": "Indicates that the object in question is invalid according to the implementation. Examples include a firmware update malformed URI.",
"Message": "The object at %1 is invalid.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Either the object is malformed or the URI is not correct. Correct the condition and resubmit the request if it failed."
},
"InternalError": {
"Description": "Indicates that the request failed for an unknown internal error but that the service is still operational.",
"Message": "The request failed due to an internal service error. The service is still operational.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Resubmit the request. If the problem persists, consider resetting the service."
},
"UnrecognizedRequestBody": {
"Description": "Indicates that the service encountered an unrecognizable request body that could not even be interpreted as malformed JSON.",
"Message": "The service detected a malformed request body that it was unable to interpret.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Correct the request body and resubmit the request if it failed."
},
"ResourceMissingAtURI": {
"Description": "Indicates that the operation expected an image or other resource at the provided URI but none was found. Examples of this are in requests that require URIs like Firmware Update.",
"Message": "The resource at the URI %1 was not found.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Place a valid resource at the URI or correct the URI and resubmit the request."
},
"ResourceAtUriInUnknownFormat": {
"Description": "Indicates that the URI was valid but the resource or image at that URI was in a format not supported by the service.",
"Message": "The resource at %1 is in a format not recognized by the service.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Place an image or resource or file that is recognized by the service at the URI."
},
"ResourceAtUriUnauthorized": {
"Description": "Indicates that the attempt to access the resource/file/image at the URI was unauthorized.",
"Message": "While accessing the resource at %1, the service received an authorization error %2.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Ensure that the appropriate access is provided for the service in order for it to access the URI."
},
"CouldNotEstablishConnection": {
"Description": "Indicates that the attempt to access the resource/file/image at the URI was unsuccessful because a session could not be established.",
"Message": "The service failed to establish a connection with the URI %1.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the URI contains a valid and reachable node name, protocol information and other URI components."
},
"SourceDoesNotSupportProtocol": {
"Description": "Indicates that while attempting to access, connect to or transfer a resource/file/image from another location that the other end of the connection did not support the protocol",
"Message": "The other end of the connection at %1 does not support the specified protocol %2.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Change protocols or URIs. "
},
"AccessDenied": {
"Description": "Indicates that while attempting to access, connect to or transfer to/from another resource, the service denied access.",
"Message": "While attempting to establish a connection to %1, the service denied access.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Attempt to ensure that the URI is correct and that the service has the appropriate credentials."
},
"ServiceTemporarilyUnavailable": {
"Description": "Indicates the service is temporarily unavailable.",
"Message": "The service is temporarily unavailable. Retry in %1 seconds.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Wait for the indicated retry duration and retry the operation."
},
"InvalidIndex": {
"Description": "The Index is not valid.",
"Message": "The Index %1 is not a valid offset into the array.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"number"
],
"Resolution": "Verify the index value provided is within the bounds of the array."
},
"PropertyValueModified": {
"Description": "Indicates that a property was given the correct value type but the value of that property was modified. Examples are truncated or rounded values.",
"Message": "The property %1 was assigned the value %2 due to modification by the service.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "No resolution is required."
},
"ResourceInStandby": {
"Description": "Indicates that the request could not be performed because the resource is in standby.",
"Message": "The request could not be performed because the resource is in standby.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Ensure that the resource is in the correct power state and resubmit the request."
},
"ResourceExhaustion": {
"Description": "Indicates that a resource could not satisfy the request due to some unavailability of resources. An example is that available capacity has been allocated.",
"Message": "The resource %1 was unable to satisfy the request due to unavailability of resources.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the resources are available and resubmit the request."
},
"StringValueTooLong": {
"Description": "Indicates that a string value passed to the given resource exceeded its length limit. An example is when a shorter limit is imposed by an implementation than that allowed by the specification.",
"Message": "The string %1 exceeds the length limit %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"number"
],
"Resolution": "Resubmit the request with an appropriate string length."
},
"SessionTerminated": {
"Description": "Indicates that the DELETE operation on the Session resource resulted in the successful termination of the session.",
"Message": "The session was successfully terminated.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "No resolution is required."
}
}
}

View File

@ -0,0 +1,542 @@
{
"@Redfish.Copyright": "Copyright 2014-2018 DMTF. All rights reserved.",
"@Redfish.License": "Creative Commons Attribution 4.0 License. For full text see link: https://creativecommons.org/licenses/by/4.0/",
"@odata.type": "#MessageRegistry.v1_0_0.MessageRegistry",
"Id": "Base.1.4.0",
"Name": "Base Message Registry",
"Language": "en",
"Description": "This registry defines the base messages for Redfish",
"RegistryPrefix": "Base",
"RegistryVersion": "1.4.0",
"OwningEntity": "DMTF",
"Messages": {
"Success": {
"Description": "Indicates that all conditions of a successful operation have been met.",
"Message": "Successfully Completed Request",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "None"
},
"GeneralError": {
"Description": "Indicates that a general error has occurred. Use in ExtendedInfo is discouraged. When used in ExtendedInfo, implementations are expected to include a Resolution property with this error to indicate how to resolve the problem.",
"Message": "A general error has occurred. See Resolution for information on how to resolve the error.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "None."
},
"Created": {
"Description": "Indicates that all conditions of a successful creation operation have been met.",
"Message": "The resource has been created successfully",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "None"
},
"NoOperation": {
"Description": "Indicates that the requested operation will not perform any changes on the service.",
"Message": "The request body submitted contain no data to act upon and no changes to the resource took place.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Add properties in the JSON object and resubmit the request."
},
"PropertyDuplicate": {
"Description": "Indicates that a duplicate property was included in the request body.",
"Message": "The property %1 was duplicated in the request.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the duplicate property from the request body and resubmit the request if the operation failed."
},
"PropertyUnknown": {
"Description": "Indicates that an unknown property was included in the request body.",
"Message": "The property %1 is not in the list of valid properties for the resource.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the unknown property from the request body and resubmit the request if the operation failed."
},
"PropertyValueTypeError": {
"Description": "Indicates that a property was given the wrong value type, such as when a number is supplied for a property that requires a string.",
"Message": "The value %1 for the property %2 is of a different type than the property can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the property in the request body and resubmit the request if the operation failed."
},
"PropertyValueFormatError": {
"Description": "Indicates that a property was given the correct value type but the value of that property was not supported.",
"Message": "The value %1 for the property %2 is of a different format than the property can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the property in the request body and resubmit the request if the operation failed."
},
"PropertyValueNotInList": {
"Description": "Indicates that a property was given the correct value type but the value of that property was not supported. This values not in an enumeration",
"Message": "The value %1 for the property %2 is not in the list of acceptable values.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Choose a value from the enumeration list that the implementation can support and resubmit the request if the operation failed."
},
"PropertyNotWritable": {
"Description": "Indicates that a property was given a value in the request body, but the property is a readonly property.",
"Message": "The property %1 is a read only property and cannot be assigned a value.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Remove the property from the request body and resubmit the request if the operation failed."
},
"PropertyMissing": {
"Description": "Indicates that a required property was not supplied as part of the request.",
"Message": "The property %1 is a required property and must be included in the request.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the property is in the request body and has a valid value and resubmit the request if the operation failed."
},
"MalformedJSON": {
"Description": "Indicates that the request body was malformed JSON. Could be duplicate, syntax error,etc.",
"Message": "The request body submitted was malformed JSON and could not be parsed by the receiving service.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Ensure that the request body is valid JSON and resubmit the request."
},
"EmptyJSON": {
"Description": "Indicates that the request body contained an empty JSON object when one or more properties are expected in the body.",
"Message": "The request body submitted contained an empty JSON object and the service is unable to process it.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Add properties in the JSON object and resubmit the request."
},
"ActionNotSupported": {
"Description": "Indicates that the action supplied with the POST operation is not supported by the resource.",
"Message": "The action %1 is not supported by the resource.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "The action supplied cannot be resubmitted to the implementation. Perhaps the action was invalid, the wrong resource was the target or the implementation documentation may be of assistance."
},
"ActionParameterMissing": {
"Description": "Indicates that the action requested was missing a parameter that is required to process the action.",
"Message": "The action %1 requires the parameter %2 to be present in the request body.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Supply the action with the required parameter in the request body when the request is resubmitted."
},
"ActionParameterDuplicate": {
"Description": "Indicates that the action was supplied with a duplicated parameter in the request body.",
"Message": "The action %1 was submitted with more than one value for the parameter %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Resubmit the action with only one instance of the parameter in the request body if the operation failed."
},
"ActionParameterUnknown": {
"Description": "Indicates that an action was submitted but a parameter supplied did not match any of the known parameters.",
"Message": "The action %1 was submitted with the invalid parameter %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the invalid parameter and resubmit the request if the operation failed."
},
"ActionParameterValueTypeError": {
"Description": "Indicates that a parameter was given the wrong value type, such as when a number is supplied for a parameter that requires a string.",
"Message": "The value %1 for the parameter %2 in the action %3 is of a different type than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Correct the value for the parameter in the request body and resubmit the request if the operation failed."
},
"ActionParameterValueFormatError": {
"Description": "Indicates that a parameter was given the correct value type but the value of that parameter was not supported. This includes value size/length exceeded.",
"Message": "The value %1 for the parameter %2 in the action %3 is of a different format than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Correct the value for the parameter in the request body and resubmit the request if the operation failed."
},
"ActionParameterNotSupported": {
"Description": "Indicates that the parameter supplied for the action is not supported on the resource.",
"Message": "The parameter %1 for the action %2 is not supported on the target resource.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Remove the parameter supplied and resubmit the request if the operation failed."
},
"QueryParameterValueTypeError": {
"Description": "Indicates that a query parameter was given the wrong value type, such as when a number is supplied for a query parameter that requires a string.",
"Message": "The value %1 for the query parameter %2 is of a different type than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the query parameter in the request and resubmit the request if the operation failed."
},
"QueryParameterValueFormatError": {
"Description": "Indicates that a query parameter was given the correct value type but the value of that parameter was not supported. This includes value size/length exceeded.",
"Message": "The value %1 for the parameter %2 is of a different format than the parameter can accept.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Correct the value for the query parameter in the request and resubmit the request if the operation failed."
},
"QueryParameterOutOfRange": {
"Description": "Indicates that a query parameter was supplied that is out of range for the given resource. This can happen with values that are too low or beyond that possible for the supplied resource, such as when a page is requested that is beyond the last page.",
"Message": "The value %1 for the query parameter %2 is out of range %3.",
"Severity": "Warning",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Reduce the value for the query parameter to a value that is within range, such as a start or count value that is within bounds of the number of resources in a collection or a page that is within the range of valid pages."
},
"QueryNotSupportedOnResource": {
"Description": "Indicates that query is not supported on the given resource, such as when a start/count query is attempted on a resource that is not a collection.",
"Message": "Querying is not supported on the requested resource.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the query parameters and resubmit the request if the operation failed."
},
"QueryNotSupported": {
"Description": "Indicates that query is not supported on the implementation.",
"Message": "Querying is not supported by the implementation.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the query parameters and resubmit the request if the operation failed."
},
"SessionLimitExceeded": {
"Description": "Indicates that a session establishment has been requested but the operation failed due to the number of simultaneous sessions exceeding the limit of the implementation.",
"Message": "The session establishment failed due to the number of simultaneous sessions exceeding the limit of the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Reduce the number of other sessions before trying to establish the session or increase the limit of simultaneous sessions (if supported)."
},
"EventSubscriptionLimitExceeded": {
"Description": "Indicates that a event subscription establishment has been requested but the operation failed due to the number of simultaneous connection exceeding the limit of the implementation.",
"Message": "The event subscription failed due to the number of simultaneous subscriptions exceeding the limit of the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Reduce the number of other subscriptions before trying to establish the event subscription or increase the limit of simultaneous subscriptions (if supported)."
},
"ResourceCannotBeDeleted": {
"Description": "Indicates that a delete operation was attempted on a resource that cannot be deleted.",
"Message": "The delete request failed because the resource requested cannot be deleted.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Do not attempt to delete a non-deletable resource."
},
"ResourceInUse": {
"Description": "Indicates that a change was requested to a resource but the change was rejected due to the resource being in use or transition.",
"Message": "The change to the requested resource failed because the resource is in use or in transition.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Remove the condition and resubmit the request if the operation failed."
},
"ResourceAlreadyExists": {
"Description": "Indicates that a resource change or creation was attempted but that the operation cannot proceed because the resource already exists.",
"Message": "The requested resource of type %1 with the property %2 with the value %3 already exists.",
"Severity": "Critical",
"NumberOfArgs": 3,
"ParamTypes": [
"string",
"string",
"string"
],
"Resolution": "Do not repeat the create operation as the resource has already been created."
},
"ResourceNotFound": {
"Description": "Indicates that the operation expected a resource identifier that corresponds to an existing resource but one was not found.",
"Message": "The requested resource of type %1 named %2 was not found.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Provide a valid resource identifier and resubmit the request."
},
"CreateFailedMissingReqProperties": {
"Description": "Indicates that a create was attempted on a resource but that properties that are required for the create operation were missing from the request.",
"Message": "The create operation failed because the required property %1 was missing from the request.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Correct the body to include the required property with a valid value and resubmit the request if the operation failed."
},
"CreateLimitReachedForResource": {
"Description": "Indicates that no more resources can be created on the resource as it has reached its create limit.",
"Message": "The create operation failed because the resource has reached the limit of possible resources.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Either delete resources and resubmit the request if the operation failed or do not resubmit the request."
},
"ServiceShuttingDown": {
"Description": "Indicates that the operation failed as the service is shutting down, such as when the service reboots.",
"Message": "The operation failed because the service is shutting down and can no longer take incoming requests.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "When the service becomes available, resubmit the request if the operation failed."
},
"ServiceInUnknownState": {
"Description": "Indicates that the operation failed because the service is in an unknown state and cannot accept additional requests.",
"Message": "The operation failed because the service is in an unknown state and can no longer take incoming requests.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Restart the service and resubmit the request if the operation failed."
},
"NoValidSession": {
"Description": "Indicates that the operation failed because a valid session is required in order to access any resources.",
"Message": "There is no valid session established with the implementation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Establish as session before attempting any operations."
},
"InsufficientPrivilege": {
"Description": "Indicates that the credentials associated with the established session do not have sufficient privileges for the requested operation",
"Message": "There are insufficient privileges for the account or credentials associated with the current session to perform the requested operation.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Either abandon the operation or change the associated access rights and resubmit the request if the operation failed."
},
"AccountModified": {
"Description": "Indicates that the account was successfully modified.",
"Message": "The account was successfully modified.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "No resolution is required."
},
"AccountNotModified": {
"Description": "Indicates that the modification requested for the account was not successful.",
"Message": "The account modification request failed.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "The modification may have failed due to permission issues or issues with the request body."
},
"AccountRemoved": {
"Description": "Indicates that the account was successfully removed.",
"Message": "The account was successfully removed.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "No resolution is required."
},
"AccountForSessionNoLongerExists": {
"Description": "Indicates that the account for the session has been removed, thus the session has been removed as well.",
"Message": "The account for the current session has been removed, thus the current session has been removed as well.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "Attempt to connect with a valid account."
},
"InvalidObject": {
"Description": "Indicates that the object in question is invalid according to the implementation. Examples include a firmware update malformed URI.",
"Message": "The object at %1 is invalid.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Either the object is malformed or the URI is not correct. Correct the condition and resubmit the request if it failed."
},
"InternalError": {
"Description": "Indicates that the request failed for an unknown internal error but that the service is still operational.",
"Message": "The request failed due to an internal service error. The service is still operational.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Resubmit the request. If the problem persists, consider resetting the service."
},
"UnrecognizedRequestBody": {
"Description": "Indicates that the service encountered an unrecognizable request body that could not even be interpreted as malformed JSON.",
"Message": "The service detected a malformed request body that it was unable to interpret.",
"Severity": "Warning",
"NumberOfArgs": 0,
"Resolution": "Correct the request body and resubmit the request if it failed."
},
"ResourceMissingAtURI": {
"Description": "Indicates that the operation expected an image or other resource at the provided URI but none was found. Examples of this are in requests that require URIs like Firmware Update.",
"Message": "The resource at the URI %1 was not found.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Place a valid resource at the URI or correct the URI and resubmit the request."
},
"ResourceAtUriInUnknownFormat": {
"Description": "Indicates that the URI was valid but the resource or image at that URI was in a format not supported by the service.",
"Message": "The resource at %1 is in a format not recognized by the service.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Place an image or resource or file that is recognized by the service at the URI."
},
"ResourceAtUriUnauthorized": {
"Description": "Indicates that the attempt to access the resource/file/image at the URI was unauthorized.",
"Message": "While accessing the resource at %1, the service received an authorization error %2.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Ensure that the appropriate access is provided for the service in order for it to access the URI."
},
"CouldNotEstablishConnection": {
"Description": "Indicates that the attempt to access the resource/file/image at the URI was unsuccessful because a session could not be established.",
"Message": "The service failed to establish a connection with the URI %1.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the URI contains a valid and reachable node name, protocol information and other URI components."
},
"SourceDoesNotSupportProtocol": {
"Description": "Indicates that while attempting to access, connect to or transfer a resource/file/image from another location that the other end of the connection did not support the protocol",
"Message": "The other end of the connection at %1 does not support the specified protocol %2.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Change protocols or URIs. "
},
"AccessDenied": {
"Description": "Indicates that while attempting to access, connect to or transfer to/from another resource, the service denied access.",
"Message": "While attempting to establish a connection to %1, the service denied access.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Attempt to ensure that the URI is correct and that the service has the appropriate credentials."
},
"ServiceTemporarilyUnavailable": {
"Description": "Indicates the service is temporarily unavailable.",
"Message": "The service is temporarily unavailable. Retry in %1 seconds.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Wait for the indicated retry duration and retry the operation."
},
"InvalidIndex": {
"Description": "The Index is not valid.",
"Message": "The Index %1 is not a valid offset into the array.",
"Severity": "Warning",
"NumberOfArgs": 1,
"ParamTypes": [
"number"
],
"Resolution": "Verify the index value provided is within the bounds of the array."
},
"PropertyValueModified": {
"Description": "Indicates that a property was given the correct value type but the value of that property was modified. Examples are truncated or rounded values.",
"Message": "The property %1 was assigned the value %2 due to modification by the service.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "No resolution is required."
},
"ResourceInStandby": {
"Description": "Indicates that the request could not be performed because the resource is in standby.",
"Message": "The request could not be performed because the resource is in standby.",
"Severity": "Critical",
"NumberOfArgs": 0,
"Resolution": "Ensure that the resource is in the correct power state and resubmit the request."
},
"ResourceExhaustion": {
"Description": "Indicates that a resource could not satisfy the request due to some unavailability of resources. An example is that available capacity has been allocated.",
"Message": "The resource %1 was unable to satisfy the request due to unavailability of resources.",
"Severity": "Critical",
"NumberOfArgs": 1,
"ParamTypes": [
"string"
],
"Resolution": "Ensure that the resources are available and resubmit the request."
},
"StringValueTooLong": {
"Description": "Indicates that a string value passed to the given resource exceeded its length limit. An example is when a shorter limit is imposed by an implementation than that allowed by the specification.",
"Message": "The string %1 exceeds the length limit %2.",
"Severity": "Warning",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"number"
],
"Resolution": "Resubmit the request with an appropriate string length."
},
"SessionTerminated": {
"Description": "Indicates that the DELETE operation on the Session resource resulted in the successful termination of the session.",
"Message": "The session was successfully terminated.",
"Severity": "OK",
"NumberOfArgs": 0,
"Resolution": "No resolution is required."
},
"ResourceTypeIncompatible": {
"Description": "Indicates that the resource type of the operation does not match that for the operation destination. Examples of when this can happen include during a POST to a collection using the wrong resource type, an update where the @odata.types do not match or on a major version incompatability.",
"Message": "The @odata.type of the request body %1 is incompatible with the @odata.type of the resource which is %2.",
"Severity": "Critical",
"NumberOfArgs": 2,
"ParamTypes": [
"string",
"string"
],
"Resolution": "Resubmit the request with a payload compatible with the resource's schema."
}
}
}

View File

@ -134,6 +134,13 @@ class ResourceBaseTestCase(base.TestCase):
self.assertTrue(oem_vendor in ('Contoso', 'EID_412_ASB_123'))
self.assertEqual('base_resource2', self.base_resource2.resource_name)
def test_refresh_local(self):
resource = BaseResource(None, 'json_samples/message_registry.json',
reader=resource_base.
JsonPackagedFileReader('sushy.tests.unit'))
self.assertIsNotNone(resource._json)
self.assertEqual('Test.1.1.1', resource._json['Id'])
class TestResource(resource_base.ResourceBase):
"""A concrete Test Resource to test against"""

View File

@ -14,7 +14,6 @@
# under the License.
import json
import mock
from sushy import auth
@ -172,6 +171,13 @@ class MainTestCase(base.TestCase):
self.root._conn, '/redfish/v1/CompositionService',
redfish_version=self.root.redfish_version)
def test__get_standard_message_registry_collection(self):
registries = self.root._get_standard_message_registry_collection()
self.assertEqual(5, len(registries))
self.assertTrue([r.identity for r in registries
if r.identity == 'Base.1.3.0'])
class BareMinimumMainTestCase(base.TestCase):