public JerseyNexusClient( final Condition connectionCondition, final SubsystemFactory<?, JerseyNexusClient>[] subsystemFactories, final ConnectionInfo connectionInfo, final XStream xstream, final Client client, final MediaType mediaType ) { super( connectionInfo, xstream ); this.client = Check.notNull( client, Client.class ); this.mediaType = Check.notNull( mediaType, MediaType.class ); this.subsystemFactoryMap = new LinkedHashMap<Class<?>, SubsystemFactory<?, JerseyNexusClient>>(); getLogger().debug( "Client created for media-type {} and connection {}", mediaType, connectionInfo ); initializeConnection( connectionCondition ); initializeSubsystems( subsystemFactories ); }