| | |
| | | * Portions Copyright 2007 Sun Microsystems, Inc. |
| | | */ |
| | | package org.opends.server.core; |
| | | import org.opends.messages.Message; |
| | | import org.opends.messages.MessageBuilder; |
| | | |
| | | |
| | | import org.opends.server.types.ResultCode; |
| | |
| | | private ResultCode resultCode = ResultCode.UNDEFINED; |
| | | |
| | | // The global error message. |
| | | private StringBuilder errorMessage = new StringBuilder (""); |
| | | private MessageBuilder errorMessage = new MessageBuilder(Message.EMPTY); |
| | | |
| | | |
| | | /** |
| | |
| | | * @param errorMessage the initial value for the error message |
| | | */ |
| | | public WorkflowResultCode( |
| | | ResultCode resultCode, |
| | | StringBuilder errorMessage |
| | | ResultCode resultCode, |
| | | MessageBuilder errorMessage |
| | | ) |
| | | { |
| | | this.resultCode = resultCode; |
| | |
| | | * into a reference entry |
| | | */ |
| | | public boolean elaborateGlobalResultCode( |
| | | ResultCode newResultCode, |
| | | StringBuilder newErrorMessage |
| | | ResultCode newResultCode, |
| | | MessageBuilder newErrorMessage |
| | | ) |
| | | { |
| | | // Returned value |
| | |
| | | if (resultCode == ResultCode.UNDEFINED) |
| | | { |
| | | resultCode = newResultCode; |
| | | errorMessage = new StringBuilder (newErrorMessage); |
| | | errorMessage = new MessageBuilder (newErrorMessage); |
| | | } |
| | | else |
| | | { |
| | |
| | | { |
| | | case NO_SUCH_OBJECT: |
| | | resultCode = ResultCode.SUCCESS; |
| | | errorMessage = new StringBuilder (""); |
| | | errorMessage = new MessageBuilder(Message.EMPTY); |
| | | break; |
| | | case REFERRAL: |
| | | resultCode = ResultCode.SUCCESS; |
| | | errorMessage = new StringBuilder (""); |
| | | errorMessage = new MessageBuilder(Message.EMPTY); |
| | | sendReferenceEntry = true; |
| | | break; |
| | | default: |
| | |
| | | { |
| | | case REFERRAL: |
| | | resultCode = ResultCode.SUCCESS; |
| | | errorMessage = new StringBuilder (""); |
| | | errorMessage = new MessageBuilder(Message.EMPTY); |
| | | sendReferenceEntry = true; |
| | | break; |
| | | case NO_SUCH_OBJECT: |
| | | resultCode = ResultCode.REFERRAL; |
| | | errorMessage = new StringBuilder (newErrorMessage); |
| | | errorMessage = new MessageBuilder (Message.EMPTY); |
| | | break; |
| | | default: |
| | | // global resultCode remains the same |
| | |
| | | { |
| | | case REFERRAL: |
| | | resultCode = newResultCode; |
| | | errorMessage = new StringBuilder (newErrorMessage); |
| | | errorMessage = new MessageBuilder (newErrorMessage); |
| | | sendReferenceEntry = true; |
| | | break; |
| | | case SUCCESS: |
| | | resultCode = newResultCode; |
| | | errorMessage = new StringBuilder (newErrorMessage); |
| | | errorMessage = new MessageBuilder (newErrorMessage); |
| | | break; |
| | | case NO_SUCH_OBJECT: |
| | | resultCode = newResultCode; |
| | | errorMessage = new StringBuilder (newErrorMessage); |
| | | errorMessage = new MessageBuilder (newErrorMessage); |
| | | break; |
| | | default: |
| | | // global resultCode remains the same but append the new |
| | | // error message into the current error message |
| | | if (errorMessage == null) |
| | | { |
| | | errorMessage = new StringBuilder (newErrorMessage); |
| | | errorMessage = new MessageBuilder (newErrorMessage); |
| | | } |
| | | else |
| | | { |
| | |
| | | * |
| | | * @return the global error message. |
| | | */ |
| | | public StringBuilder errorMessage() |
| | | public MessageBuilder errorMessage() |
| | | { |
| | | return errorMessage; |
| | | } |