Java Code Examples for com.alibaba.dubbo.common.URL#getAddress()
The following examples show how to use
com.alibaba.dubbo.common.URL#getAddress() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ProviderServiceImpl.java From dubbo3 with Apache License 2.0 | 6 votes |
public List<String> findAddresses() { List<String> ret = new ArrayList<String>(); ConcurrentMap<String, Map<Long, URL>> providerUrls = getRegistryCache().get(Constants.PROVIDERS_CATEGORY); if(null == providerUrls) return ret; for(Map.Entry<String, Map<Long, URL>> e1 : providerUrls.entrySet()) { Map<Long, URL> value = e1.getValue(); for(Map.Entry<Long, URL> e2 : value.entrySet()) { URL u = e2.getValue(); String app = u.getAddress(); if(app != null) ret.add(app); } } return ret; }
Example 2
Source File: ProviderServiceImpl.java From dubbox with Apache License 2.0 | 6 votes |
public List<String> findAddresses() { List<String> ret = new ArrayList<String>(); ConcurrentMap<String, Map<Long, URL>> providerUrls = getRegistryCache().get(Constants.PROVIDERS_CATEGORY); if(null == providerUrls) return ret; for(Map.Entry<String, Map<Long, URL>> e1 : providerUrls.entrySet()) { Map<Long, URL> value = e1.getValue(); for(Map.Entry<Long, URL> e2 : value.entrySet()) { URL u = e2.getValue(); String app = u.getAddress(); if(app != null) ret.add(app); } } return ret; }
Example 3
Source File: ThriftProtocol.java From dubbox with Apache License 2.0 | 6 votes |
public <T> Exporter<T> export( Invoker<T> invoker ) throws RpcException { // 只能使用 thrift codec URL url = invoker.getUrl().addParameter(Constants.CODEC_KEY, ThriftCodec.NAME); // find server. String key = url.getAddress(); //client 也可以暴露一个只有server可以调用的服务。 boolean isServer = url.getParameter(Constants.IS_SERVER_KEY,true); if (isServer && ! serverMap.containsKey(key)) { serverMap.put(key, getServer(url)); } // export service. key = serviceKey(url); DubboExporter<T> exporter = new DubboExporter<T>(invoker, key, exporterMap); exporterMap.put(key, exporter); return exporter; }
Example 4
Source File: ConsumerServiceImpl.java From dubbo3 with Apache License 2.0 | 6 votes |
public List<String> findAddresses() { List<String> ret = new ArrayList<String>(); ConcurrentMap<String, Map<Long, URL>> consumerUrls = getRegistryCache().get(Constants.CONSUMERS_CATEGORY); if(null == consumerUrls) return ret; for(Map.Entry<String, Map<Long, URL>> e1 : consumerUrls.entrySet()) { Map<Long, URL> value = e1.getValue(); for(Map.Entry<Long, URL> e2 : value.entrySet()) { URL u = e2.getValue(); String app = u.getAddress(); if(app != null) ret.add(app); } } return ret; }
Example 5
Source File: DubboProtocol.java From dubbox with Apache License 2.0 | 6 votes |
/** *获取共享连接 */ private ExchangeClient getSharedClient(URL url){ String key = url.getAddress(); ReferenceCountExchangeClient client = referenceClientMap.get(key); if ( client != null ){ if ( !client.isClosed()){ client.incrementAndGetCount(); return client; } else { // logger.warn(new IllegalStateException("client is closed,but stay in clientmap .client :"+ client)); referenceClientMap.remove(key); } } ExchangeClient exchagneclient = initClient(url); client = new ReferenceCountExchangeClient(exchagneclient, ghostClientMap); referenceClientMap.put(key, client); ghostClientMap.remove(key); return client; }
Example 6
Source File: ConsumerServiceImpl.java From dubbox with Apache License 2.0 | 6 votes |
public List<String> findAddresses() { List<String> ret = new ArrayList<String>(); ConcurrentMap<String, Map<Long, URL>> consumerUrls = getRegistryCache().get(Constants.CONSUMERS_CATEGORY); if(null == consumerUrls) return ret; for(Map.Entry<String, Map<Long, URL>> e1 : consumerUrls.entrySet()) { Map<Long, URL> value = e1.getValue(); for(Map.Entry<Long, URL> e2 : value.entrySet()) { URL u = e2.getValue(); String app = u.getAddress(); if(app != null) ret.add(app); } } return ret; }
Example 7
Source File: DubboProtocol.java From dubbox with Apache License 2.0 | 6 votes |
/** *获取共享连接 */ private ExchangeClient getSharedClient(URL url){ String key = url.getAddress(); ReferenceCountExchangeClient client = referenceClientMap.get(key); if ( client != null ){ if ( !client.isClosed()){ client.incrementAndGetCount(); return client; } else { // logger.warn(new IllegalStateException("client is closed,but stay in clientmap .client :"+ client)); referenceClientMap.remove(key); } } ExchangeClient exchagneclient = initClient(url); client = new ReferenceCountExchangeClient(exchagneclient, ghostClientMap); referenceClientMap.put(key, client); ghostClientMap.remove(key); return client; }
Example 8
Source File: ProviderServiceImpl.java From dubbo3 with Apache License 2.0 | 6 votes |
public List<String> findAddressesByApplication(String application) { List<String> ret = new ArrayList<String>(); ConcurrentMap<String, Map<Long, URL>> providerUrls = getRegistryCache().get(Constants.PROVIDERS_CATEGORY); for(Map.Entry<String, Map<Long, URL>> e1 : providerUrls.entrySet()) { Map<Long, URL> value = e1.getValue(); for(Map.Entry<Long, URL> e2 : value.entrySet()) { URL u = e2.getValue(); if(application.equals(u.getParameter(Constants.APPLICATION_KEY))) { String addr = u.getAddress(); if(addr != null) ret.add(addr); } } } return ret; }
Example 9
Source File: DubboProtocol.java From dubbox-hystrix with Apache License 2.0 | 6 votes |
/** *获取共享连接 */ private ExchangeClient getSharedClient(URL url){ String key = url.getAddress(); ReferenceCountExchangeClient client = referenceClientMap.get(key); if ( client != null ){ if ( !client.isClosed()){ client.incrementAndGetCount(); return client; } else { // logger.warn(new IllegalStateException("client is closed,but stay in clientmap .client :"+ client)); referenceClientMap.remove(key); } } ExchangeClient exchagneclient = initClient(url); client = new ReferenceCountExchangeClient(exchagneclient, ghostClientMap); referenceClientMap.put(key, client); ghostClientMap.remove(key); return client; }
Example 10
Source File: ThriftProtocol.java From dubbox with Apache License 2.0 | 6 votes |
public <T> Exporter<T> export( Invoker<T> invoker ) throws RpcException { // 只能使用 thrift codec URL url = invoker.getUrl().addParameter(Constants.CODEC_KEY, ThriftCodec.NAME); // find server. String key = url.getAddress(); //client 也可以暴露一个只有server可以调用的服务。 boolean isServer = url.getParameter(Constants.IS_SERVER_KEY,true); if (isServer && ! serverMap.containsKey(key)) { serverMap.put(key, getServer(url)); } // export service. key = serviceKey(url); DubboExporter<T> exporter = new DubboExporter<T>(invoker, key, exporterMap); exporterMap.put(key, exporter); return exporter; }
Example 11
Source File: ConsumerServiceImpl.java From open-capacity-platform with Apache License 2.0 | 6 votes |
public List<String> findAddresses() { List<String> ret = new ArrayList<String>(); ConcurrentMap<String, Map<Long, URL>> consumerUrls = getRegistryCache().get(Constants.CONSUMERS_CATEGORY); if (null == consumerUrls) return ret; for (Map.Entry<String, Map<Long, URL>> e1 : consumerUrls.entrySet()) { Map<Long, URL> value = e1.getValue(); for (Map.Entry<Long, URL> e2 : value.entrySet()) { URL u = e2.getValue(); String app = u.getAddress(); if (app != null) ret.add(app); } } return ret; }
Example 12
Source File: ProviderServiceImpl.java From dubbox-hystrix with Apache License 2.0 | 6 votes |
public List<String> findAddressesByApplication(String application) { List<String> ret = new ArrayList<String>(); ConcurrentMap<String, Map<Long, URL>> providerUrls = getRegistryCache().get(Constants.PROVIDERS_CATEGORY); for(Map.Entry<String, Map<Long, URL>> e1 : providerUrls.entrySet()) { Map<Long, URL> value = e1.getValue(); for(Map.Entry<Long, URL> e2 : value.entrySet()) { URL u = e2.getValue(); if(application.equals(u.getParameter(Constants.APPLICATION_KEY))) { String addr = u.getAddress(); if(addr != null) ret.add(addr); } } } return ret; }
Example 13
Source File: ProviderServiceImpl.java From dubbox-hystrix with Apache License 2.0 | 6 votes |
public List<String> findAddresses() { List<String> ret = new ArrayList<String>(); ConcurrentMap<String, Map<Long, URL>> providerUrls = getRegistryCache().get(Constants.PROVIDERS_CATEGORY); if(null == providerUrls) return ret; for(Map.Entry<String, Map<Long, URL>> e1 : providerUrls.entrySet()) { Map<Long, URL> value = e1.getValue(); for(Map.Entry<Long, URL> e2 : value.entrySet()) { URL u = e2.getValue(); String app = u.getAddress(); if(app != null) ret.add(app); } } return ret; }
Example 14
Source File: ThriftProtocol.java From dubbo-2.6.5 with Apache License 2.0 | 6 votes |
@Override public <T> Exporter<T> export(Invoker<T> invoker) throws RpcException { // can use thrift codec only URL url = invoker.getUrl().addParameter(Constants.CODEC_KEY, ThriftCodec.NAME); // find server. String key = url.getAddress(); // client can expose a service for server to invoke only. boolean isServer = url.getParameter(Constants.IS_SERVER_KEY, true); if (isServer && !serverMap.containsKey(key)) { serverMap.put(key, getServer(url)); } // export service. key = serviceKey(url); DubboExporter<T> exporter = new DubboExporter<T>(invoker, key, exporterMap); exporterMap.put(key, exporter); return exporter; }
Example 15
Source File: DubboProtocol.java From dubbo3 with Apache License 2.0 | 6 votes |
/** * 获取共享连接 */ private ExchangeClient getSharedClient(URL url) { String key = url.getAddress(); ReferenceCountExchangeClient client = referenceClientMap.get(key); if (client != null) { if (!client.isClosed()) { client.incrementAndGetCount(); return client; } else { // logger.warn(new IllegalStateException("client is closed,but stay in clientmap .client :"+ client)); referenceClientMap.remove(key); } } ExchangeClient exchagneclient = initClient(url); client = new ReferenceCountExchangeClient(exchagneclient, ghostClientMap); referenceClientMap.put(key, client); ghostClientMap.remove(key); return client; }
Example 16
Source File: DubboProtocol.java From dubbox-hystrix with Apache License 2.0 | 5 votes |
private void openServer(URL url) { // find server. String key = url.getAddress(); //client 也可以暴露一个只有server可以调用的服务。 boolean isServer = url.getParameter(Constants.IS_SERVER_KEY,true); if (isServer) { ExchangeServer server = serverMap.get(key); if (server == null) { serverMap.put(key, createServer(url)); } else { //server支持reset,配合override功能使用 server.reset(url); } } }
Example 17
Source File: ConsumerServiceImpl.java From dubbo3 with Apache License 2.0 | 5 votes |
public List<String> findAddressesByService(String service) { List<String> ret = new ArrayList<String>(); ConcurrentMap<String, Map<Long, URL>> consumerUrls = getRegistryCache().get(Constants.CONSUMERS_CATEGORY); if(null == consumerUrls) return ret; for(Map.Entry<Long, URL> e2 : consumerUrls.get(service).entrySet()) { URL u = e2.getValue(); String app = u.getAddress(); if(app != null) ret.add(app); } return ret; }
Example 18
Source File: ExecutorUtil.java From dubbo-2.6.5 with Apache License 2.0 | 5 votes |
/** * append thread name with url address * * @return new url with updated thread name */ public static URL setThreadName(URL url, String defaultName) { String name = url.getParameter(Constants.THREAD_NAME_KEY, defaultName); name = name + "-" + url.getAddress(); url = url.addParameter(Constants.THREAD_NAME_KEY, name); return url; }
Example 19
Source File: DubboProtocol.java From dubbo3 with Apache License 2.0 | 5 votes |
private void openServer(URL url) { // find server. String key = url.getAddress(); //client 也可以暴露一个只有server可以调用的服务。 boolean isServer = url.getParameter(Constants.IS_SERVER_KEY, true); if (isServer) { ExchangeServer server = serverMap.get(key); if (server == null) { serverMap.put(key, createServer(url)); } else { //server支持reset,配合override功能使用 server.reset(url); } } }
Example 20
Source File: JettyHttpServer.java From dubbox with Apache License 2.0 | 4 votes |
public JettyHttpServer(URL url, final HttpHandler handler){ super(url, handler); // modified by lishen this.url = url; // TODO we should leave this setting to slf4j Log.setLog(new StdErrLog()); Log.getLog().setDebugEnabled(false); DispatcherServlet.addHttpHandler(url.getPort(), handler); int threads = url.getParameter(Constants.THREADS_KEY, Constants.DEFAULT_THREADS); QueuedThreadPool threadPool = new QueuedThreadPool(); threadPool.setDaemon(true); threadPool.setMaxThreads(threads); threadPool.setMinThreads(threads); SelectChannelConnector connector = new SelectChannelConnector(); if (! url.isAnyHost() && NetUtils.isValidLocalHost(url.getHost())) { connector.setHost(url.getHost()); } connector.setPort(url.getPort()); server = new Server(); server.setThreadPool(threadPool); server.addConnector(connector); ServletHandler servletHandler = new ServletHandler(); ServletHolder servletHolder = servletHandler.addServletWithMapping(DispatcherServlet.class, "/*"); servletHolder.setInitOrder(2); // modified by lishen // dubbo's original impl can't support the use of ServletContext // server.addHandler(servletHandler); // TODO Context.SESSIONS is the best option here? Context context = new Context(server, "/", Context.SESSIONS); context.setServletHandler(servletHandler); ServletManager.getInstance().addServletContext(url.getPort(), context.getServletContext()); try { server.start(); } catch (Exception e) { throw new IllegalStateException("Failed to start jetty server on " + url.getAddress() + ", cause: " + e.getMessage(), e); } }