test_class.file: app/src/test/java/org/jak_linux/dns66/db/RuleDatabaseTest.java
test_class.identifier: RuleDatabaseTest
test_case.body: @Test
      public void testGetInstance() throws Exception {
          RuleDatabase instance = RuleDatabase.getInstance();
  
          assertNotNull(instance);
          assertTrue(instance.isEmpty());
          assertFalse(instance.isBlocked("example.com"));
      }
test_case.class_method_signature: RuleDatabaseTest.testGetInstance()
test_case.full_signature: @Test public void testGetInstance()
test_case.identifier: testGetInstance
test_case.invocations: getInstance assertNotNull assertTrue isEmpty assertFalse isBlocked
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testGetInstance()
focal_class.declarator: TAG = "RuleDatabase"
focal_class.modifier: private static final
focal_class.original_string: private static final String TAG = "RuleDatabase";
focal_class.type: String
focal_class.var_name: TAG
focal_class.declarator: instance = new RuleDatabase()
focal_class.modifier: private static final
focal_class.original_string: private static final RuleDatabase instance = new RuleDatabase();
focal_class.type: RuleDatabase
focal_class.var_name: instance
focal_class.declarator: blockedHosts = new AtomicReference<>(new HashSet<String>())
focal_class.modifier: final
focal_class.original_string: final AtomicReference<HashSet<String>> blockedHosts = new AtomicReference<>(new HashSet<String>());
focal_class.type: AtomicReference<HashSet<String>>
focal_class.var_name: blockedHosts
focal_class.declarator: nextBlockedHosts = null
focal_class.original_string: HashSet<String> nextBlockedHosts = null;
focal_class.type: HashSet<String>
focal_class.var_name: nextBlockedHosts
focal_class.file: app/src/main/java/org/jak_linux/dns66/db/RuleDatabase.java
focal_class.identifier: RuleDatabase
focal_class.class_method_signature: RuleDatabase.RuleDatabase()
focal_class.full_signature:   RuleDatabase()
focal_class.identifier: RuleDatabase
focal_class.parameters: ()
focal_class.signature:  RuleDatabase()
focal_class.class_method_signature: RuleDatabase.getInstance()
focal_class.full_signature: public static RuleDatabase getInstance()
focal_class.identifier: getInstance
focal_class.modifiers: public static
focal_class.parameters: ()
focal_class.return: RuleDatabase
focal_class.signature: RuleDatabase getInstance()
focal_class.class_method_signature: RuleDatabase.parseLine(String line)
focal_class.full_signature: @Nullable static String parseLine(String line)
focal_class.identifier: parseLine
focal_class.modifiers: @Nullable static
focal_class.parameters: (String line)
focal_class.return: String
focal_class.signature: String parseLine(String line)
focal_class.class_method_signature: RuleDatabase.isBlocked(String host)
focal_class.full_signature: public boolean isBlocked(String host)
focal_class.identifier: isBlocked
focal_class.modifiers: public
focal_class.parameters: (String host)
focal_class.return: boolean
focal_class.signature: boolean isBlocked(String host)
focal_class.class_method_signature: RuleDatabase.isEmpty()
focal_class.full_signature:  boolean isEmpty()
focal_class.identifier: isEmpty
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isEmpty()
focal_class.class_method_signature: RuleDatabase.initialize(Context context)
focal_class.full_signature: public synchronized void initialize(Context context)
focal_class.identifier: initialize
focal_class.modifiers: public synchronized
focal_class.parameters: (Context context)
focal_class.return: void
focal_class.signature: void initialize(Context context)
focal_class.class_method_signature: RuleDatabase.loadItem(Context context, Configuration.Item item)
focal_class.full_signature: private void loadItem(Context context, Configuration.Item item)
focal_class.identifier: loadItem
focal_class.modifiers: private
focal_class.parameters: (Context context, Configuration.Item item)
focal_class.return: void
focal_class.signature: void loadItem(Context context, Configuration.Item item)
focal_class.class_method_signature: RuleDatabase.addHost(Configuration.Item item, String host)
focal_class.full_signature: private void addHost(Configuration.Item item, String host)
focal_class.identifier: addHost
focal_class.modifiers: private
focal_class.parameters: (Configuration.Item item, String host)
focal_class.return: void
focal_class.signature: void addHost(Configuration.Item item, String host)
focal_class.class_method_signature: RuleDatabase.loadReader(Configuration.Item item, Reader reader)
focal_class.full_signature:  boolean loadReader(Configuration.Item item, Reader reader)
focal_class.identifier: loadReader
focal_class.parameters: (Configuration.Item item, Reader reader)
focal_class.return: boolean
focal_class.signature: boolean loadReader(Configuration.Item item, Reader reader)
focal_method.body: public static RuleDatabase getInstance() {
          return instance;
      }
focal_method.class_method_signature: RuleDatabase.getInstance()
focal_method.full_signature: public static RuleDatabase getInstance()
focal_method.identifier: getInstance
focal_method.modifiers: public static
focal_method.parameters: ()
focal_method.return: RuleDatabase
focal_method.signature: RuleDatabase getInstance()