class Command implements Serializable {

	public String toRemoteUri(Type endWhenType, Action withAction, Behavior withBehavior) {
		String baseUri = buildUri(endWhenType);
		StringBuilder sb = new StringBuilder(baseUri);
		
		/* action */
		sb.append(Constants.SEPARATOR_URI.code).append(withAction.name());
		
		/* behavior=$execute */
		sb.append(Constants.REQUEST_PARAMETER_MARKER.code).append(Constants.MARKER_URI_BEHAVIOR.code).append(Constants.PARAM_ASSIGNMENT_MARKER.code);	//	?b=
		sb.append(withBehavior);	// $execute (or other behavior)	
		
		return sb.toString();
	}

	public  Command(String absoluteUri);
	public  Command(Command source);

}