anchor.diff:      return new <%= repository.imit.qualified_session_name %>( java.util.UUID.randomUUID().toString() );
     }
   
  -  @javax.annotation.Nonnull
  -  protected final <%= repository.imit.qualified_session_name %> ensureSession( @javax.annotation.Nonnull final String clientID )
  -    throws org.realityforge.replicant.server.transport.BadSessionException
  -  {
  -    final <%= repository.imit.qualified_session_name %> session = getSession( clientID );
  -    if ( null == session )
  -    {
  -      throw new org.realityforge.replicant.server.transport.BadSessionException();
  -    }
  -    return session;
  -  }
   <%
     repository.imit.graphs.each do |graph|
   
  
positive.code: 
  @javax.annotation.Generated( "Domgen" )
  public abstract class <%= repository.imit.session_manager_name %>
    extends org.realityforge.ssf.InMemorySessionManager<<%= repository.imit.qualified_session_name %>>
    implements org.realityforge.replicant.server.EntityMessageEndpoint
  {
    @javax.inject.Inject
    private <%= repository.imit.qualified_graph_encoder_name %> _encoder;
  
    @javax.annotation.Resource
    private javax.transaction.TransactionSynchronizationRegistry _registry;
  
    @javax.annotation.Nonnull
    protected final <%= repository.imit.qualified_graph_encoder_name %> getEncoder()
  
negative.code:       if( null == cacheKey || !cacheKey.equals( _cached<%= graph.key %>Key ) )
        {
          messages.addAll( _cached<%= graph.key %>Messages );
          sendPacket( session, _cached<%= graph.key %>Key, messages );
          return true;
        }
  <% else -%>
  