test_class.declarator: REPOSITORY = new CuratorZookeeperRepository()
test_class.modifier: private static final
test_class.original_string: private static final CuratorZookeeperRepository REPOSITORY = new CuratorZookeeperRepository();
test_class.type: CuratorZookeeperRepository
test_class.var_name: REPOSITORY
test_class.declarator: serverLists
test_class.modifier: private static
test_class.original_string: private static String serverLists;
test_class.type: String
test_class.var_name: serverLists
test_class.file: shardingsphere-governance/shardingsphere-governance-repository/shardingsphere-governance-repository-provider/shardingsphere-governance-repository-zookeeper-curator/src/test/java/org/apache/shardingsphere/governance/repository/zookeeper/CuratorZookeeperRepositoryTest.java
test_class.identifier: CuratorZookeeperRepositoryTest
test_case.body: @Test
      public void assertGetWithNonExistentKey() {
          assertNull(REPOSITORY.get("/test/nonExistentKey"));
      }
test_case.class_method_signature: CuratorZookeeperRepositoryTest.assertGetWithNonExistentKey()
test_case.full_signature: @Test public void assertGetWithNonExistentKey()
test_case.identifier: assertGetWithNonExistentKey
test_case.invocations: assertNull get
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void assertGetWithNonExistentKey()
focal_class.declarator: caches = new HashMap<>()
focal_class.modifier: private final
focal_class.original_string: private final Map<String, CuratorCache> caches = new HashMap<>();
focal_class.type: Map<String, CuratorCache>
focal_class.var_name: caches
focal_class.declarator: client
focal_class.modifier: private
focal_class.original_string: private CuratorFramework client;
focal_class.type: CuratorFramework
focal_class.var_name: client
focal_class.declarator: props = new Properties()
focal_class.modifier: @Getter
      @Setter
      private
focal_class.original_string: @Getter
      @Setter
      private Properties props = new Properties();
focal_class.type: Properties
focal_class.var_name: props
focal_class.file: shardingsphere-governance/shardingsphere-governance-repository/shardingsphere-governance-repository-provider/shardingsphere-governance-repository-zookeeper-curator/src/main/java/org/apache/shardingsphere/governance/repository/zookeeper/CuratorZookeeperRepository.java
focal_class.identifier: CuratorZookeeperRepository
focal_class.interfaces: implements ConfigurationRepository, RegistryRepository
focal_class.class_method_signature: CuratorZookeeperRepository.init(final String name, final GovernanceCenterConfiguration config)
focal_class.full_signature: @Override public void init(final String name, final GovernanceCenterConfiguration config)
focal_class.identifier: init
focal_class.modifiers: @Override public
focal_class.parameters: (final String name, final GovernanceCenterConfiguration config)
focal_class.return: void
focal_class.signature: void init(final String name, final GovernanceCenterConfiguration config)
focal_class.class_method_signature: CuratorZookeeperRepository.buildCuratorClient(final String namespace, final GovernanceCenterConfiguration config, final ZookeeperProperties zookeeperProperties)
focal_class.full_signature: private CuratorFramework buildCuratorClient(final String namespace, final GovernanceCenterConfiguration config, final ZookeeperProperties zookeeperProperties)
focal_class.identifier: buildCuratorClient
focal_class.modifiers: private
focal_class.parameters: (final String namespace, final GovernanceCenterConfiguration config, final ZookeeperProperties zookeeperProperties)
focal_class.return: CuratorFramework
focal_class.signature: CuratorFramework buildCuratorClient(final String namespace, final GovernanceCenterConfiguration config, final ZookeeperProperties zookeeperProperties)
focal_class.class_method_signature: CuratorZookeeperRepository.initCuratorClient(final ZookeeperProperties zookeeperProperties)
focal_class.full_signature: private void initCuratorClient(final ZookeeperProperties zookeeperProperties)
focal_class.identifier: initCuratorClient
focal_class.modifiers: private
focal_class.parameters: (final ZookeeperProperties zookeeperProperties)
focal_class.return: void
focal_class.signature: void initCuratorClient(final ZookeeperProperties zookeeperProperties)
focal_class.class_method_signature: CuratorZookeeperRepository.get(final String key)
focal_class.full_signature: @Override public String get(final String key)
focal_class.identifier: get
focal_class.modifiers: @Override public
focal_class.parameters: (final String key)
focal_class.return: String
focal_class.signature: String get(final String key)
focal_class.class_method_signature: CuratorZookeeperRepository.findTreeCache(final String key)
focal_class.full_signature: private CuratorCache findTreeCache(final String key)
focal_class.identifier: findTreeCache
focal_class.modifiers: private
focal_class.parameters: (final String key)
focal_class.return: CuratorCache
focal_class.signature: CuratorCache findTreeCache(final String key)
focal_class.class_method_signature: CuratorZookeeperRepository.getChildrenKeys(final String key)
focal_class.full_signature: @Override public List<String> getChildrenKeys(final String key)
focal_class.identifier: getChildrenKeys
focal_class.modifiers: @Override public
focal_class.parameters: (final String key)
focal_class.return: List<String>
focal_class.signature: List<String> getChildrenKeys(final String key)
focal_class.class_method_signature: CuratorZookeeperRepository.persist(final String key, final String value)
focal_class.full_signature: @Override public void persist(final String key, final String value)
focal_class.identifier: persist
focal_class.modifiers: @Override public
focal_class.parameters: (final String key, final String value)
focal_class.return: void
focal_class.signature: void persist(final String key, final String value)
focal_class.class_method_signature: CuratorZookeeperRepository.update(final String key, final String value)
focal_class.full_signature: private void update(final String key, final String value)
focal_class.identifier: update
focal_class.modifiers: private
focal_class.parameters: (final String key, final String value)
focal_class.return: void
focal_class.signature: void update(final String key, final String value)
focal_class.class_method_signature: CuratorZookeeperRepository.getDirectly(final String key)
focal_class.full_signature: private String getDirectly(final String key)
focal_class.identifier: getDirectly
focal_class.modifiers: private
focal_class.parameters: (final String key)
focal_class.return: String
focal_class.signature: String getDirectly(final String key)
focal_class.class_method_signature: CuratorZookeeperRepository.isExisted(final String key)
focal_class.full_signature: private boolean isExisted(final String key)
focal_class.identifier: isExisted
focal_class.modifiers: private
focal_class.parameters: (final String key)
focal_class.return: boolean
focal_class.signature: boolean isExisted(final String key)
focal_class.class_method_signature: CuratorZookeeperRepository.persistEphemeral(final String key, final String value)
focal_class.full_signature: @Override public void persistEphemeral(final String key, final String value)
focal_class.identifier: persistEphemeral
focal_class.modifiers: @Override public
focal_class.parameters: (final String key, final String value)
focal_class.return: void
focal_class.signature: void persistEphemeral(final String key, final String value)
focal_class.class_method_signature: CuratorZookeeperRepository.delete(final String key)
focal_class.full_signature: @Override public void delete(final String key)
focal_class.identifier: delete
focal_class.modifiers: @Override public
focal_class.parameters: (final String key)
focal_class.return: void
focal_class.signature: void delete(final String key)
focal_class.class_method_signature: CuratorZookeeperRepository.watch(final String key, final DataChangedEventListener listener)
focal_class.full_signature: @Override public void watch(final String key, final DataChangedEventListener listener)
focal_class.identifier: watch
focal_class.modifiers: @Override public
focal_class.parameters: (final String key, final DataChangedEventListener listener)
focal_class.return: void
focal_class.signature: void watch(final String key, final DataChangedEventListener listener)
focal_class.class_method_signature: CuratorZookeeperRepository.addCacheData(final String cachePath)
focal_class.full_signature: private void addCacheData(final String cachePath)
focal_class.identifier: addCacheData
focal_class.modifiers: private
focal_class.parameters: (final String cachePath)
focal_class.return: void
focal_class.signature: void addCacheData(final String cachePath)
focal_class.class_method_signature: CuratorZookeeperRepository.getChangedType(final CuratorCacheListener.Type type)
focal_class.full_signature: private ChangedType getChangedType(final CuratorCacheListener.Type type)
focal_class.identifier: getChangedType
focal_class.modifiers: private
focal_class.parameters: (final CuratorCacheListener.Type type)
focal_class.return: ChangedType
focal_class.signature: ChangedType getChangedType(final CuratorCacheListener.Type type)
focal_class.class_method_signature: CuratorZookeeperRepository.close()
focal_class.full_signature: @Override public void close()
focal_class.identifier: close
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void close()
focal_class.class_method_signature: CuratorZookeeperRepository.waitForCacheClose()
focal_class.full_signature: private void waitForCacheClose()
focal_class.identifier: waitForCacheClose
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void waitForCacheClose()
focal_class.class_method_signature: CuratorZookeeperRepository.getType()
focal_class.full_signature: @Override public String getType()
focal_class.identifier: getType
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getType()
focal_method.body: @Override
      public String get(final String key) {
          CuratorCache cache = findTreeCache(key);
          if (null == cache) {
              return getDirectly(key);
          }
          Optional<ChildData> resultInCache = cache.get(key);
          if (resultInCache.isPresent()) {
              return null == resultInCache.get().getData() ? null : new String(resultInCache.get().getData(), Charsets.UTF_8);
          }
          return getDirectly(key);
      }
focal_method.class_method_signature: CuratorZookeeperRepository.get(final String key)
focal_method.full_signature: @Override public String get(final String key)
focal_method.identifier: get
focal_method.invocations: findTreeCache getDirectly get isPresent getData get getData get getDirectly
focal_method.modifiers: @Override public
focal_method.parameters: (final String key)
focal_method.return: String
focal_method.signature: String get(final String key)