public static Command of(AggregateId aggregateId,StreamTimestamp commandTimestamp,VersionedName commandName,Tuple parameters,Type resultType){
  checkNotNull(aggregateId,"aggregateId must not be null");
  checkNotNull(commandTimestamp,"commandTimestamp must not be null");
  checkNotNull(commandName,"commandName must not be null");
  checkNotNull(parameters,"parameters must not be null");
  checkNotNull(resultType,"resultType must not be null");
  return new Command(aggregateId,commandTimestamp,Optional.empty(),commandName,parameters,resultType);
}

public static Command of ( AggregateId aggregateId , StreamTimestamp commandTimestamp , VersionedName commandName , Tuple parameters , Type resultType ) { checkNotNull ( aggregateId , "aggregateId must not be null" ) ; checkNotNull ( commandTimestamp , "commandTimestamp must not be null" ) ; checkNotNull ( commandName , "commandName must not be null" ) ; checkNotNull ( parameters , "parameters must not be null" ) ; checkNotNull ( resultType , "resultType must not be null" ) ; return new Command ( aggregateId , commandTimestamp , Optional . empty ( ) , commandName , parameters , resultType ) ; }
create a new command with the specified properties .
