test_class.declarator: tempDir = new TemporaryFolder()
test_class.modifier: @ClassRule
      public static
test_class.original_string: @ClassRule
      public static TemporaryFolder tempDir = new TemporaryFolder();
test_class.type: TemporaryFolder
test_class.var_name: tempDir
test_class.declarator: dubboProperties
test_class.modifier: private static
test_class.original_string: private static File dubboProperties;
test_class.type: File
test_class.var_name: dubboProperties
test_class.file: dubbo-config/dubbo-config-api/src/test/java/com/alibaba/dubbo/config/AbstractInterfaceConfigTest.java
test_class.identifier: AbstractInterfaceConfigTest
test_case.body: @Test
      public void testLoadMonitor() throws Exception {
          System.setProperty("dubbo.monitor.address", "monitor-addr:12080");
          System.setProperty("dubbo.monitor.protocol", "monitor");
          InterfaceConfig interfaceConfig = new InterfaceConfig();
          URL url = interfaceConfig.loadMonitor(new URL("dubbo", "addr1", 9090));
          TestCase.assertEquals("monitor-addr:12080", url.getAddress());
          TestCase.assertEquals(MonitorService.class.getName(), url.getParameter("interface"));
          TestCase.assertNotNull(url.getParameter("dubbo"));
          TestCase.assertNotNull(url.getParameter("pid"));
          TestCase.assertNotNull(url.getParameter("timestamp"));
      }
test_case.class_method_signature: AbstractInterfaceConfigTest.testLoadMonitor()
test_case.full_signature: @Test public void testLoadMonitor()
test_case.identifier: testLoadMonitor
test_case.invocations: setProperty setProperty loadMonitor assertEquals getAddress assertEquals getName getParameter assertNotNull getParameter assertNotNull getParameter assertNotNull getParameter
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testLoadMonitor()
focal_class.declarator: serialVersionUID = -1559314110797223229L
focal_class.modifier: private static final
focal_class.original_string: private static final long serialVersionUID = -1559314110797223229L;
focal_class.type: long
focal_class.var_name: serialVersionUID
focal_class.declarator: local
focal_class.modifier: protected
focal_class.original_string: protected String local;
focal_class.type: String
focal_class.var_name: local
focal_class.declarator: stub
focal_class.modifier: protected
focal_class.original_string: protected String stub;
focal_class.type: String
focal_class.var_name: stub
focal_class.declarator: monitor
focal_class.modifier: protected
focal_class.original_string: protected MonitorConfig monitor;
focal_class.type: MonitorConfig
focal_class.var_name: monitor
focal_class.declarator: proxy
focal_class.modifier: protected
focal_class.original_string: protected String proxy;
focal_class.type: String
focal_class.var_name: proxy
focal_class.declarator: cluster
focal_class.modifier: protected
focal_class.original_string: protected String cluster;
focal_class.type: String
focal_class.var_name: cluster
focal_class.declarator: filter
focal_class.modifier: protected
focal_class.original_string: protected String filter;
focal_class.type: String
focal_class.var_name: filter
focal_class.declarator: listener
focal_class.modifier: protected
focal_class.original_string: protected String listener;
focal_class.type: String
focal_class.var_name: listener
focal_class.declarator: owner
focal_class.modifier: protected
focal_class.original_string: protected String owner;
focal_class.type: String
focal_class.var_name: owner
focal_class.declarator: connections
focal_class.modifier: protected
focal_class.original_string: protected Integer connections;
focal_class.type: Integer
focal_class.var_name: connections
focal_class.declarator: layer
focal_class.modifier: protected
focal_class.original_string: protected String layer;
focal_class.type: String
focal_class.var_name: layer
focal_class.declarator: application
focal_class.modifier: protected
focal_class.original_string: protected ApplicationConfig application;
focal_class.type: ApplicationConfig
focal_class.var_name: application
focal_class.declarator: module
focal_class.modifier: protected
focal_class.original_string: protected ModuleConfig module;
focal_class.type: ModuleConfig
focal_class.var_name: module
focal_class.declarator: registries
focal_class.modifier: protected
focal_class.original_string: protected List<RegistryConfig> registries;
focal_class.type: List<RegistryConfig>
focal_class.var_name: registries
focal_class.declarator: onconnect
focal_class.modifier: protected
focal_class.original_string: protected String onconnect;
focal_class.type: String
focal_class.var_name: onconnect
focal_class.declarator: ondisconnect
focal_class.modifier: protected
focal_class.original_string: protected String ondisconnect;
focal_class.type: String
focal_class.var_name: ondisconnect
focal_class.declarator: callbacks
focal_class.modifier: private
focal_class.original_string: private Integer callbacks;
focal_class.type: Integer
focal_class.var_name: callbacks
focal_class.declarator: scope
focal_class.modifier: private
focal_class.original_string: private String scope;
focal_class.type: String
focal_class.var_name: scope
focal_class.file: dubbo-config/dubbo-config-api/src/main/java/com/alibaba/dubbo/config/AbstractInterfaceConfig.java
focal_class.identifier: AbstractInterfaceConfig
focal_class.class_method_signature: AbstractInterfaceConfig.checkRegistry()
focal_class.full_signature: protected void checkRegistry()
focal_class.identifier: checkRegistry
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void checkRegistry()
focal_class.class_method_signature: AbstractInterfaceConfig.checkApplication()
focal_class.full_signature: @SuppressWarnings("deprecation") protected void checkApplication()
focal_class.identifier: checkApplication
focal_class.modifiers: @SuppressWarnings("deprecation") protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void checkApplication()
focal_class.class_method_signature: AbstractInterfaceConfig.loadRegistries(boolean provider)
focal_class.full_signature: protected List<URL> loadRegistries(boolean provider)
focal_class.identifier: loadRegistries
focal_class.modifiers: protected
focal_class.parameters: (boolean provider)
focal_class.return: List<URL>
focal_class.signature: List<URL> loadRegistries(boolean provider)
focal_class.class_method_signature: AbstractInterfaceConfig.loadMonitor(URL registryURL)
focal_class.full_signature: protected URL loadMonitor(URL registryURL)
focal_class.identifier: loadMonitor
focal_class.modifiers: protected
focal_class.parameters: (URL registryURL)
focal_class.return: URL
focal_class.signature: URL loadMonitor(URL registryURL)
focal_class.class_method_signature: AbstractInterfaceConfig.checkInterfaceAndMethods(Class<?> interfaceClass, List<MethodConfig> methods)
focal_class.full_signature: protected void checkInterfaceAndMethods(Class<?> interfaceClass, List<MethodConfig> methods)
focal_class.identifier: checkInterfaceAndMethods
focal_class.modifiers: protected
focal_class.parameters: (Class<?> interfaceClass, List<MethodConfig> methods)
focal_class.return: void
focal_class.signature: void checkInterfaceAndMethods(Class<?> interfaceClass, List<MethodConfig> methods)
focal_class.class_method_signature: AbstractInterfaceConfig.checkMock(Class<?> interfaceClass)
focal_class.full_signature:  void checkMock(Class<?> interfaceClass)
focal_class.identifier: checkMock
focal_class.parameters: (Class<?> interfaceClass)
focal_class.return: void
focal_class.signature: void checkMock(Class<?> interfaceClass)
focal_class.class_method_signature: AbstractInterfaceConfig.checkStub(Class<?> interfaceClass)
focal_class.full_signature:  void checkStub(Class<?> interfaceClass)
focal_class.identifier: checkStub
focal_class.parameters: (Class<?> interfaceClass)
focal_class.return: void
focal_class.signature: void checkStub(Class<?> interfaceClass)
focal_class.class_method_signature: AbstractInterfaceConfig.getLocal()
focal_class.full_signature: @Deprecated public String getLocal()
focal_class.identifier: getLocal
focal_class.modifiers: @Deprecated public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getLocal()
focal_class.class_method_signature: AbstractInterfaceConfig.setLocal(Boolean local)
focal_class.full_signature: @Deprecated public void setLocal(Boolean local)
focal_class.identifier: setLocal
focal_class.modifiers: @Deprecated public
focal_class.parameters: (Boolean local)
focal_class.return: void
focal_class.signature: void setLocal(Boolean local)
focal_class.class_method_signature: AbstractInterfaceConfig.setLocal(String local)
focal_class.full_signature: @Deprecated public void setLocal(String local)
focal_class.identifier: setLocal
focal_class.modifiers: @Deprecated public
focal_class.parameters: (String local)
focal_class.return: void
focal_class.signature: void setLocal(String local)
focal_class.class_method_signature: AbstractInterfaceConfig.getStub()
focal_class.full_signature: public String getStub()
focal_class.identifier: getStub
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getStub()
focal_class.class_method_signature: AbstractInterfaceConfig.setStub(Boolean stub)
focal_class.full_signature: public void setStub(Boolean stub)
focal_class.identifier: setStub
focal_class.modifiers: public
focal_class.parameters: (Boolean stub)
focal_class.return: void
focal_class.signature: void setStub(Boolean stub)
focal_class.class_method_signature: AbstractInterfaceConfig.setStub(String stub)
focal_class.full_signature: public void setStub(String stub)
focal_class.identifier: setStub
focal_class.modifiers: public
focal_class.parameters: (String stub)
focal_class.return: void
focal_class.signature: void setStub(String stub)
focal_class.class_method_signature: AbstractInterfaceConfig.getCluster()
focal_class.full_signature: public String getCluster()
focal_class.identifier: getCluster
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getCluster()
focal_class.class_method_signature: AbstractInterfaceConfig.setCluster(String cluster)
focal_class.full_signature: public void setCluster(String cluster)
focal_class.identifier: setCluster
focal_class.modifiers: public
focal_class.parameters: (String cluster)
focal_class.return: void
focal_class.signature: void setCluster(String cluster)
focal_class.class_method_signature: AbstractInterfaceConfig.getProxy()
focal_class.full_signature: public String getProxy()
focal_class.identifier: getProxy
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getProxy()
focal_class.class_method_signature: AbstractInterfaceConfig.setProxy(String proxy)
focal_class.full_signature: public void setProxy(String proxy)
focal_class.identifier: setProxy
focal_class.modifiers: public
focal_class.parameters: (String proxy)
focal_class.return: void
focal_class.signature: void setProxy(String proxy)
focal_class.class_method_signature: AbstractInterfaceConfig.getConnections()
focal_class.full_signature: public Integer getConnections()
focal_class.identifier: getConnections
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Integer
focal_class.signature: Integer getConnections()
focal_class.class_method_signature: AbstractInterfaceConfig.setConnections(Integer connections)
focal_class.full_signature: public void setConnections(Integer connections)
focal_class.identifier: setConnections
focal_class.modifiers: public
focal_class.parameters: (Integer connections)
focal_class.return: void
focal_class.signature: void setConnections(Integer connections)
focal_class.class_method_signature: AbstractInterfaceConfig.getFilter()
focal_class.full_signature: @Parameter(key = Constants.REFERENCE_FILTER_KEY, append = true) public String getFilter()
focal_class.identifier: getFilter
focal_class.modifiers: @Parameter(key = Constants.REFERENCE_FILTER_KEY, append = true) public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getFilter()
focal_class.class_method_signature: AbstractInterfaceConfig.setFilter(String filter)
focal_class.full_signature: public void setFilter(String filter)
focal_class.identifier: setFilter
focal_class.modifiers: public
focal_class.parameters: (String filter)
focal_class.return: void
focal_class.signature: void setFilter(String filter)
focal_class.class_method_signature: AbstractInterfaceConfig.getListener()
focal_class.full_signature: @Parameter(key = Constants.INVOKER_LISTENER_KEY, append = true) public String getListener()
focal_class.identifier: getListener
focal_class.modifiers: @Parameter(key = Constants.INVOKER_LISTENER_KEY, append = true) public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getListener()
focal_class.class_method_signature: AbstractInterfaceConfig.setListener(String listener)
focal_class.full_signature: public void setListener(String listener)
focal_class.identifier: setListener
focal_class.modifiers: public
focal_class.parameters: (String listener)
focal_class.return: void
focal_class.signature: void setListener(String listener)
focal_class.class_method_signature: AbstractInterfaceConfig.getLayer()
focal_class.full_signature: public String getLayer()
focal_class.identifier: getLayer
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getLayer()
focal_class.class_method_signature: AbstractInterfaceConfig.setLayer(String layer)
focal_class.full_signature: public void setLayer(String layer)
focal_class.identifier: setLayer
focal_class.modifiers: public
focal_class.parameters: (String layer)
focal_class.return: void
focal_class.signature: void setLayer(String layer)
focal_class.class_method_signature: AbstractInterfaceConfig.getApplication()
focal_class.full_signature: public ApplicationConfig getApplication()
focal_class.identifier: getApplication
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: ApplicationConfig
focal_class.signature: ApplicationConfig getApplication()
focal_class.class_method_signature: AbstractInterfaceConfig.setApplication(ApplicationConfig application)
focal_class.full_signature: public void setApplication(ApplicationConfig application)
focal_class.identifier: setApplication
focal_class.modifiers: public
focal_class.parameters: (ApplicationConfig application)
focal_class.return: void
focal_class.signature: void setApplication(ApplicationConfig application)
focal_class.class_method_signature: AbstractInterfaceConfig.getModule()
focal_class.full_signature: public ModuleConfig getModule()
focal_class.identifier: getModule
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: ModuleConfig
focal_class.signature: ModuleConfig getModule()
focal_class.class_method_signature: AbstractInterfaceConfig.setModule(ModuleConfig module)
focal_class.full_signature: public void setModule(ModuleConfig module)
focal_class.identifier: setModule
focal_class.modifiers: public
focal_class.parameters: (ModuleConfig module)
focal_class.return: void
focal_class.signature: void setModule(ModuleConfig module)
focal_class.class_method_signature: AbstractInterfaceConfig.getRegistry()
focal_class.full_signature: public RegistryConfig getRegistry()
focal_class.identifier: getRegistry
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: RegistryConfig
focal_class.signature: RegistryConfig getRegistry()
focal_class.class_method_signature: AbstractInterfaceConfig.setRegistry(RegistryConfig registry)
focal_class.full_signature: public void setRegistry(RegistryConfig registry)
focal_class.identifier: setRegistry
focal_class.modifiers: public
focal_class.parameters: (RegistryConfig registry)
focal_class.return: void
focal_class.signature: void setRegistry(RegistryConfig registry)
focal_class.class_method_signature: AbstractInterfaceConfig.getRegistries()
focal_class.full_signature: public List<RegistryConfig> getRegistries()
focal_class.identifier: getRegistries
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: List<RegistryConfig>
focal_class.signature: List<RegistryConfig> getRegistries()
focal_class.class_method_signature: AbstractInterfaceConfig.setRegistries(List<? extends RegistryConfig> registries)
focal_class.full_signature: @SuppressWarnings({"unchecked"}) public void setRegistries(List<? extends RegistryConfig> registries)
focal_class.identifier: setRegistries
focal_class.modifiers: @SuppressWarnings({"unchecked"}) public
focal_class.parameters: (List<? extends RegistryConfig> registries)
focal_class.return: void
focal_class.signature: void setRegistries(List<? extends RegistryConfig> registries)
focal_class.class_method_signature: AbstractInterfaceConfig.getMonitor()
focal_class.full_signature: public MonitorConfig getMonitor()
focal_class.identifier: getMonitor
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: MonitorConfig
focal_class.signature: MonitorConfig getMonitor()
focal_class.class_method_signature: AbstractInterfaceConfig.setMonitor(String monitor)
focal_class.full_signature: public void setMonitor(String monitor)
focal_class.identifier: setMonitor
focal_class.modifiers: public
focal_class.parameters: (String monitor)
focal_class.return: void
focal_class.signature: void setMonitor(String monitor)
focal_class.class_method_signature: AbstractInterfaceConfig.setMonitor(MonitorConfig monitor)
focal_class.full_signature: public void setMonitor(MonitorConfig monitor)
focal_class.identifier: setMonitor
focal_class.modifiers: public
focal_class.parameters: (MonitorConfig monitor)
focal_class.return: void
focal_class.signature: void setMonitor(MonitorConfig monitor)
focal_class.class_method_signature: AbstractInterfaceConfig.getOwner()
focal_class.full_signature: public String getOwner()
focal_class.identifier: getOwner
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getOwner()
focal_class.class_method_signature: AbstractInterfaceConfig.setOwner(String owner)
focal_class.full_signature: public void setOwner(String owner)
focal_class.identifier: setOwner
focal_class.modifiers: public
focal_class.parameters: (String owner)
focal_class.return: void
focal_class.signature: void setOwner(String owner)
focal_class.class_method_signature: AbstractInterfaceConfig.getCallbacks()
focal_class.full_signature: public Integer getCallbacks()
focal_class.identifier: getCallbacks
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Integer
focal_class.signature: Integer getCallbacks()
focal_class.class_method_signature: AbstractInterfaceConfig.setCallbacks(Integer callbacks)
focal_class.full_signature: public void setCallbacks(Integer callbacks)
focal_class.identifier: setCallbacks
focal_class.modifiers: public
focal_class.parameters: (Integer callbacks)
focal_class.return: void
focal_class.signature: void setCallbacks(Integer callbacks)
focal_class.class_method_signature: AbstractInterfaceConfig.getOnconnect()
focal_class.full_signature: public String getOnconnect()
focal_class.identifier: getOnconnect
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getOnconnect()
focal_class.class_method_signature: AbstractInterfaceConfig.setOnconnect(String onconnect)
focal_class.full_signature: public void setOnconnect(String onconnect)
focal_class.identifier: setOnconnect
focal_class.modifiers: public
focal_class.parameters: (String onconnect)
focal_class.return: void
focal_class.signature: void setOnconnect(String onconnect)
focal_class.class_method_signature: AbstractInterfaceConfig.getOndisconnect()
focal_class.full_signature: public String getOndisconnect()
focal_class.identifier: getOndisconnect
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getOndisconnect()
focal_class.class_method_signature: AbstractInterfaceConfig.setOndisconnect(String ondisconnect)
focal_class.full_signature: public void setOndisconnect(String ondisconnect)
focal_class.identifier: setOndisconnect
focal_class.modifiers: public
focal_class.parameters: (String ondisconnect)
focal_class.return: void
focal_class.signature: void setOndisconnect(String ondisconnect)
focal_class.class_method_signature: AbstractInterfaceConfig.getScope()
focal_class.full_signature: public String getScope()
focal_class.identifier: getScope
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getScope()
focal_class.class_method_signature: AbstractInterfaceConfig.setScope(String scope)
focal_class.full_signature: public void setScope(String scope)
focal_class.identifier: setScope
focal_class.modifiers: public
focal_class.parameters: (String scope)
focal_class.return: void
focal_class.signature: void setScope(String scope)
focal_class.superclass: extends AbstractMethodConfig
focal_method.body: protected URL loadMonitor(URL registryURL) {
          if (monitor == null) {
              String monitorAddress = ConfigUtils.getProperty("dubbo.monitor.address");
              String monitorProtocol = ConfigUtils.getProperty("dubbo.monitor.protocol");
              if ((monitorAddress == null || monitorAddress.length() == 0) && (monitorProtocol == null || monitorProtocol.length() == 0)) {
                  return null;
              }
  
              monitor = new MonitorConfig();
              if (monitorAddress != null && monitorAddress.length() > 0) {
                  monitor.setAddress(monitorAddress);
              }
              if (monitorProtocol != null && monitorProtocol.length() > 0) {
                  monitor.setProtocol(monitorProtocol);
              }
          }
          appendProperties(monitor);
          Map<String, String> map = new HashMap<String, String>();
          map.put(Constants.INTERFACE_KEY, MonitorService.class.getName());
          map.put("dubbo", Version.getProtocolVersion());
          map.put(Constants.TIMESTAMP_KEY, String.valueOf(System.currentTimeMillis()));
          if (ConfigUtils.getPid() > 0) {
              map.put(Constants.PID_KEY, String.valueOf(ConfigUtils.getPid()));
          }
          //set ip
          String hostToRegistry = ConfigUtils.getSystemProperty(Constants.DUBBO_IP_TO_REGISTRY);
          if (hostToRegistry == null || hostToRegistry.length() == 0) {
              hostToRegistry = NetUtils.getLocalHost();
          } else if (isInvalidLocalHost(hostToRegistry)) {
              throw new IllegalArgumentException("Specified invalid registry ip from property:" + Constants.DUBBO_IP_TO_REGISTRY + ", value:" + hostToRegistry);
          }
          map.put(Constants.REGISTER_IP_KEY, hostToRegistry);
          appendParameters(map, monitor);
          appendParameters(map, application);
          String address = monitor.getAddress();
          String sysaddress = System.getProperty("dubbo.monitor.address");
          if (sysaddress != null && sysaddress.length() > 0) {
              address = sysaddress;
          }
          if (ConfigUtils.isNotEmpty(address)) {
              if (!map.containsKey(Constants.PROTOCOL_KEY)) {
                  if (ExtensionLoader.getExtensionLoader(MonitorFactory.class).hasExtension("logstat")) {
                      map.put(Constants.PROTOCOL_KEY, "logstat");
                  } else {
                      map.put(Constants.PROTOCOL_KEY, "dubbo");
                  }
              }
              return UrlUtils.parseURL(address, map);
          } else if (Constants.REGISTRY_PROTOCOL.equals(monitor.getProtocol()) && registryURL != null) {
              return registryURL.setProtocol("dubbo").addParameter(Constants.PROTOCOL_KEY, "registry").addParameterAndEncoded(Constants.REFER_KEY, StringUtils.toQueryString(map));
          }
          return null;
      }
focal_method.class_method_signature: AbstractInterfaceConfig.loadMonitor(URL registryURL)
focal_method.full_signature: protected URL loadMonitor(URL registryURL)
focal_method.identifier: loadMonitor
focal_method.invocations: getProperty getProperty length length length setAddress length setProtocol appendProperties put getName put getProtocolVersion put valueOf currentTimeMillis getPid put valueOf getPid getSystemProperty length getLocalHost isInvalidLocalHost put appendParameters appendParameters getAddress getProperty length isNotEmpty containsKey hasExtension getExtensionLoader put put parseURL equals getProtocol addParameterAndEncoded addParameter setProtocol toQueryString
focal_method.modifiers: protected
focal_method.parameters: (URL registryURL)
focal_method.return: URL
focal_method.signature: URL loadMonitor(URL registryURL)