public String encodeRequestedAction(RequestedAction action) { StringBuffer s = new StringBuffer(""); if (RequestedAction.EMBEDDED_NOTIFICATION_REQUEST != action.getRequestedAction()) { return action.toString(); } else { EmbeddedRequest embeddedRequest = action.getEmbeddedRequest(); s.append("E(").append(encodeEmbeddedRequest(embeddedRequest)).append(")"); } return s.toString(); }
public static int encode(byte[] destination,int offset,RequestedAction requestedAction) switch(requestedAction.getRequestedAction()) destination[offset]=StringFunctions.HIGH_E_BYTE; destination[offset+1]=StringFunctions.OPEN_BRACKET_BYTE; int returnLength=EmbeddedRequestHandler.encode(destination,offset+2,requestedAction.getEmbeddedRequest()); destination[offset+2+returnLength]=StringFunctions.CLOSE_BRACKET_BYTE; return returnLength+3;
public RequestedAction decodeRequestedAction(String value) throws ParseException { // requestedAction ="N"/"A"/"D"/"S"/"I"/"K" // /"E""("EmbeddedRequest ")" // /ExtensionAction value = value.trim(); if (value.equalsIgnoreCase("N")) { return RequestedAction.NotifyImmediately; } else if (value.equalsIgnoreCase("A")) { return RequestedAction.Accumulate; } else if (value.equalsIgnoreCase("S")) { return RequestedAction.Swap; } else if (value.equalsIgnoreCase("I")) { return RequestedAction.Ignore; } else if (value.equalsIgnoreCase("K")) { return RequestedAction.KeepSignalsActive; } else if (value.equalsIgnoreCase("D")) { return RequestedAction.TreatAccordingToDigitMap; } else if (value.equalsIgnoreCase("E")) { return new RequestedAction(decodeEmbeddedRequest(value)); } else if (value.equalsIgnoreCase("X")) { // X is RequestIdentifier and we have already taken care of this. // Ignore here return RequestedAction.Ignore; } else { throw new ParseException("Extension action not suported", 0); } }
public static int encode(byte[] destination,int offset,RequestedAction requestedAction) switch(requestedAction.getRequestedAction()) destination[offset]=StringFunctions.HIGH_E_BYTE; destination[offset+1]=StringFunctions.OPEN_BRACKET_BYTE; int returnLength=EmbeddedRequestHandler.encode(destination,offset+2,requestedAction.getEmbeddedRequest()); destination[offset+2+returnLength]=StringFunctions.CLOSE_BRACKET_BYTE; return returnLength+3;
endIndex--; return new RequestedAction(EmbeddedRequestHandler.decode(value,startIndex,endIndex-startIndex+1));
endIndex--; return new RequestedAction(EmbeddedRequestHandler.decode(value,startIndex,endIndex-startIndex+1));
RequestedAction[] actions = new RequestedAction[] { new RequestedAction(embeddedRequest) }; return new RequestedEvent(decodeEventName(evtName, null), actions);