1 /* 2 // Copyright (c) 2020 Intel Corporation 3 // 4 // Licensed under the Apache License, Version 2.0 (the "License"); 5 // you may not use this file except in compliance with the License. 6 // You may obtain a copy of the License at 7 // 8 // http://www.apache.org/licenses/LICENSE-2.0 9 // 10 // Unless required by applicable law or agreed to in writing, software 11 // distributed under the License is distributed on an "AS IS" BASIS, 12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 // See the License for the specific language governing permissions and 14 // limitations under the License. 15 */ 16 /**************************************************************** 17 * This is an auto-generated header which contains definitions 18 * for Redfish DMTF defined messages. 19 ***************************************************************/ 20 #pragma once 21 #include <registries.hpp> 22 23 namespace redfish::message_registries::base 24 { 25 const Header header = { 26 "Copyright 2014-2018 DMTF. All rights reserved.", 27 "#MessageRegistry.v1_0_0.MessageRegistry", 28 "Base.1.4.0", 29 "Base Message Registry", 30 "en", 31 "This registry defines the base messages for Redfish", 32 "Base", 33 "1.4.0", 34 "DMTF", 35 }; 36 constexpr const char* url = 37 "https://redfish.dmtf.org/registries/Base.1.4.0.json"; 38 39 constexpr std::array<MessageEntry, 58> registry = { 40 MessageEntry{ 41 "AccessDenied", 42 { 43 "Indicates that while attempting to access, connect to or transfer " 44 "to/from another resource, the service denied access.", 45 "While attempting to establish a connection to %1, the service " 46 "denied access.", 47 "Critical", 48 1, 49 { 50 "string", 51 }, 52 "Attempt to ensure that the URI is correct and that the service " 53 "has the appropriate credentials.", 54 }}, 55 MessageEntry{"AccountForSessionNoLongerExists", 56 { 57 "Indicates that the account for the session has been " 58 "removed, thus the session has been removed as well.", 59 "The account for the current session has been removed, " 60 "thus the current session has been removed as well.", 61 "OK", 62 0, 63 {}, 64 "Attempt to connect with a valid account.", 65 }}, 66 MessageEntry{"AccountModified", 67 { 68 "Indicates that the account was successfully modified.", 69 "The account was successfully modified.", 70 "OK", 71 0, 72 {}, 73 "No resolution is required.", 74 }}, 75 MessageEntry{"AccountNotModified", 76 { 77 "Indicates that the modification requested for the " 78 "account was not successful.", 79 "The account modification request failed.", 80 "Warning", 81 0, 82 {}, 83 "The modification may have failed due to permission " 84 "issues or issues with the request body.", 85 }}, 86 MessageEntry{"AccountRemoved", 87 { 88 "Indicates that the account was successfully removed.", 89 "The account was successfully removed.", 90 "OK", 91 0, 92 {}, 93 "No resolution is required.", 94 }}, 95 MessageEntry{ 96 "ActionNotSupported", 97 { 98 "Indicates that the action supplied with the POST operation is not " 99 "supported by the resource.", 100 "The action %1 is not supported by the resource.", 101 "Critical", 102 1, 103 { 104 "string", 105 }, 106 "The action supplied cannot be resubmitted to the implementation. " 107 "Perhaps the action was invalid, the wrong resource was the target " 108 "or the implementation documentation may be of assistance.", 109 }}, 110 MessageEntry{"ActionParameterDuplicate", 111 { 112 "Indicates that the action was supplied with a duplicated " 113 "parameter in the request body.", 114 "The action %1 was submitted with more than one value for " 115 "the parameter %2.", 116 "Warning", 117 2, 118 { 119 "string", 120 "string", 121 }, 122 "Resubmit the action with only one instance of the " 123 "parameter in the request body if the operation failed.", 124 }}, 125 MessageEntry{"ActionParameterMissing", 126 { 127 "Indicates that the action requested was missing a " 128 "parameter that is required to process the action.", 129 "The action %1 requires the parameter %2 to be present in " 130 "the request body.", 131 "Critical", 132 2, 133 { 134 "string", 135 "string", 136 }, 137 "Supply the action with the required parameter in the " 138 "request body when the request is resubmitted.", 139 }}, 140 MessageEntry{"ActionParameterNotSupported", 141 { 142 "Indicates that the parameter supplied for the action is " 143 "not supported on the resource.", 144 "The parameter %1 for the action %2 is not supported on " 145 "the target resource.", 146 "Warning", 147 2, 148 { 149 "string", 150 "string", 151 }, 152 "Remove the parameter supplied and resubmit the request " 153 "if the operation failed.", 154 }}, 155 MessageEntry{ 156 "ActionParameterUnknown", 157 { 158 "Indicates that an action was submitted but a parameter supplied " 159 "did not match any of the known parameters.", 160 "The action %1 was submitted with the invalid parameter %2.", 161 "Warning", 162 2, 163 { 164 "string", 165 "string", 166 }, 167 "Correct the invalid parameter and resubmit the request if the " 168 "operation failed.", 169 }}, 170 MessageEntry{"ActionParameterValueFormatError", 171 { 172 "Indicates that a parameter was given the correct value " 173 "type but the value of that parameter was not supported. " 174 "This includes value size/length exceeded.", 175 "The value %1 for the parameter %2 in the action %3 is of " 176 "a different format than the parameter can accept.", 177 "Warning", 178 3, 179 { 180 "string", 181 "string", 182 "string", 183 }, 184 "Correct the value for the parameter in the request body " 185 "and resubmit the request if the operation failed.", 186 }}, 187 MessageEntry{"ActionParameterValueTypeError", 188 { 189 "Indicates that a parameter was given the wrong value " 190 "type, such as when a number is supplied for a parameter " 191 "that requires a string.", 192 "The value %1 for the parameter %2 in the action %3 is of " 193 "a different type than the parameter can accept.", 194 "Warning", 195 3, 196 { 197 "string", 198 "string", 199 "string", 200 }, 201 "Correct the value for the parameter in the request body " 202 "and resubmit the request if the operation failed.", 203 }}, 204 MessageEntry{ 205 "CouldNotEstablishConnection", 206 { 207 "Indicates that the attempt to access the resource/file/image at " 208 "the URI was unsuccessful because a session could not be " 209 "established.", 210 "The service failed to establish a connection with the URI %1.", 211 "Critical", 212 1, 213 { 214 "string", 215 }, 216 "Ensure that the URI contains a valid and reachable node name, " 217 "protocol information and other URI components.", 218 }}, 219 MessageEntry{ 220 "CreateFailedMissingReqProperties", 221 { 222 "Indicates that a create was attempted on a resource but that " 223 "properties that are required for the create operation were " 224 "missing from the request.", 225 "The create operation failed because the required property %1 was " 226 "missing from the request.", 227 "Critical", 228 1, 229 { 230 "string", 231 }, 232 "Correct the body to include the required property with a valid " 233 "value and resubmit the request if the operation failed.", 234 }}, 235 MessageEntry{"CreateLimitReachedForResource", 236 { 237 "Indicates that no more resources can be created on the " 238 "resource as it has reached its create limit.", 239 "The create operation failed because the resource has " 240 "reached the limit of possible resources.", 241 "Critical", 242 0, 243 {}, 244 "Either delete resources and resubmit the request if the " 245 "operation failed or do not resubmit the request.", 246 }}, 247 MessageEntry{"Created", 248 { 249 "Indicates that all conditions of a successful creation " 250 "operation have been met.", 251 "The resource has been created successfully", 252 "OK", 253 0, 254 {}, 255 "None", 256 }}, 257 MessageEntry{ 258 "EmptyJSON", 259 { 260 "Indicates that the request body contained an empty JSON object " 261 "when one or more properties are expected in the body.", 262 "The request body submitted contained an empty JSON object and the " 263 "service is unable to process it.", 264 "Warning", 265 0, 266 {}, 267 "Add properties in the JSON object and resubmit the request.", 268 }}, 269 MessageEntry{ 270 "EventSubscriptionLimitExceeded", 271 { 272 "Indicates that a event subscription establishment has been " 273 "requested but the operation failed due to the number of " 274 "simultaneous connection exceeding the limit of the " 275 "implementation.", 276 "The event subscription failed due to the number of simultaneous " 277 "subscriptions exceeding the limit of the implementation.", 278 "Critical", 279 0, 280 {}, 281 "Reduce the number of other subscriptions before trying to " 282 "establish the event subscription or increase the limit of " 283 "simultaneous subscriptions (if supported).", 284 }}, 285 MessageEntry{ 286 "GeneralError", 287 { 288 "Indicates that a general error has occurred. Use in ExtendedInfo " 289 "is discouraged. When used in ExtendedInfo, implementations are " 290 "expected to include a Resolution property with this error to " 291 "indicate how to resolve the problem.", 292 "A general error has occurred. See Resolution for information on " 293 "how to resolve the error.", 294 "Critical", 295 0, 296 {}, 297 "None.", 298 }}, 299 MessageEntry{ 300 "InsufficientPrivilege", 301 { 302 "Indicates that the credentials associated with the established " 303 "session do not have sufficient privileges for the requested " 304 "operation", 305 "There are insufficient privileges for the account or credentials " 306 "associated with the current session to perform the requested " 307 "operation.", 308 "Critical", 309 0, 310 {}, 311 "Either abandon the operation or change the associated access " 312 "rights and resubmit the request if the operation failed.", 313 }}, 314 MessageEntry{ 315 "InternalError", 316 { 317 "Indicates that the request failed for an unknown internal error " 318 "but that the service is still operational.", 319 "The request failed due to an internal service error. The service " 320 "is still operational.", 321 "Critical", 322 0, 323 {}, 324 "Resubmit the request. If the problem persists, consider " 325 "resetting the service.", 326 }}, 327 MessageEntry{"InvalidIndex", 328 { 329 "The Index is not valid.", 330 "The Index %1 is not a valid offset into the array.", 331 "Warning", 332 1, 333 { 334 "number", 335 }, 336 "Verify the index value provided is within the bounds of " 337 "the array.", 338 }}, 339 MessageEntry{ 340 "InvalidObject", 341 { 342 "Indicates that the object in question is invalid according to the " 343 "implementation. Examples include a firmware update malformed " 344 "URI.", 345 "The object at %1 is invalid.", 346 "Critical", 347 1, 348 { 349 "string", 350 }, 351 "Either the object is malformed or the URI is not correct. " 352 "Correct the condition and resubmit the request if it failed.", 353 }}, 354 MessageEntry{"MalformedJSON", 355 { 356 "Indicates that the request body was malformed JSON. " 357 "Could be duplicate, syntax error,etc.", 358 "The request body submitted was malformed JSON and could " 359 "not be parsed by the receiving service.", 360 "Critical", 361 0, 362 {}, 363 "Ensure that the request body is valid JSON and resubmit " 364 "the request.", 365 }}, 366 MessageEntry{ 367 "NoOperation", 368 { 369 "Indicates that the requested operation will not perform any " 370 "changes on the service.", 371 "The request body submitted contain no data to act upon and no " 372 "changes to the resource took place.", 373 "Warning", 374 0, 375 {}, 376 "Add properties in the JSON object and resubmit the request.", 377 }}, 378 MessageEntry{ 379 "NoValidSession", 380 { 381 "Indicates that the operation failed because a valid session is " 382 "required in order to access any resources.", 383 "There is no valid session established with the implementation.", 384 "Critical", 385 0, 386 {}, 387 "Establish as session before attempting any operations.", 388 }}, 389 MessageEntry{"PropertyDuplicate", 390 { 391 "Indicates that a duplicate property was included in the " 392 "request body.", 393 "The property %1 was duplicated in the request.", 394 "Warning", 395 1, 396 { 397 "string", 398 }, 399 "Remove the duplicate property from the request body and " 400 "resubmit the request if the operation failed.", 401 }}, 402 MessageEntry{ 403 "PropertyMissing", 404 { 405 "Indicates that a required property was not supplied as part of " 406 "the request.", 407 "The property %1 is a required property and must be included in " 408 "the request.", 409 "Warning", 410 1, 411 { 412 "string", 413 }, 414 "Ensure that the property is in the request body and has a valid " 415 "value and resubmit the request if the operation failed.", 416 }}, 417 MessageEntry{"PropertyNotWritable", 418 { 419 "Indicates that a property was given a value in the " 420 "request body, but the property is a readonly property.", 421 "The property %1 is a read only property and cannot be " 422 "assigned a value.", 423 "Warning", 424 1, 425 { 426 "string", 427 }, 428 "Remove the property from the request body and resubmit " 429 "the request if the operation failed.", 430 }}, 431 MessageEntry{"PropertyUnknown", 432 { 433 "Indicates that an unknown property was included in the " 434 "request body.", 435 "The property %1 is not in the list of valid properties " 436 "for the resource.", 437 "Warning", 438 1, 439 { 440 "string", 441 }, 442 "Remove the unknown property from the request body and " 443 "resubmit the request if the operation failed.", 444 }}, 445 MessageEntry{"PropertyValueFormatError", 446 { 447 "Indicates that a property was given the correct value " 448 "type but the value of that property was not supported.", 449 "The value %1 for the property %2 is of a different " 450 "format than the property can accept.", 451 "Warning", 452 2, 453 { 454 "string", 455 "string", 456 }, 457 "Correct the value for the property in the request body " 458 "and resubmit the request if the operation failed.", 459 }}, 460 MessageEntry{"PropertyValueModified", 461 { 462 "Indicates that a property was given the correct value " 463 "type but the value of that property was modified. " 464 "Examples are truncated or rounded values.", 465 "The property %1 was assigned the value %2 due to " 466 "modification by the service.", 467 "Warning", 468 2, 469 { 470 "string", 471 "string", 472 }, 473 "No resolution is required.", 474 }}, 475 MessageEntry{ 476 "PropertyValueNotInList", 477 { 478 "Indicates that a property was given the correct value type but " 479 "the value of that property was not supported. This values not in " 480 "an enumeration", 481 "The value %1 for the property %2 is not in the list of acceptable " 482 "values.", 483 "Warning", 484 2, 485 { 486 "string", 487 "string", 488 }, 489 "Choose a value from the enumeration list that the implementation " 490 "can support and resubmit the request if the operation failed.", 491 }}, 492 MessageEntry{ 493 "PropertyValueTypeError", 494 { 495 "Indicates that a property was given the wrong value type, such as " 496 "when a number is supplied for a property that requires a string.", 497 "The value %1 for the property %2 is of a different type than the " 498 "property can accept.", 499 "Warning", 500 2, 501 { 502 "string", 503 "string", 504 }, 505 "Correct the value for the property in the request body and " 506 "resubmit the request if the operation failed.", 507 }}, 508 MessageEntry{ 509 "QueryNotSupported", 510 { 511 "Indicates that query is not supported on the implementation.", 512 "Querying is not supported by the implementation.", 513 "Warning", 514 0, 515 {}, 516 "Remove the query parameters and resubmit the request if the " 517 "operation failed.", 518 }}, 519 MessageEntry{"QueryNotSupportedOnResource", 520 { 521 "Indicates that query is not supported on the given " 522 "resource, such as when a start/count query is attempted " 523 "on a resource that is not a collection.", 524 "Querying is not supported on the requested resource.", 525 "Warning", 526 0, 527 {}, 528 "Remove the query parameters and resubmit the request if " 529 "the operation failed.", 530 }}, 531 MessageEntry{ 532 "QueryParameterOutOfRange", 533 { 534 "Indicates that a query parameter was supplied that is out of " 535 "range for the given resource. This can happen with values that " 536 "are too low or beyond that possible for the supplied resource, " 537 "such as when a page is requested that is beyond the last page.", 538 "The value %1 for the query parameter %2 is out of range %3.", 539 "Warning", 540 3, 541 { 542 "string", 543 "string", 544 "string", 545 }, 546 "Reduce the value for the query parameter to a value that is " 547 "within range, such as a start or count value that is within " 548 "bounds of the number of resources in a collection or a page that " 549 "is within the range of valid pages.", 550 }}, 551 MessageEntry{"QueryParameterValueFormatError", 552 { 553 "Indicates that a query parameter was given the correct " 554 "value type but the value of that parameter was not " 555 "supported. This includes value size/length exceeded.", 556 "The value %1 for the parameter %2 is of a different " 557 "format than the parameter can accept.", 558 "Warning", 559 2, 560 { 561 "string", 562 "string", 563 }, 564 "Correct the value for the query parameter in the request " 565 "and resubmit the request if the operation failed.", 566 }}, 567 MessageEntry{"QueryParameterValueTypeError", 568 { 569 "Indicates that a query parameter was given the wrong " 570 "value type, such as when a number is supplied for a " 571 "query parameter that requires a string.", 572 "The value %1 for the query parameter %2 is of a " 573 "different type than the parameter can accept.", 574 "Warning", 575 2, 576 { 577 "string", 578 "string", 579 }, 580 "Correct the value for the query parameter in the request " 581 "and resubmit the request if the operation failed.", 582 }}, 583 MessageEntry{"ResourceAlreadyExists", 584 { 585 "Indicates that a resource change or creation was " 586 "attempted but that the operation cannot proceed because " 587 "the resource already exists.", 588 "The requested resource of type %1 with the property %2 " 589 "with the value %3 already exists.", 590 "Critical", 591 3, 592 { 593 "string", 594 "string", 595 "string", 596 }, 597 "Do not repeat the create operation as the resource has " 598 "already been created.", 599 }}, 600 MessageEntry{ 601 "ResourceAtUriInUnknownFormat", 602 { 603 "Indicates that the URI was valid but the resource or image at " 604 "that URI was in a format not supported by the service.", 605 "The resource at %1 is in a format not recognized by the service.", 606 "Critical", 607 1, 608 { 609 "string", 610 }, 611 "Place an image or resource or file that is recognized by the " 612 "service at the URI.", 613 }}, 614 MessageEntry{"ResourceAtUriUnauthorized", 615 { 616 "Indicates that the attempt to access the " 617 "resource/file/image at the URI was unauthorized.", 618 "While accessing the resource at %1, the service received " 619 "an authorization error %2.", 620 "Critical", 621 2, 622 { 623 "string", 624 "string", 625 }, 626 "Ensure that the appropriate access is provided for the " 627 "service in order for it to access the URI.", 628 }}, 629 MessageEntry{"ResourceCannotBeDeleted", 630 { 631 "Indicates that a delete operation was attempted on a " 632 "resource that cannot be deleted.", 633 "The delete request failed because the resource requested " 634 "cannot be deleted.", 635 "Critical", 636 0, 637 {}, 638 "Do not attempt to delete a non-deletable resource.", 639 }}, 640 MessageEntry{ 641 "ResourceExhaustion", 642 { 643 "Indicates that a resource could not satisfy the request due to " 644 "some unavailability of resources. An example is that available " 645 "capacity has been allocated.", 646 "The resource %1 was unable to satisfy the request due to " 647 "unavailability of resources.", 648 "Critical", 649 1, 650 { 651 "string", 652 }, 653 "Ensure that the resources are available and resubmit the request.", 654 }}, 655 MessageEntry{"ResourceInStandby", 656 { 657 "Indicates that the request could not be performed " 658 "because the resource is in standby.", 659 "The request could not be performed because the resource " 660 "is in standby.", 661 "Critical", 662 0, 663 {}, 664 "Ensure that the resource is in the correct power state " 665 "and resubmit the request.", 666 }}, 667 MessageEntry{"ResourceInUse", 668 { 669 "Indicates that a change was requested to a resource but " 670 "the change was rejected due to the resource being in use " 671 "or transition.", 672 "The change to the requested resource failed because the " 673 "resource is in use or in transition.", 674 "Warning", 675 0, 676 {}, 677 "Remove the condition and resubmit the request if the " 678 "operation failed.", 679 }}, 680 MessageEntry{ 681 "ResourceMissingAtURI", 682 { 683 "Indicates that the operation expected an image or other resource " 684 "at the provided URI but none was found. Examples of this are in " 685 "requests that require URIs like Firmware Update.", 686 "The resource at the URI %1 was not found.", 687 "Critical", 688 1, 689 { 690 "string", 691 }, 692 "Place a valid resource at the URI or correct the URI and resubmit " 693 "the request.", 694 }}, 695 MessageEntry{ 696 "ResourceNotFound", 697 { 698 "Indicates that the operation expected a resource identifier that " 699 "corresponds to an existing resource but one was not found.", 700 "The requested resource of type %1 named %2 was not found.", 701 "Critical", 702 2, 703 { 704 "string", 705 "string", 706 }, 707 "Provide a valid resource identifier and resubmit the request.", 708 }}, 709 MessageEntry{ 710 "ResourceTypeIncompatible", 711 { 712 "Indicates that the resource type of the operation does not match " 713 "that for the operation destination. Examples of when this can " 714 "happen include during a POST to a collection using the wrong " 715 "resource type, an update where the @odata.types do not match or " 716 "on a major version incompatability.", 717 "The @odata.type of the request body %1 is incompatible with the " 718 "@odata.type of the resource which is %2.", 719 "Critical", 720 2, 721 { 722 "string", 723 "string", 724 }, 725 "Resubmit the request with a payload compatible with the " 726 "resource's schema.", 727 }}, 728 MessageEntry{ 729 "ServiceInUnknownState", 730 { 731 "Indicates that the operation failed because the service is in an " 732 "unknown state and cannot accept additional requests.", 733 "The operation failed because the service is in an unknown state " 734 "and can no longer take incoming requests.", 735 "Critical", 736 0, 737 {}, 738 "Restart the service and resubmit the request if the operation " 739 "failed.", 740 }}, 741 MessageEntry{"ServiceShuttingDown", 742 { 743 "Indicates that the operation failed as the service is " 744 "shutting down, such as when the service reboots.", 745 "The operation failed because the service is shutting " 746 "down and can no longer take incoming requests.", 747 "Critical", 748 0, 749 {}, 750 "When the service becomes available, resubmit the request " 751 "if the operation failed.", 752 }}, 753 MessageEntry{ 754 "ServiceTemporarilyUnavailable", 755 { 756 "Indicates the service is temporarily unavailable.", 757 "The service is temporarily unavailable. Retry in %1 seconds.", 758 "Critical", 759 1, 760 { 761 "string", 762 }, 763 "Wait for the indicated retry duration and retry the operation.", 764 }}, 765 MessageEntry{ 766 "SessionLimitExceeded", 767 { 768 "Indicates that a session establishment has been requested but the " 769 "operation failed due to the number of simultaneous sessions " 770 "exceeding the limit of the implementation.", 771 "The session establishment failed due to the number of " 772 "simultaneous sessions exceeding the limit of the implementation.", 773 "Critical", 774 0, 775 {}, 776 "Reduce the number of other sessions before trying to establish " 777 "the session or increase the limit of simultaneous sessions (if " 778 "supported).", 779 }}, 780 MessageEntry{ 781 "SessionTerminated", 782 { 783 "Indicates that the DELETE operation on the Session resource " 784 "resulted in the successful termination of the session.", 785 "The session was successfully terminated.", 786 "OK", 787 0, 788 {}, 789 "No resolution is required.", 790 }}, 791 MessageEntry{ 792 "SourceDoesNotSupportProtocol", 793 { 794 "Indicates that while attempting to access, connect to or transfer " 795 "a resource/file/image from another location that the other end of " 796 "the connection did not support the protocol", 797 "The other end of the connection at %1 does not support the " 798 "specified protocol %2.", 799 "Critical", 800 2, 801 { 802 "string", 803 "string", 804 }, 805 "Change protocols or URIs. ", 806 }}, 807 MessageEntry{"StringValueTooLong", 808 { 809 "Indicates that a string value passed to the given " 810 "resource exceeded its length limit. An example is when a " 811 "shorter limit is imposed by an implementation than that " 812 "allowed by the specification.", 813 "The string %1 exceeds the length limit %2.", 814 "Warning", 815 2, 816 { 817 "string", 818 "number", 819 }, 820 "Resubmit the request with an appropriate string length.", 821 }}, 822 MessageEntry{"Success", 823 { 824 "Indicates that all conditions of a successful operation " 825 "have been met.", 826 "Successfully Completed Request", 827 "OK", 828 0, 829 {}, 830 "None", 831 }}, 832 MessageEntry{ 833 "UnrecognizedRequestBody", 834 { 835 "Indicates that the service encountered an unrecognizable request " 836 "body that could not even be interpreted as malformed JSON.", 837 "The service detected a malformed request body that it was unable " 838 "to interpret.", 839 "Warning", 840 0, 841 {}, 842 "Correct the request body and resubmit the request if it failed.", 843 }}, 844 }; 845 } // namespace redfish::message_registries::base 846