@Override protected void setAlternateOption(String location, ResourceOptions options, Map<String, Object> optionsByName) { // Creating alternate SseResourceAddres with httpxe tranport location = SSE_HTTPXE_RESOURCE_FACTORY.createURI(location); // copying optionsByName to so that the alternate address has its own to work with optionsByName = new HashMap<>(optionsByName); ResourceAddress alternateAddress = getResourceAddressFactory().newResourceAddress(location, optionsByName); options.setOption(ResourceAddress.ALTERNATE, alternateAddress); }
@Override protected void setAlternateOption(String location, ResourceOptions options, Map<String, Object> optionsByName) { // Creating alternate SseResourceAddres with httpxe+ssl tranport location = SseHttpxeSslResourceAddressFactorySpi.SSE_HTTPXE_RESOURCE_FACTORY.createURI(location); // copying optionsByName to so that the alternate address has its own to work with optionsByName = new HashMap<>(optionsByName); ResourceAddress alternateAddress = getResourceAddressFactory().newResourceAddress(location, optionsByName); options.setOption(ResourceAddress.ALTERNATE, alternateAddress); }
@Override protected void setAlternateOption(final String location, ResourceOptions options, Map<String, Object> optionsByName) { String key = options.getOption(HttpResourceAddress.NEXT_PROTOCOL); String scheme = URIUtils.getScheme(location); final boolean secureScheme = "https".equals(scheme) || scheme.contains("+ssl"); if (key != null && secureScheme) { key = key + " secure"; } List<ResourceFactory> resourceFactories = RESOURCE_FACTORIES_BY_KEY.get(key); if (resourceFactories != null && !resourceFactories.isEmpty() && getResourceAddressFactory() != null) { // create alternate addresses HttpResourceAddress alternateAddress = null; for (ResourceFactory resourceFactory: resourceFactories) { alternateAddress = newResourceAddressWithAlternate( resourceFactory.createURI(location), getNewOptionsByName(options, optionsByName), alternateAddress); } // save the alternate chain into this address. options.setOption(ResourceAddress.ALTERNATE, alternateAddress); } }
@Override protected void setAlternateOption(String location, ResourceOptions options, Map<String, Object> optionsByName) { List<ResourceFactory> resourceFactories = getAlternateResourceFactories(); if (resourceFactories != null && !resourceFactories.isEmpty() && getResourceAddressFactory() != null) { // create alternate addresses WsResourceAddress alternateAddress = null; for (ResourceFactory resourceFactory: resourceFactories) { alternateAddress = newResourceAddressWithAlternate( resourceFactory.createURI(location), getNewOptionsByName(options, optionsByName), alternateAddress); } // save the alternate chain into this address. options.setOption(ALTERNATE, alternateAddress); } }
ResourceFactory factory = getTransportFactory(); if (factory != null) { transportURI = factory.createURI(location);
private void setOptions(T address, String location, ResourceOptions options, Object qualifier) { // default the transport ResourceAddress transport = options.getOption(TRANSPORT); String transportURI = options.getOption(TRANSPORT_URI); if (transport == null && addressFactory != null) { ResourceOptions newOptions = ResourceOptions.FACTORY.newResourceOptions(options); if (transportURI == null) { ResourceFactory factory = getTransportFactory(); if (factory != null) { transportURI = factory.createURI(location); newOptions.setOption(TRANSPORT_URI, transportURI); } } if (transportURI != null) { // TODO: make ResourceOptions hierarchical to provide options here? ResourceOptions transportOptions = ResourceOptions.FACTORY.newResourceOptions(); transportOptions.setOption(NEXT_PROTOCOL, getProtocolName()); URI locationURI = URI.create(location); transportOptions.setOption(TRANSPORTED_URI, locationURI); transport = addressFactory.newResourceAddress(transportURI, transportOptions); } newOptions.setOption(TRANSPORT, transport); options = newOptions; } setOptions(address, options, qualifier); }