@Override
  public P build() {
    try {
      return buildAsync().join();
    } catch (Exception e) {
      if (e instanceof CompletionException && e.getCause() instanceof RuntimeException) {
        throw (RuntimeException) e.getCause();
      } else {
        throw e;
      }
    }
  }
@ Override public P build ( ) { try { return buildAsync ( ) . join ( ) ; } catch ( Exception e ) { if ( e instanceof CompletionException && e . getCause ( ) instanceof RuntimeException ) { throw ( RuntimeException ) e . getCause ( ) ; } else { throw e ; } } }
Builds a new instance of the primitive.
<p>
The returned instance will be distinct from all other instances of the same primitive on this node, with a
distinct session, ordering guarantees, memory, etc.

@return a new instance of the primitive