public EvaluatorContext newContext(final String contextId, final Optional<String> parentID) {
    synchronized (this.priorIds) {
      if (this.priorIds.contains(contextId)) {
        throw new IllegalStateException("Creating second EvaluatorContext instance for id " + contextId);
      }
      this.priorIds.add(contextId);
    }
    return new EvaluatorContext(contextId,
        this.evaluatorId,
        this.evaluatorDescriptor,
        parentID,
        this.configurationSerializer,
        this.contextControlHandler,
        this.messageDispatcher,
        this.exceptionCodec,
        this.contextRepresenters.get());
  }
public EvaluatorContext newContext ( final String contextId , final Optional < String > parentID ) { synchronized ( this . priorIds ) { if ( this . priorIds . contains ( contextId ) ) { throw new IllegalStateException ( "Creating second EvaluatorContext instance for id " + contextId ) ; } this . priorIds . add ( contextId ) ; } return new EvaluatorContext ( contextId , this . evaluatorId , this . evaluatorDescriptor , parentID , this . configurationSerializer , this . contextControlHandler , this . messageDispatcher , this . exceptionCodec , this . contextRepresenters . get ( ) ) ; }
Instantiate a new Context representer with the given id and parent id.

@param contextId
@param parentID
@return a new Context representer with the given id and parent id.