test_class.declarator: parser
test_class.modifier: private
test_class.original_string: private BuildPropertiesParserImpl parser;
test_class.type: BuildPropertiesParserImpl
test_class.var_name: parser
test_class.declarator: legacySupport
test_class.modifier: private
test_class.original_string: private LegacySupport legacySupport;
test_class.type: LegacySupport
test_class.var_name: legacySupport
test_class.declarator: mavenSession
test_class.modifier: private
test_class.original_string: private MavenSession mavenSession;
test_class.type: MavenSession
test_class.var_name: mavenSession
test_class.declarator: project1
test_class.modifier: private
test_class.original_string: private MavenProject project1;
test_class.type: MavenProject
test_class.var_name: project1
test_class.declarator: project2
test_class.modifier: private
test_class.original_string: private MavenProject project2;
test_class.type: MavenProject
test_class.var_name: project2
test_class.declarator: logger
test_class.modifier: private
test_class.original_string: private Logger logger;
test_class.type: Logger
test_class.var_name: logger
test_class.file: tycho-core/src/test/java/org/eclipse/tycho/core/osgitools/BuildPropertiesParserImplTest.java
test_class.identifier: BuildPropertiesParserImplTest
test_case.body: @Test
      public void testReadPropertiesFileWithExistingFile() throws IOException {
          File baseDir = TestUtil.getBasedir("buildproperties");
          Properties properties = BuildPropertiesParserImpl.readProperties(new File(baseDir, "build.properties"));
          Assert.assertEquals(3, properties.size());
      }
test_case.class_method_signature: BuildPropertiesParserImplTest.testReadPropertiesFileWithExistingFile()
test_case.full_signature: @Test public void testReadPropertiesFileWithExistingFile()
test_case.identifier: testReadPropertiesFileWithExistingFile
test_case.invocations: getBasedir readProperties assertEquals size
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testReadPropertiesFileWithExistingFile()
focal_class.declarator: legacySupport
focal_class.modifier: @Requirement
      private
focal_class.original_string: @Requirement
      private LegacySupport legacySupport;
focal_class.type: LegacySupport
focal_class.var_name: legacySupport
focal_class.declarator: logger
focal_class.modifier: @Requirement
      private
focal_class.original_string: @Requirement
      private Logger logger;
focal_class.type: Logger
focal_class.var_name: logger
focal_class.declarator: cache = new HashMap<>()
focal_class.modifier: private final
focal_class.original_string: private final Map<String, BuildPropertiesImpl> cache = new HashMap<>();
focal_class.type: Map<String, BuildPropertiesImpl>
focal_class.var_name: cache
focal_class.file: tycho-core/src/main/java/org/eclipse/tycho/core/osgitools/BuildPropertiesParserImpl.java
focal_class.identifier: BuildPropertiesParserImpl
focal_class.interfaces: implements BuildPropertiesParser, Disposable
focal_class.class_method_signature: BuildPropertiesParserImpl.BuildPropertiesParserImpl()
focal_class.full_signature: public  BuildPropertiesParserImpl()
focal_class.identifier: BuildPropertiesParserImpl
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  BuildPropertiesParserImpl()
focal_class.class_method_signature: BuildPropertiesParserImpl.BuildPropertiesParserImpl(LegacySupport legacySupport, Logger logger)
focal_class.full_signature: protected  BuildPropertiesParserImpl(LegacySupport legacySupport, Logger logger)
focal_class.identifier: BuildPropertiesParserImpl
focal_class.modifiers: protected
focal_class.parameters: (LegacySupport legacySupport, Logger logger)
focal_class.signature:  BuildPropertiesParserImpl(LegacySupport legacySupport, Logger logger)
focal_class.class_method_signature: BuildPropertiesParserImpl.parse(File baseDir)
focal_class.full_signature: @Override public BuildProperties parse(File baseDir)
focal_class.identifier: parse
focal_class.modifiers: @Override public
focal_class.parameters: (File baseDir)
focal_class.return: BuildProperties
focal_class.signature: BuildProperties parse(File baseDir)
focal_class.class_method_signature: BuildPropertiesParserImpl.dispose()
focal_class.full_signature: @Override public void dispose()
focal_class.identifier: dispose
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void dispose()
focal_class.class_method_signature: BuildPropertiesParserImpl.readProperties(File propsFile)
focal_class.full_signature: protected static Properties readProperties(File propsFile)
focal_class.identifier: readProperties
focal_class.modifiers: protected static
focal_class.parameters: (File propsFile)
focal_class.return: Properties
focal_class.signature: Properties readProperties(File propsFile)
focal_class.class_method_signature: BuildPropertiesParserImpl.interpolate(Properties properties, File baseDir)
focal_class.full_signature: protected void interpolate(Properties properties, File baseDir)
focal_class.identifier: interpolate
focal_class.modifiers: protected
focal_class.parameters: (Properties properties, File baseDir)
focal_class.return: void
focal_class.signature: void interpolate(Properties properties, File baseDir)
focal_method.body: protected static Properties readProperties(File propsFile) {
          Properties properties = new Properties();
          if (propsFile.canRead()) {
              InputStream is = null;
              try {
                  try {
                      is = new FileInputStream(propsFile);
                      properties.load(is);
                  } finally {
                      if (is != null) {
                          is.close();
                      }
                  }
              } catch (IOException e) {
                  // ignore
              }
          }
  
          return properties;
      }
focal_method.class_method_signature: BuildPropertiesParserImpl.readProperties(File propsFile)
focal_method.full_signature: protected static Properties readProperties(File propsFile)
focal_method.identifier: readProperties
focal_method.invocations: canRead load close
focal_method.modifiers: protected static
focal_method.parameters: (File propsFile)
focal_method.return: Properties
focal_method.signature: Properties readProperties(File propsFile)