fluid-ws-java-client/src/main/java/com/fluidbpm/ws/client/v1/websocket/AGenericListMessageHandler.java
@Override
	public void handleMessage(Object objectToProcess) {

		//There is an error...
		if(objectToProcess instanceof Error) {

			Error fluidError = ((Error)objectToProcess);
			this.errors.add(fluidError);

			//Do a message callback...
			if(this.messageReceivedCallback != null)
			{
				this.messageReceivedCallback.errorMessageReceived(fluidError);
			}

			//If complete future is provided...
			if(this.completableFuture != null)
			{
				this.completableFuture.completeExceptionally(
						new FluidClientException(
								fluidError.getErrorMessage(),
								fluidError.getErrorCode()));
			}
		}
		//No Error...
		else {
			JSONObject jsonObject = (JSONObject)objectToProcess;

			//Uncompress the compressed response...
			if(this.compressedResponse){

				CompressedResponse compressedResponse = new CompressedResponse(jsonObject);

				byte[] compressedJsonList =
						UtilGlobal.decodeBase64(compressedResponse.getDataBase64());

				byte[] uncompressedJson = null;
				try {
					uncompressedJson = this.uncompress(compressedJsonList);
				} catch (IOException eParam) {
					throw new FluidClientException(
							"I/O issue with uncompress. "+eParam.getMessage(),
							eParam,
							FluidClientException.ErrorCode.IO_ERROR);
				}

				jsonObject = new JSONObject(new String(uncompressedJson));
			}

			T messageForm = this.getNewInstanceBy(jsonObject);

			//Add to the list of return values...
			this.returnValue.add(messageForm);

			//Completable future is set, and all response messages received...
			if(this.completableFuture != null)
			{
				String echo = messageForm.getEcho();
				if(echo != null && !echo.trim().isEmpty())
				{
					this.expectedEchoMessagesBeforeComplete.remove(echo);
				}

				//All expected messages received...
				if(this.expectedEchoMessagesBeforeComplete.isEmpty())
				{
					this.completableFuture.complete(this.returnValue);
				}
			}

			//Do a message callback...
			if(this.messageReceivedCallback != null)
			{
				this.messageReceivedCallback.messageReceived(messageForm);
			}
		}
	}
@Override
	public void handleMessage(Object objectToProcess) {

		//There is an error...
		if(objectToProcess instanceof Error) {

			Error fluidError = ((Error)objectToProcess);
			this.errors.add(fluidError);

			//Do a message callback...
			if(this.messageReceivedCallback != null)
			{
				this.messageReceivedCallback.errorMessageReceived(fluidError);
			}

			//If complete future is provided...
			if(this.completableFuture != null)
			{
				this.completableFuture.completeExceptionally(
						new FluidClientException(
								fluidError.getErrorMessage(),
								fluidError.getErrorCode()));
			}
		}
		//No Error...
		else {
			JSONObject jsonObject = (JSONObject)objectToProcess;

			//Uncompress the compressed response...
			if(this.compressedResponse){

				CompressedResponse compressedResponse = new CompressedResponse(jsonObject);

				byte[] compressedJsonList =
						UtilGlobal.decodeBase64(compressedResponse.getDataBase64());

				byte[] uncompressedJson = null;
				try {
					uncompressedJson = this.uncompress(compressedJsonList);
				} catch (IOException eParam) {
					throw new FluidClientException(
							"I/O issue with uncompress. "+eParam.getMessage(),
							eParam,
							FluidClientException.ErrorCode.IO_ERROR);
				}

				jsonObject = new JSONObject(new String(uncompressedJson));
			}

			T messageForm = this.getNewInstanceBy(jsonObject);

			//Add to the list of return values...
			this.returnValue.add(messageForm);

			//Completable future is set, and all response messages received...
			if(this.completableFuture != null)
			{
				String echo = messageForm.getEcho();
				if(echo != null && !echo.trim().isEmpty())
				{
					this.expectedEchoMessagesBeforeComplete.remove(echo);
				}

				//All expected messages received...
				if(this.expectedEchoMessagesBeforeComplete.isEmpty())
				{
					this.completableFuture.complete(this.returnValue);
				}
			}

			//Do a message callback...
			if(this.messageReceivedCallback != null)
			{
				this.messageReceivedCallback.messageReceived(messageForm);
			}
		}
	}
@ Override public void handleMessage ( Object objectToProcess ) { //There is an error... if ( objectToProcess instanceof Error ) { Error fluidError = ( ( Error ) objectToProcess ) ; this . errors . add ( fluidError ) ; //Do a message callback... if ( this . messageReceivedCallback != null ) { this . messageReceivedCallback . errorMessageReceived ( fluidError ) ; } //If complete future is provided... if ( this . completableFuture != null ) { this . completableFuture . completeExceptionally ( new FluidClientException ( fluidError . getErrorMessage ( ) , fluidError . getErrorCode ( ) ) ) ; } } //No Error... else { JSONObject jsonObject = ( JSONObject ) objectToProcess ; //Uncompress the compressed response... if ( this . compressedResponse ) { CompressedResponse compressedResponse = new CompressedResponse ( jsonObject ) ; byte [ ] compressedJsonList = UtilGlobal . decodeBase64 ( compressedResponse . getDataBase64 ( ) ) ; byte [ ] uncompressedJson = null ; try { uncompressedJson = this . uncompress ( compressedJsonList ) ; } catch ( IOException eParam ) { throw new FluidClientException ( "I/O issue with uncompress. " + eParam . getMessage ( ) , eParam , FluidClientException . ErrorCode . IO_ERROR ) ; } jsonObject = new JSONObject ( new String ( uncompressedJson ) ) ; } T messageForm = this . getNewInstanceBy ( jsonObject ) ; //Add to the list of return values... this . returnValue . add ( messageForm ) ; //Completable future is set, and all response messages received... if ( this . completableFuture != null ) { String echo = messageForm . getEcho ( ) ; if ( echo != null && ! echo . trim ( ) . isEmpty ( ) ) { this . expectedEchoMessagesBeforeComplete . remove ( echo ) ; } //All expected messages received... if ( this . expectedEchoMessagesBeforeComplete . isEmpty ( ) ) { this . completableFuture . complete ( this . returnValue ) ; } } //Do a message callback... if ( this . messageReceivedCallback != null ) { this . messageReceivedCallback . messageReceived ( messageForm ) ; } } }
'Handles' the message.
If there was an error, the object will be Error
If there was no error, the object will be JSONObject

@param objectToProcess The message to handle in JSON format.

@see Error
@see JSONObject
Handles the message . If there was an error the object will be Error If there was no error the object will be JSONObject