當前位置: 首頁>>代碼示例>>Java>>正文


Java ReflectionUtils.getDeclaredFieldsIncludingInherited方法代碼示例

本文整理匯總了Java中org.apache.hadoop.util.ReflectionUtils.getDeclaredFieldsIncludingInherited方法的典型用法代碼示例。如果您正苦於以下問題:Java ReflectionUtils.getDeclaredFieldsIncludingInherited方法的具體用法?Java ReflectionUtils.getDeclaredFieldsIncludingInherited怎麽用?Java ReflectionUtils.getDeclaredFieldsIncludingInherited使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.apache.hadoop.util.ReflectionUtils的用法示例。


在下文中一共展示了ReflectionUtils.getDeclaredFieldsIncludingInherited方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: MetricsSourceBuilder

import org.apache.hadoop.util.ReflectionUtils; //導入方法依賴的package包/類
MetricsSourceBuilder(Object source, MutableMetricsFactory factory) {
  this.source = checkNotNull(source, "source");
  this.factory = checkNotNull(factory, "mutable metrics factory");
  Class<?> cls = source.getClass();
  registry = initRegistry(source);

  for (Field field : ReflectionUtils.getDeclaredFieldsIncludingInherited(cls)) {
    add(source, field);
  }
  for (Method method : ReflectionUtils.getDeclaredMethodsIncludingInherited(cls)) {
    add(source, method);
  }
}
 
開發者ID:nucypher,項目名稱:hadoop-oss,代碼行數:14,代碼來源:MetricsSourceBuilder.java

示例2: initRegistry

import org.apache.hadoop.util.ReflectionUtils; //導入方法依賴的package包/類
private MetricsRegistry initRegistry(Object source) {
  Class<?> cls = source.getClass();
  MetricsRegistry r = null;
  // Get the registry if it already exists.
  for (Field field : ReflectionUtils.getDeclaredFieldsIncludingInherited(cls)) {
    if (field.getType() != MetricsRegistry.class) continue;
    try {
      field.setAccessible(true);
      r = (MetricsRegistry) field.get(source);
      hasRegistry = r != null;
      break;
    } catch (Exception e) {
      LOG.warn("Error accessing field "+ field, e);
      continue;
    }
  }
  // Create a new registry according to annotation
  for (Annotation annotation : cls.getAnnotations()) {
    if (annotation instanceof Metrics) {
      Metrics ma = (Metrics) annotation;
      info = factory.getInfo(cls, ma);
      if (r == null) {
        r = new MetricsRegistry(info);
      }
      r.setContext(ma.context());
    }
  }
  if (r == null) return new MetricsRegistry(cls.getSimpleName());
  return r;
}
 
開發者ID:nucypher,項目名稱:hadoop-oss,代碼行數:31,代碼來源:MetricsSourceBuilder.java

示例3: initRegistry

import org.apache.hadoop.util.ReflectionUtils; //導入方法依賴的package包/類
private MetricsRegistry initRegistry(Object source) {
  Class<?> cls = source.getClass();
  MetricsRegistry r = null;
  // Get the registry if it already exists.
  for (Field field : ReflectionUtils.getDeclaredFieldsIncludingInherited(cls)) {
    if (field.getType() != MetricsRegistry.class) continue;
    try {
      field.setAccessible(true);
      r = (MetricsRegistry) field.get(source);
      hasRegistry = r != null;
      break;
    }
    catch (Exception e) {
      LOG.warn("Error accessing field "+ field, e);
      continue;
    }
  }
  // Create a new registry according to annotation
  for (Annotation annotation : cls.getAnnotations()) {
    if (annotation instanceof Metrics) {
      Metrics ma = (Metrics) annotation;
      info = factory.getInfo(cls, ma);
      if (r == null) {
        r = new MetricsRegistry(info);
      }
      r.setContext(ma.context());
    }
  }
  if (r == null) return new MetricsRegistry(cls.getSimpleName());
  return r;
}
 
開發者ID:naver,項目名稱:hadoop,代碼行數:32,代碼來源:MetricsSourceBuilder.java


注:本文中的org.apache.hadoop.util.ReflectionUtils.getDeclaredFieldsIncludingInherited方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。