00001 // 00002 // DO NOT EDIT THIS FILE! 00003 // It is automatically generated from opcfoundation.org schemas. 00004 // 00005 00006 #include <string> 00007 #include <sstream> 00008 #include <iomanip> 00009 00010 #include "opc/ua/protocol/status_codes.h" 00011 00012 namespace OpcUa 00013 { 00014 00015 std::string ToString(const StatusCode& code) 00016 { 00017 if (code == StatusCode::Good) 00018 { 00019 return std::string(); 00020 } 00021 00022 std::stringstream stream; 00023 switch (code) 00024 { 00025 case StatusCode::BadUnexpectedError: 00026 stream << "An unexpected error occurred."; 00027 break; 00028 case StatusCode::BadInternalError: 00029 stream << "An internal error occurred as a result of a programming or configuration error."; 00030 break; 00031 case StatusCode::BadOutOfMemory: 00032 stream << "Not enough memory to complete the operation."; 00033 break; 00034 case StatusCode::BadResourceUnavailable: 00035 stream << "An operating system resource is not available."; 00036 break; 00037 case StatusCode::BadCommunicationError: 00038 stream << "A low level communication error occurred."; 00039 break; 00040 case StatusCode::BadEncodingError: 00041 stream << "Encoding halted because of invalid data in the objects being serialized."; 00042 break; 00043 case StatusCode::BadDecodingError: 00044 stream << "Decoding halted because of invalid data in the stream."; 00045 break; 00046 case StatusCode::BadEncodingLimitsExceeded: 00047 stream << "The message encoding/decoding limits imposed by the stack have been exceeded."; 00048 break; 00049 case StatusCode::BadRequestTooLarge: 00050 stream << "The request message size exceeds limits set by the server."; 00051 break; 00052 case StatusCode::BadResponseTooLarge: 00053 stream << "The response message size exceeds limits set by the client."; 00054 break; 00055 case StatusCode::BadUnknownResponse: 00056 stream << "An unrecognized response was received from the server."; 00057 break; 00058 case StatusCode::BadTimeout: 00059 stream << "The operation timed out."; 00060 break; 00061 case StatusCode::BadServiceUnsupported: 00062 stream << "The server does not support the requested service."; 00063 break; 00064 case StatusCode::BadShutdown: 00065 stream << "The operation was cancelled because the application is shutting down."; 00066 break; 00067 case StatusCode::BadServerNotConnected: 00068 stream << "The operation could not complete because the client is not connected to the server."; 00069 break; 00070 case StatusCode::BadServerHalted: 00071 stream << "The server has stopped and cannot process any requests."; 00072 break; 00073 case StatusCode::BadNothingToDo: 00074 stream << "There was nothing to do because the client passed a list of operations with no elements."; 00075 break; 00076 case StatusCode::BadTooManyOperations: 00077 stream << "The request could not be processed because it specified too many operations."; 00078 break; 00079 case StatusCode::BadTooManyMonitoredItems: 00080 stream << "The request could not be processed because there are too many monitored items in the subscription."; 00081 break; 00082 case StatusCode::BadDataTypeIdUnknown: 00083 stream << "The extension object cannot be (de)serialized because the data type id is not recognized."; 00084 break; 00085 case StatusCode::BadCertificateInvalid: 00086 stream << "The certificate provided as a parameter is not valid."; 00087 break; 00088 case StatusCode::BadSecurityChecksFailed: 00089 stream << "An error occurred verifying security."; 00090 break; 00091 case StatusCode::BadCertificateTimeInvalid: 00092 stream << "The Certificate has expired or is not yet valid."; 00093 break; 00094 case StatusCode::BadCertificateIssuerTimeInvalid: 00095 stream << "An Issuer Certificate has expired or is not yet valid."; 00096 break; 00097 case StatusCode::BadCertificateHostNameInvalid: 00098 stream << "The HostName used to connect to a Server does not match a HostName in the Certificate."; 00099 break; 00100 case StatusCode::BadCertificateUriInvalid: 00101 stream << "The URI specified in the ApplicationDescription does not match the URI in the Certificate."; 00102 break; 00103 case StatusCode::BadCertificateUseNotAllowed: 00104 stream << "The Certificate may not be used for the requested operation."; 00105 break; 00106 case StatusCode::BadCertificateIssuerUseNotAllowed: 00107 stream << "The Issuer Certificate may not be used for the requested operation."; 00108 break; 00109 case StatusCode::BadCertificateUntrusted: 00110 stream << "The Certificate is not trusted."; 00111 break; 00112 case StatusCode::BadCertificateRevocationUnknown: 00113 stream << "It was not possible to determine if the Certificate has been revoked."; 00114 break; 00115 case StatusCode::BadCertificateIssuerRevocationUnknown: 00116 stream << "It was not possible to determine if the Issuer Certificate has been revoked."; 00117 break; 00118 case StatusCode::BadCertificateRevoked: 00119 stream << "The Certificate has been revoked."; 00120 break; 00121 case StatusCode::BadCertificateIssuerRevoked: 00122 stream << "The Issuer Certificate has been revoked."; 00123 break; 00124 case StatusCode::BadUserAccessDenied: 00125 stream << "User does not have permission to perform the requested operation."; 00126 break; 00127 case StatusCode::BadIdentityTokenInvalid: 00128 stream << "The user identity token is not valid."; 00129 break; 00130 case StatusCode::BadIdentityTokenRejected: 00131 stream << "The user identity token is valid but the server has rejected it."; 00132 break; 00133 case StatusCode::BadSecureChannelIdInvalid: 00134 stream << "The specified secure channel is no longer valid."; 00135 break; 00136 case StatusCode::BadInvalidTimestamp: 00137 stream << "The timestamp is outside the range allowed by the server."; 00138 break; 00139 case StatusCode::BadNonceInvalid: 00140 stream << "The nonce does appear to be not a random value or it is not the correct length."; 00141 break; 00142 case StatusCode::BadSessionIdInvalid: 00143 stream << "The session id is not valid."; 00144 break; 00145 case StatusCode::BadSessionClosed: 00146 stream << "The session was closed by the client."; 00147 break; 00148 case StatusCode::BadSessionNotActivated: 00149 stream << "The session cannot be used because ActivateSession has not been called."; 00150 break; 00151 case StatusCode::BadSubscriptionIdInvalid: 00152 stream << "The subscription id is not valid."; 00153 break; 00154 case StatusCode::BadRequestHeaderInvalid: 00155 stream << "The header for the request is missing or invalid."; 00156 break; 00157 case StatusCode::BadTimestampsToReturnInvalid: 00158 stream << "The timestamps to return parameter is invalid."; 00159 break; 00160 case StatusCode::BadRequestCancelledByClient: 00161 stream << "The request was cancelled by the client."; 00162 break; 00163 case StatusCode::GoodSubscriptionTransferred: 00164 stream << "The subscription was transferred to another session."; 00165 break; 00166 case StatusCode::GoodCompletesAsynchronously: 00167 stream << "The processing will complete asynchronously."; 00168 break; 00169 case StatusCode::GoodOverload: 00170 stream << "Sampling has slowed down due to resource limitations."; 00171 break; 00172 case StatusCode::GoodClamped: 00173 stream << "The value written was accepted but was clamped."; 00174 break; 00175 case StatusCode::BadNoCommunication: 00176 stream << "Communication with the data source is defined"; 00177 break; 00178 case StatusCode::BadWaitingForInitialData: 00179 stream << "Waiting for the server to obtain values from the underlying data source."; 00180 break; 00181 case StatusCode::BadNodeIdInvalid: 00182 stream << "The syntax of the node id is not valid."; 00183 break; 00184 case StatusCode::BadNodeIdUnknown: 00185 stream << "The node id refers to a node that does not exist in the server address space."; 00186 break; 00187 case StatusCode::BadAttributeIdInvalid: 00188 stream << "The attribute is not supported for the specified Node."; 00189 break; 00190 case StatusCode::BadIndexRangeInvalid: 00191 stream << "The syntax of the index range parameter is invalid."; 00192 break; 00193 case StatusCode::BadIndexRangeNoData: 00194 stream << "No data exists within the range of indexes specified."; 00195 break; 00196 case StatusCode::BadDataEncodingInvalid: 00197 stream << "The data encoding is invalid."; 00198 break; 00199 case StatusCode::BadDataEncodingUnsupported: 00200 stream << "The server does not support the requested data encoding for the node."; 00201 break; 00202 case StatusCode::BadNotReadable: 00203 stream << "The access level does not allow reading or subscribing to the Node."; 00204 break; 00205 case StatusCode::BadNotWritable: 00206 stream << "The access level does not allow writing to the Node."; 00207 break; 00208 case StatusCode::BadOutOfRange: 00209 stream << "The value was out of range."; 00210 break; 00211 case StatusCode::BadNotSupported: 00212 stream << "The requested operation is not supported."; 00213 break; 00214 case StatusCode::BadNotFound: 00215 stream << "A requested item was not found or a search operation ended without success."; 00216 break; 00217 case StatusCode::BadObjectDeleted: 00218 stream << "The object cannot be used because it has been deleted."; 00219 break; 00220 case StatusCode::BadNotImplemented: 00221 stream << "Requested operation is not implemented."; 00222 break; 00223 case StatusCode::BadMonitoringModeInvalid: 00224 stream << "The monitoring mode is invalid."; 00225 break; 00226 case StatusCode::BadMonitoredItemIdInvalid: 00227 stream << "The monitoring item id does not refer to a valid monitored item."; 00228 break; 00229 case StatusCode::BadMonitoredItemFilterInvalid: 00230 stream << "The monitored item filter parameter is not valid."; 00231 break; 00232 case StatusCode::BadMonitoredItemFilterUnsupported: 00233 stream << "The server does not support the requested monitored item filter."; 00234 break; 00235 case StatusCode::BadFilterNotAllowed: 00236 stream << "A monitoring filter cannot be used in combination with the attribute specified."; 00237 break; 00238 case StatusCode::BadStructureMissing: 00239 stream << "A mandatory structured parameter was missing or null."; 00240 break; 00241 case StatusCode::BadEventFilterInvalid: 00242 stream << "The event filter is not valid."; 00243 break; 00244 case StatusCode::BadContentFilterInvalid: 00245 stream << "The content filter is not valid."; 00246 break; 00247 case StatusCode::BadFilterOperatorInvalid: 00248 stream << "An unregognized operator was provided in a filter."; 00249 break; 00250 case StatusCode::BadFilterOperatorUnsupported: 00251 stream << "A valid operator was provided"; 00252 break; 00253 case StatusCode::BadFilterOperandCountMismatch: 00254 stream << "The number of operands provided for the filter operator was less then expected for the operand provided."; 00255 break; 00256 case StatusCode::BadFilterOperandInvalid: 00257 stream << "The operand used in a content filter is not valid."; 00258 break; 00259 case StatusCode::BadFilterElementInvalid: 00260 stream << "The referenced element is not a valid element in the content filter."; 00261 break; 00262 case StatusCode::BadFilterLiteralInvalid: 00263 stream << "The referenced literal is not a valid value."; 00264 break; 00265 case StatusCode::BadContinuationPointInvalid: 00266 stream << "The continuation point provide is longer valid."; 00267 break; 00268 case StatusCode::BadNoContinuationPoints: 00269 stream << "The operation could not be processed because all continuation points have been allocated."; 00270 break; 00271 case StatusCode::BadReferenceTypeIdInvalid: 00272 stream << "The operation could not be processed because all continuation points have been allocated."; 00273 break; 00274 case StatusCode::BadBrowseDirectionInvalid: 00275 stream << "The browse direction is not valid."; 00276 break; 00277 case StatusCode::BadNodeNotInView: 00278 stream << "The node is not part of the view."; 00279 break; 00280 case StatusCode::BadServerUriInvalid: 00281 stream << "The ServerUri is not a valid URI."; 00282 break; 00283 case StatusCode::BadServerNameMissing: 00284 stream << "No ServerName was specified."; 00285 break; 00286 case StatusCode::BadDiscoveryUrlMissing: 00287 stream << "No DiscoveryUrl was specified."; 00288 break; 00289 case StatusCode::BadSempahoreFileMissing: 00290 stream << "The semaphore file specified by the client is not valid."; 00291 break; 00292 case StatusCode::BadRequestTypeInvalid: 00293 stream << "The security token request type is not valid."; 00294 break; 00295 case StatusCode::BadSecurityModeRejected: 00296 stream << "The security mode does not meet the requirements set by the Server."; 00297 break; 00298 case StatusCode::BadSecurityPolicyRejected: 00299 stream << "The security policy does not meet the requirements set by the Server."; 00300 break; 00301 case StatusCode::BadTooManySessions: 00302 stream << "The server has reached its maximum number of sessions."; 00303 break; 00304 case StatusCode::BadUserSignatureInvalid: 00305 stream << "The user token signature is missing or invalid."; 00306 break; 00307 case StatusCode::BadApplicationSignatureInvalid: 00308 stream << "The signature generated with the client certificate is missing or invalid."; 00309 break; 00310 case StatusCode::BadNoValidCertificates: 00311 stream << "The client did not provide at least one software certificate that is valid and meets the profile requirements for the server."; 00312 break; 00313 case StatusCode::BadIdentityChangeNotSupported: 00314 stream << "The Server does not support changing the user identity assigned to the session."; 00315 break; 00316 case StatusCode::BadRequestCancelledByRequest: 00317 stream << "The request was cancelled by the client with the Cancel service."; 00318 break; 00319 case StatusCode::BadParentNodeIdInvalid: 00320 stream << "The parent node id does not to refer to a valid node."; 00321 break; 00322 case StatusCode::BadReferenceNotAllowed: 00323 stream << "The reference could not be created because it violates constraints imposed by the data model."; 00324 break; 00325 case StatusCode::BadNodeIdRejected: 00326 stream << "The requested node id was reject because it was either invalid or server does not allow node ids to be specified by the client."; 00327 break; 00328 case StatusCode::BadNodeIdExists: 00329 stream << "The requested node id is already used by another node."; 00330 break; 00331 case StatusCode::BadNodeClassInvalid: 00332 stream << "The node class is not valid."; 00333 break; 00334 case StatusCode::BadBrowseNameInvalid: 00335 stream << "The browse name is invalid."; 00336 break; 00337 case StatusCode::BadBrowseNameDuplicated: 00338 stream << "The browse name is not unique among nodes that share the same relationship with the parent."; 00339 break; 00340 case StatusCode::BadNodeAttributesInvalid: 00341 stream << "The node attributes are not valid for the node class."; 00342 break; 00343 case StatusCode::BadTypeDefinitionInvalid: 00344 stream << "The type definition node id does not reference an appropriate type node."; 00345 break; 00346 case StatusCode::BadSourceNodeIdInvalid: 00347 stream << "The source node id does not reference a valid node."; 00348 break; 00349 case StatusCode::BadTargetNodeIdInvalid: 00350 stream << "The target node id does not reference a valid node."; 00351 break; 00352 case StatusCode::BadDuplicateReferenceNotAllowed: 00353 stream << "The reference type between the nodes is already defined."; 00354 break; 00355 case StatusCode::BadInvalidSelfReference: 00356 stream << "The server does not allow this type of self reference on this node."; 00357 break; 00358 case StatusCode::BadReferenceLocalOnly: 00359 stream << "The reference type is not valid for a reference to a remote server."; 00360 break; 00361 case StatusCode::BadNoDeleteRights: 00362 stream << "The server will not allow the node to be deleted."; 00363 break; 00364 case StatusCode::UncertainReferenceNotDeleted: 00365 stream << "The server was not able to delete all target references."; 00366 break; 00367 case StatusCode::BadServerIndexInvalid: 00368 stream << "The server index is not valid."; 00369 break; 00370 case StatusCode::BadViewIdUnknown: 00371 stream << "The view id does not refer to a valid view node."; 00372 break; 00373 case StatusCode::BadViewTimestampInvalid: 00374 stream << "The view timestamp is not available or not supported."; 00375 break; 00376 case StatusCode::BadViewParameterMismatch: 00377 stream << "The view parameters are not consistent with each other."; 00378 break; 00379 case StatusCode::BadViewVersionInvalid: 00380 stream << "The view version is not available or not supported."; 00381 break; 00382 case StatusCode::UncertainNotAllNodesAvailable: 00383 stream << "The list of references may not be complete because the underlying system is not available."; 00384 break; 00385 case StatusCode::GoodResultsMayBeIncomplete: 00386 stream << "The server should have followed a reference to a node in a remote server but did not. The result set may be incomplete."; 00387 break; 00388 case StatusCode::BadNotTypeDefinition: 00389 stream << "The provided Nodeid was not a type definition nodeid."; 00390 break; 00391 case StatusCode::UncertainReferenceOutOfServer: 00392 stream << "One of the references to follow in the relative path references to a node in the address space in another server."; 00393 break; 00394 case StatusCode::BadTooManyMatches: 00395 stream << "The requested operation has too many matches to return."; 00396 break; 00397 case StatusCode::BadQueryTooComplex: 00398 stream << "The requested operation requires too many resources in the server."; 00399 break; 00400 case StatusCode::BadNoMatch: 00401 stream << "The requested operation has no match to return."; 00402 break; 00403 case StatusCode::BadMaxAgeInvalid: 00404 stream << "The max age parameter is invalid."; 00405 break; 00406 case StatusCode::BadHistoryOperationInvalid: 00407 stream << "The history details parameter is not valid."; 00408 break; 00409 case StatusCode::BadHistoryOperationUnsupported: 00410 stream << "The server does not support the requested operation."; 00411 break; 00412 case StatusCode::BadInvalidTimestampArgument: 00413 stream << "The defined timestamp to return was invalid."; 00414 break; 00415 case StatusCode::BadWriteNotSupported: 00416 stream << "The server not does support writing the combination of value"; 00417 break; 00418 case StatusCode::BadTypeMismatch: 00419 stream << "The value supplied for the attribute is not of the same type as the attribute's value."; 00420 break; 00421 case StatusCode::BadMethodInvalid: 00422 stream << "The method id does not refer to a method for the specified object."; 00423 break; 00424 case StatusCode::BadArgumentsMissing: 00425 stream << "The client did not specify all of the input arguments for the method."; 00426 break; 00427 case StatusCode::BadTooManySubscriptions: 00428 stream << "The server has reached its maximum number of subscriptions."; 00429 break; 00430 case StatusCode::BadTooManyPublishRequests: 00431 stream << "The server has reached the maximum number of queued publish requests."; 00432 break; 00433 case StatusCode::BadNoSubscription: 00434 stream << "There is no subscription available for this session."; 00435 break; 00436 case StatusCode::BadSequenceNumberUnknown: 00437 stream << "The sequence number is unknown to the server."; 00438 break; 00439 case StatusCode::BadMessageNotAvailable: 00440 stream << "The requested notification message is no longer available."; 00441 break; 00442 case StatusCode::BadInsufficientClientProfile: 00443 stream << "The Client of the current Session does not support one or more Profiles that are necessary for the Subscription."; 00444 break; 00445 case StatusCode::BadStateNotActive: 00446 stream << "The sub-state machine is not currently active."; 00447 break; 00448 case StatusCode::BadTcpServerTooBusy: 00449 stream << "The server cannot process the request because it is too busy."; 00450 break; 00451 case StatusCode::BadTcpMessageTypeInvalid: 00452 stream << "The type of the message specified in the header invalid."; 00453 break; 00454 case StatusCode::BadTcpSecureChannelUnknown: 00455 stream << "The SecureChannelId and/or TokenId are not currently in use."; 00456 break; 00457 case StatusCode::BadTcpMessageTooLarge: 00458 stream << "The size of the message specified in the header is too large."; 00459 break; 00460 case StatusCode::BadTcpNotEnoughResources: 00461 stream << "There are not enough resources to process the request."; 00462 break; 00463 case StatusCode::BadTcpInternalError: 00464 stream << "An internal error occurred."; 00465 break; 00466 case StatusCode::BadTcpEndpointUrlInvalid: 00467 stream << "The Server does not recognize the QueryString specified."; 00468 break; 00469 case StatusCode::BadRequestInterrupted: 00470 stream << "The request could not be sent because of a network interruption."; 00471 break; 00472 case StatusCode::BadRequestTimeout: 00473 stream << "Timeout occurred while processing the request."; 00474 break; 00475 case StatusCode::BadSecureChannelClosed: 00476 stream << "The secure channel has been closed."; 00477 break; 00478 case StatusCode::BadSecureChannelTokenUnknown: 00479 stream << "The token has expired or is not recognized."; 00480 break; 00481 case StatusCode::BadSequenceNumberInvalid: 00482 stream << "The sequence number is not valid."; 00483 break; 00484 case StatusCode::BadProtocolVersionUnsupported: 00485 stream << "The applications do not have compatible protocol versions."; 00486 break; 00487 case StatusCode::BadConfigurationError: 00488 stream << "There is a problem with the configuration that affects the usefulness of the value."; 00489 break; 00490 case StatusCode::BadNotConnected: 00491 stream << "The variable should receive its value from another variable"; 00492 break; 00493 case StatusCode::BadDeviceFailure: 00494 stream << "There has been a failure in the device/data source that generates the value that has affected the value."; 00495 break; 00496 case StatusCode::BadSensorFailure: 00497 stream << "There has been a failure in the sensor from which the value is derived by the device/data source."; 00498 break; 00499 case StatusCode::BadOutOfService: 00500 stream << "The source of the data is not operational."; 00501 break; 00502 case StatusCode::BadDeadbandFilterInvalid: 00503 stream << "The deadband filter is not valid."; 00504 break; 00505 case StatusCode::UncertainNoCommunicationLastUsableValue: 00506 stream << "Communication to the data source has failed. The variable value is the last value that had a good quality."; 00507 break; 00508 case StatusCode::UncertainLastUsableValue: 00509 stream << "Whatever was updating this value has stopped doing so."; 00510 break; 00511 case StatusCode::UncertainSubstituteValue: 00512 stream << "The value is an operational value that was manually overwritten."; 00513 break; 00514 case StatusCode::UncertainInitialValue: 00515 stream << "The value is an initial value for a variable that normally receives its value from another variable."; 00516 break; 00517 case StatusCode::UncertainSensorNotAccurate: 00518 stream << "The value is at one of the sensor limits."; 00519 break; 00520 case StatusCode::UncertainEngineeringUnitsExceeded: 00521 stream << "The value is outside of the range of values defined for this parameter."; 00522 break; 00523 case StatusCode::UncertainSubNormal: 00524 stream << "The value is derived from multiple sources and has less than the required number of Good sources."; 00525 break; 00526 case StatusCode::GoodLocalOverride: 00527 stream << "The value has been overridden."; 00528 break; 00529 case StatusCode::BadRefreshInProgress: 00530 stream << "This Condition refresh failed"; 00531 break; 00532 case StatusCode::BadConditionAlreadyDisabled: 00533 stream << "This condition has already been disabled."; 00534 break; 00535 case StatusCode::BadConditionAlreadyEnabled: 00536 stream << "This condition has already been enabled."; 00537 break; 00538 case StatusCode::BadConditionDisabled: 00539 stream << "Property not available"; 00540 break; 00541 case StatusCode::BadEventIdUnknown: 00542 stream << "The specified event id is not recognized."; 00543 break; 00544 case StatusCode::BadEventNotAcknowledgeable: 00545 stream << "The event cannot be acknowledged."; 00546 break; 00547 case StatusCode::BadDialogNotActive: 00548 stream << "The dialog condition is not active."; 00549 break; 00550 case StatusCode::BadDialogResponseInvalid: 00551 stream << "The response is not valid for the dialog."; 00552 break; 00553 case StatusCode::BadConditionBranchAlreadyAcked: 00554 stream << "The condition branch has already been acknowledged."; 00555 break; 00556 case StatusCode::BadConditionBranchAlreadyConfirmed: 00557 stream << "The condition branch has already been confirmed."; 00558 break; 00559 case StatusCode::BadConditionAlreadyShelved: 00560 stream << "The condition has already been shelved."; 00561 break; 00562 case StatusCode::BadConditionNotShelved: 00563 stream << "The condition is not currently shelved."; 00564 break; 00565 case StatusCode::BadShelvingTimeOutOfRange: 00566 stream << "The shelving time not within an acceptable range."; 00567 break; 00568 case StatusCode::BadNoData: 00569 stream << "No data exists for the requested time range or event filter."; 00570 break; 00571 case StatusCode::BadBoundNotFound: 00572 stream << "No data found to provide upper or lower bound value."; 00573 break; 00574 case StatusCode::BadBoundNotSupported: 00575 stream << "The server cannot retrieve a bound for the variable."; 00576 break; 00577 case StatusCode::BadDataLost: 00578 stream << "Data is missing due to collection started/stopped/lost."; 00579 break; 00580 case StatusCode::BadDataUnavailable: 00581 stream << "Expected data is unavailable for the requested time range due to an un-mounted volume"; 00582 break; 00583 case StatusCode::BadEntryExists: 00584 stream << "The data or event was not successfully inserted because a matching entry exists."; 00585 break; 00586 case StatusCode::BadNoEntryExists: 00587 stream << "The data or event was not successfully updated because no matching entry exists."; 00588 break; 00589 case StatusCode::BadTimestampNotSupported: 00590 stream << "The client requested history using a timestamp format the server does not support (i.e requested ServerTimestamp when server only supports SourceTimestamp)."; 00591 break; 00592 case StatusCode::GoodEntryInserted: 00593 stream << "The data or event was successfully inserted into the historical database."; 00594 break; 00595 case StatusCode::GoodEntryReplaced: 00596 stream << "The data or event field was successfully replaced in the historical database."; 00597 break; 00598 case StatusCode::UncertainDataSubNormal: 00599 stream << "The value is derived from multiple values and has less than the required number of Good values."; 00600 break; 00601 case StatusCode::GoodNoData: 00602 stream << "No data exists for the requested time range or event filter."; 00603 break; 00604 case StatusCode::GoodMoreData: 00605 stream << "The data or event field was successfully replaced in the historical database."; 00606 break; 00607 case StatusCode::BadAggregateListMismatch: 00608 stream << "The requested number of Aggregates does not match the requested number of NodeIds."; 00609 break; 00610 case StatusCode::BadAggregateNotSupported: 00611 stream << "The requested Aggregate is not support by the server."; 00612 break; 00613 case StatusCode::BadAggregateInvalidInputs: 00614 stream << "The aggregate value could not be derived due to invalid data inputs."; 00615 break; 00616 case StatusCode::BadAggregateConfigurationRejected: 00617 stream << "The aggregate configuration is not valid for specified node."; 00618 break; 00619 case StatusCode::GoodDataIgnored: 00620 stream << "The request pecifies fields which are not valid for the EventType or cannot be saved by the historian."; 00621 break; 00622 case StatusCode::GoodCommunicationEvent: 00623 stream << "The communication layer has raised an event."; 00624 break; 00625 case StatusCode::GoodShutdownEvent: 00626 stream << "The system is shutting down."; 00627 break; 00628 case StatusCode::GoodCallAgain: 00629 stream << "The operation is not finished and needs to be called again."; 00630 break; 00631 case StatusCode::GoodNonCriticalTimeout: 00632 stream << "A non-critical timeout occurred."; 00633 break; 00634 case StatusCode::BadInvalidArgument: 00635 stream << "One or more arguments are invalid."; 00636 break; 00637 case StatusCode::BadConnectionRejected: 00638 stream << "Could not establish a network connection to remote server."; 00639 break; 00640 case StatusCode::BadDisconnect: 00641 stream << "The server has disconnected from the client."; 00642 break; 00643 case StatusCode::BadConnectionClosed: 00644 stream << "The network connection has been closed."; 00645 break; 00646 case StatusCode::BadInvalidState: 00647 stream << "The operation cannot be completed because the object is closed"; 00648 break; 00649 case StatusCode::BadEndOfStream: 00650 stream << "Cannot move beyond end of the stream."; 00651 break; 00652 case StatusCode::BadNoDataAvailable: 00653 stream << "No data is currently available for reading from a non-blocking stream."; 00654 break; 00655 case StatusCode::BadWaitingForResponse: 00656 stream << "The asynchronous operation is waiting for a response."; 00657 break; 00658 case StatusCode::BadOperationAbandoned: 00659 stream << "The asynchronous operation was abandoned by the caller."; 00660 break; 00661 case StatusCode::BadExpectedStreamToBlock: 00662 stream << "The stream did not return all data requested (possibly because it is a non-blocking stream)."; 00663 break; 00664 case StatusCode::BadWouldBlock: 00665 stream << "Non blocking behaviour is required and the operation would block."; 00666 break; 00667 case StatusCode::BadSyntaxError: 00668 stream << "A value had an invalid syntax."; 00669 break; 00670 case StatusCode::BadMaxConnectionsReached: 00671 stream << "The operation could not be finished because all available connections are in use."; 00672 break; 00673 default: 00674 stream << "Unknown StatusCode?"; 00675 break; 00676 } 00677 00678 stream << " (0x" << std::setfill('0') << std::setw(8) << std::hex << (unsigned)code << ")"; 00679 00680 return stream.str(); 00681 } 00682 00683 } // namespace OpcUa 00684