test_class.declarator: jenkinsPlugin
test_class.original_string: JenkinsPlugin jenkinsPlugin;
test_class.type: JenkinsPlugin
test_class.var_name: jenkinsPlugin
test_class.declarator: properties
test_class.modifier: private
test_class.original_string: private Map<String, String> properties;
test_class.type: Map<String, String>
test_class.var_name: properties
test_class.file: component/core/src/test/java/fr/norad/visuwall/plugin/jenkins/JenkinsPluginTest.java
test_class.identifier: JenkinsPluginTest
test_case.body: @Test(expected = SoftwareNotFoundException.class)
      public void should_throw_exception_when_software_url_cant_be_reached() throws Exception {
          URL url = new URL("http://notfound");
          jenkinsPlugin.getSoftwareId(url, properties);
      }
test_case.class_method_signature: JenkinsPluginTest.should_throw_exception_when_software_url_cant_be_reached()
test_case.full_signature: @Test(expected = SoftwareNotFoundException.class) public void should_throw_exception_when_software_url_cant_be_reached()
test_case.identifier: should_throw_exception_when_software_url_cant_be_reached
test_case.invocations: getSoftwareId
test_case.modifiers: @Test(expected = SoftwareNotFoundException.class) public
test_case.parameters: ()
test_case.return: void
test_case.signature: void should_throw_exception_when_software_url_cant_be_reached()
focal_class.declarator: LOG = LoggerFactory.getLogger(JenkinsPlugin.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger LOG = LoggerFactory.getLogger(JenkinsPlugin.class);
focal_class.type: Logger
focal_class.var_name: LOG
focal_class.file: component/core/src/main/java/fr/norad/visuwall/plugin/jenkins/JenkinsPlugin.java
focal_class.identifier: JenkinsPlugin
focal_class.interfaces: implements VisuwallPlugin<JenkinsConnection>
focal_class.class_method_signature: JenkinsPlugin.getConnection(URL url, Map<String, String> properties)
focal_class.full_signature: @Override public JenkinsConnection getConnection(URL url, Map<String, String> properties)
focal_class.identifier: getConnection
focal_class.modifiers: @Override public
focal_class.parameters: (URL url, Map<String, String> properties)
focal_class.return: JenkinsConnection
focal_class.signature: JenkinsConnection getConnection(URL url, Map<String, String> properties)
focal_class.class_method_signature: JenkinsPlugin.getConnectionClass()
focal_class.full_signature: @Override public Class<JenkinsConnection> getConnectionClass()
focal_class.identifier: getConnectionClass
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Class<JenkinsConnection>
focal_class.signature: Class<JenkinsConnection> getConnectionClass()
focal_class.class_method_signature: JenkinsPlugin.getName()
focal_class.full_signature: @Override public String getName()
focal_class.identifier: getName
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getName()
focal_class.class_method_signature: JenkinsPlugin.getVersion()
focal_class.full_signature: @Override public float getVersion()
focal_class.identifier: getVersion
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: float
focal_class.signature: float getVersion()
focal_class.class_method_signature: JenkinsPlugin.getSoftwareId(URL url, Map<String, String> properties)
focal_class.full_signature: @Override public SoftwareId getSoftwareId(URL url, Map<String, String> properties)
focal_class.identifier: getSoftwareId
focal_class.modifiers: @Override public
focal_class.parameters: (URL url, Map<String, String> properties)
focal_class.return: SoftwareId
focal_class.signature: SoftwareId getSoftwareId(URL url, Map<String, String> properties)
focal_class.class_method_signature: JenkinsPlugin.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_class.class_method_signature: JenkinsPlugin.getPropertiesWithDefaultValue()
focal_class.full_signature: @Override public Map<String, String> getPropertiesWithDefaultValue()
focal_class.identifier: getPropertiesWithDefaultValue
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Map<String, String>
focal_class.signature: Map<String, String> getPropertiesWithDefaultValue()
focal_method.body: @Override
      public SoftwareId getSoftwareId(URL url, Map<String, String> properties) throws SoftwareNotFoundException {
          Preconditions.checkNotNull(url, "url is mandatory");
          try {
              url = new URL(url.toString() + "/api/");
              String content = Downloadables.getContent(url);
              JenkinsVersionPage jenkinsApiPage = new JenkinsVersionPage(content);
              if (jenkinsApiPage.isJenkinsApiPage()) {
                  return jenkinsApiPage.createSoftwareId();
              }
          } catch (IOException e) {
              if (LOG.isDebugEnabled()) {
                  LOG.debug("Can't get content of " + url, e);
              }
          }
          throw new SoftwareNotFoundException("Url " + url + " is not compatible with Jenkins");
      }
focal_method.class_method_signature: JenkinsPlugin.getSoftwareId(URL url, Map<String, String> properties)
focal_method.full_signature: @Override public SoftwareId getSoftwareId(URL url, Map<String, String> properties)
focal_method.identifier: getSoftwareId
focal_method.invocations: checkNotNull toString getContent isJenkinsApiPage createSoftwareId isDebugEnabled debug
focal_method.modifiers: @Override public
focal_method.parameters: (URL url, Map<String, String> properties)
focal_method.return: SoftwareId
focal_method.signature: SoftwareId getSoftwareId(URL url, Map<String, String> properties)