Versions versions = new Versions(environment); Set<Byte> supportedVersions = versions.getSupportedVersions(getRequiredCapabilities(serviceURL)); return versions.getVersionedConnection(highest, channel, serviceURL);
public Versions(final Map<String, ?> environment) { this.environment = environment; Map<Byte, Set<Capability>> supportedVersions = new HashMap<Byte, Set<Capability>>(); supportedVersions.put(VersionOne.getVersionIdentifier(), VersionOne.getCapabilites()); supportedVersions.put(VersionTwo.getVersionIdentifier(), VersionTwo.getCapabilities()); for (Byte current : getExcludedVersions()) { supportedVersions.remove(current); } this.supportedVersions = Collections.unmodifiableMap(supportedVersions); }
private Set<Byte> getExcludedVersions() { Set<Byte> excluded = new HashSet<Byte>(); Object list; if (environment != null && environment.containsKey(EXCLUDED_VERSIONS) && (list = environment.get(EXCLUDED_VERSIONS)) != null) { if (list instanceof String) { split((String) list, excluded); } else { log.warnf("Ignoring excluded versions list of type '%s'", list.getClass().getName()); } } split(System.getProperty(EXCLUDED_VERSIONS, ""), excluded); return excluded; }
DelegatingRemotingConnectorServer(final MBeanServerManager mbeanServerManager, final Endpoint endpoint, final Executor executor, final Map<String, ?> environment, final ServerMessageInterceptorFactory serverMessageInterceptorFactory) { this.mbeanServerManager = mbeanServerManager; this.endpoint = endpoint; this.executor = executor; versions = new Versions(environment); this.serverMessageInterceptorFactory = serverMessageInterceptorFactory != null ? serverMessageInterceptorFactory : DefaultServerInterceptorFactory.FACTORY_INSTANCE; }
private byte[] getSupportedVersions(final boolean fullVersionList) { Set<Byte> supportedVersions = versions.getSupportedVersions(); if (fullVersionList) { Byte[] temp = supportedVersions.toArray(new Byte[supportedVersions.size()]); byte[] response = new byte[temp.length]; for (int i = 0; i < temp.length; i++) { response[i] = temp[i]; } return response; } for (byte current : supportedVersions) { // For older clients (1.0.4.Final and before) we send a special version list that allows them // to select protocol 0x01 whilst indicating to newer clients that there are more versions available. if (current == 0x01) { return new byte[] { 0x00, 0x01 }; } } return new byte[] { 0x00 }; }
versions.startServer(version, channel, mbeanServerManager, executor, serverMessageInterceptor); } catch (IOException e) { log.error("Error determining version selected by client.");
public DelegatingRemotingConnectorServer(final MBeanServerLocator mbeanServerLocator, final Endpoint endpoint, final Executor executor, final Map<String, ?> environment, final ServerMessageInterceptorFactory serverMessageInterceptorFactory) { this.mbeanServerManager = new DelegatingMBeanServerManager(mbeanServerLocator); this.endpoint = endpoint; this.executor = executor; versions = new Versions(environment); this.serverMessageInterceptorFactory = serverMessageInterceptorFactory != null ? serverMessageInterceptorFactory : DefaultServerInterceptorFactory.FACTORY_INSTANCE; }
private byte[] getSupportedVersions(final boolean fullVersionList) { Set<Byte> supportedVersions = versions.getSupportedVersions(); if (fullVersionList) { Byte[] temp = supportedVersions.toArray(new Byte[supportedVersions.size()]); byte[] response = new byte[temp.length]; for (int i = 0; i < temp.length; i++) { response[i] = temp[i]; } return response; } for (byte current : supportedVersions) { // For older clients (1.0.4.Final and before) we send a special version list that allows them // to select protocol 0x01 whilst indicating to newer clients that there are more versions available. if (current == 0x01) { return new byte[] { 0x00, 0x01 }; } } return new byte[] { 0x00 }; }
versions.startServer(version, channel, mbeanServerManager, executor, serverMessageInterceptor); } catch (IOException e) { log.error("Error determining version selected by client.");
Versions versions = new Versions(environment); Set<Byte> supportedVersions = versions.getSupportedVersions(getRequiredCapabilities(serviceURL)); return versions.getVersionedConnection(highest, channel, serviceURL);
DelegatingRemotingConnectorServer(final MBeanServerManager mbeanServerManager, final Endpoint endpoint, final Executor executor, final Map<String, ?> environment, final ServerMessageInterceptorFactory serverMessageInterceptorFactory) { this.mbeanServerManager = mbeanServerManager; this.endpoint = endpoint; this.executor = executor; versions = new Versions(environment); this.serverMessageInterceptorFactory = serverMessageInterceptorFactory != null ? serverMessageInterceptorFactory : DefaultServerInterceptorFactory.FACTORY_INSTANCE; }
public Versions(final Map<String, ?> environment) { this.environment = environment; Map<Byte, Set<Capability>> supportedVersions = new HashMap<Byte, Set<Capability>>(); supportedVersions.put(VersionOne.getVersionIdentifier(), VersionOne.getCapabilites()); supportedVersions.put(VersionTwo.getVersionIdentifier(), VersionTwo.getCapabilities()); for (Byte current : getExcludedVersions()) { supportedVersions.remove(current); } this.supportedVersions = Collections.unmodifiableMap(supportedVersions); }
private Set<Byte> getExcludedVersions() { Set<Byte> excluded = new HashSet<Byte>(); Object list; if (environment != null && environment.containsKey(EXCLUDED_VERSIONS) && (list = environment.get(EXCLUDED_VERSIONS)) != null) { if (list instanceof String) { split((String) list, excluded); } else { log.warnf("Ignoring excluded versions list of type '%s'", list.getClass().getName()); } } split(System.getProperty(EXCLUDED_VERSIONS, ""), excluded); return excluded; }
private byte[] getSupportedVersions(final boolean fullVersionList) { Set<Byte> supportedVersions = versions.getSupportedVersions(); if (fullVersionList) { Byte[] temp = supportedVersions.toArray(new Byte[supportedVersions.size()]); byte[] response = new byte[temp.length]; for (int i = 0; i < temp.length; i++) { response[i] = temp[i]; } return response; } for (byte current : supportedVersions) { // For older clients (1.0.4.Final and before) we send a special version list that allows them // to select protocol 0x01 whilst indicating to newer clients that there are more versions available. if (current == 0x01) { return new byte[] { 0x00, 0x01 }; } } return new byte[] { 0x00 }; }
versions.startServer(version, channel, mbeanServerManager, executor, serverMessageInterceptor); } catch (IOException e) { log.error("Error determining version selected by client.");
Versions versions = new Versions(environment); Set<Byte> supportedVersions = versions.getSupportedVersions(getRequiredCapabilities(serviceURL)); return versions.getVersionedConnection(highest, channel, serviceURL);
DelegatingRemotingConnectorServer(final MBeanServerManager mbeanServerManager, final Endpoint endpoint, final Executor executor, final Map<String, ?> environment, final ServerMessageInterceptorFactory serverMessageInterceptorFactory) { this.mbeanServerManager = mbeanServerManager; this.endpoint = endpoint; this.executor = executor; versions = new Versions(environment); this.serverMessageInterceptorFactory = serverMessageInterceptorFactory != null ? serverMessageInterceptorFactory : DefaultServerInterceptorFactory.FACTORY_INSTANCE; }
public Versions(final Map<String, ?> environment) { this.environment = environment; Map<Byte, Set<Capability>> supportedVersions = new HashMap<Byte, Set<Capability>>(); supportedVersions.put(VersionOne.getVersionIdentifier(), VersionOne.getCapabilites()); supportedVersions.put(VersionTwo.getVersionIdentifier(), VersionTwo.getCapabilities()); for (Byte current : getExcludedVersions()) { supportedVersions.remove(current); } this.supportedVersions = Collections.unmodifiableMap(supportedVersions); }
private Set<Byte> getExcludedVersions() { Set<Byte> excluded = new HashSet<Byte>(); Object list; if (environment != null && environment.containsKey(EXCLUDED_VERSIONS) && (list = environment.get(EXCLUDED_VERSIONS)) != null) { if (list instanceof String) { split((String) list, excluded); } else { log.warnf("Ignoring excluded versions list of type '%s'", list.getClass().getName()); } } split(System.getProperty(EXCLUDED_VERSIONS, ""), excluded); return excluded; }
public DelegatingRemotingConnectorServer(final MBeanServerLocator mbeanServerLocator, final Endpoint endpoint, final Executor executor, final Map<String, ?> environment, final ServerMessageInterceptorFactory serverMessageInterceptorFactory) { this.mbeanServerManager = new DelegatingMBeanServerManager(mbeanServerLocator); this.endpoint = endpoint; this.executor = executor; versions = new Versions(environment); this.serverMessageInterceptorFactory = serverMessageInterceptorFactory != null ? serverMessageInterceptorFactory : DefaultServerInterceptorFactory.FACTORY_INSTANCE; }