congrats Icon
New! Tabnine Pro 14-day free trial
Start a free trial
Tabnine Logo
ThriftFieldMetadata.getExtraction
Code IndexAdd Tabnine to your IDE (free)

How to use
getExtraction
method
in
com.facebook.swift.codec.metadata.ThriftFieldMetadata

Best Java code snippets using com.facebook.swift.codec.metadata.ThriftFieldMetadata.getExtraction (Showing top 12 results out of 315)

origin: com.facebook.swift/swift-codec

  protected Object getFieldValue(Object instance, ThriftFieldMetadata field)
    throws Exception
  {
    try {
      if (field.getExtraction().isPresent()) {
        ThriftExtraction extraction = field.getExtraction().get();
        if (extraction instanceof ThriftFieldExtractor) {
          ThriftFieldExtractor thriftFieldExtractor = (ThriftFieldExtractor) extraction;
          return thriftFieldExtractor.getField().get(instance);
        }
        else if (extraction instanceof ThriftMethodExtractor) {
          ThriftMethodExtractor thriftMethodExtractor = (ThriftMethodExtractor) extraction;
          return thriftMethodExtractor.getMethod().invoke(instance);
        }
        throw new IllegalAccessException("Unsupported field extractor type " + extraction.getClass().getName());
      }
      throw new IllegalAccessException("No extraction present for " + field);
    }
    catch (InvocationTargetException e) {
      if (e.getTargetException() != null) {
        Throwables.propagateIfInstanceOf(e.getTargetException(), Exception.class);
      }
      throw e;
    }
  }
}
origin: com.gitee.l0km/common-thrifty

if (field.getExtraction().isPresent()) {
  ThriftExtraction extraction = field.getExtraction().get();
  if (extraction instanceof ThriftFieldExtractor) {
    ThriftFieldExtractor thriftFieldExtractor = (ThriftFieldExtractor) extraction;
origin: com.gitee.l0km/common-thrift

if (field.getExtraction().isPresent()) {
  ThriftExtraction extraction = field.getExtraction().get();
  if (extraction instanceof ThriftFieldExtractor) {
    ThriftFieldExtractor thriftFieldExtractor = (ThriftFieldExtractor) extraction;
origin: com.facebook.swift/swift-codec

private void verifyMethodExtraction(ThriftStructMetadata metadata, int id, String name, String methodName)
{
  assertTrue(metadata.getField(id).getExtraction().isPresent());
  ThriftExtraction extraction = metadata.getField(id).getExtraction().get();
  assertThat(extraction).isInstanceOf(ThriftMethodExtractor.class);
  ThriftMethodExtractor methodExtractor = (ThriftMethodExtractor) extraction;
  assertEquals(methodExtractor.getMethod().getName(), methodName);
  assertEquals(methodExtractor.getName(), name);
}
origin: com.facebook.swift/swift-codec

private void verifyFieldExtraction(ThriftStructMetadata metadata, int id, String name)
{
  assertTrue(metadata.getField(id).getExtraction().isPresent());
  ThriftExtraction extraction = metadata.getField(id).getExtraction().get();
  assertThat(extraction).isInstanceOf(ThriftFieldExtractor.class);
  ThriftFieldExtractor fieldExtractor = (ThriftFieldExtractor) extraction;
  assertEquals(fieldExtractor.getField().getName(), name);
}
origin: com.facebook.swift/swift-codec

private void verifyFieldExtraction(ThriftStructMetadata metadata, int id, String name)
{
  assertTrue(metadata.getField(id).getExtraction().isPresent());
  ThriftExtraction extraction = metadata.getField(id).getExtraction().get();
  assertThat(extraction).isInstanceOf(ThriftFieldExtractor.class);
  ThriftFieldExtractor fieldExtractor = (ThriftFieldExtractor) extraction;
  assertEquals(fieldExtractor.getField().getName(), name);
}
origin: com.facebook.swift/swift-codec

private void verifyMethodExtraction(ThriftStructMetadata metadata, int id, String name, String methodName)
{
  assertTrue(metadata.getField(id).getExtraction().isPresent());
  ThriftExtraction extraction = metadata.getField(id).getExtraction().get();
  assertThat(extraction).isInstanceOf(ThriftMethodExtractor.class);
  ThriftMethodExtractor methodExtractor = (ThriftMethodExtractor) extraction;
  assertEquals(methodExtractor.getMethod().getName(), methodName);
  assertEquals(methodExtractor.getName(), name);
}
origin: com.gitee.l0km/common-thrifty

DecoratorThriftFieldMetadata(ThriftFieldMetadata input){
  super(
      input.getId(),
      input.getRequiredness(),
      input.getThriftType(),
      input.getName(),
      input.getType(),
      input.getInjections(),
      input.getConstructorInjection(),
      input.getMethodInjection(),
      input.getExtraction(),
      input.getCoercion());
  // 获取field的类型
  List<ThriftInjection> injections = getInjections();
  checkState(injections.size()>0,"invalid size of injections");
  ThriftInjection injection = injections.get(0);		
  if(injection instanceof ThriftParameterInjection){
    javaType = ((ThriftParameterInjection)injection).getJavaType();
  }else if(injection instanceof ThriftFieldInjection){
    javaType = ((ThriftFieldInjection)injection).getField().getType();
  }else{
    javaType = null;
    // 对于不支持的数据类型无法获取field类型,输出警告
    logger.warning(
        String.format("UNSUPPORED TYPE %s,can't get Java Type. "
            + "(不识别的ThriftInjection实例类型,无法实现requiredness转义)",
        null == injection? null : injection.getClass().getName()));
  }
}
/** 重载方法,实现 requiredness 转义 */
origin: com.gitee.l0km/common-thrift

public DecoratorThriftFieldMetadata(ThriftFieldMetadata input){
  super(
      input.getId(),
      input.getRequiredness(),
      input.getThriftType(),
      input.getName(),
      input.getType(),
      input.getInjections(),
      input.getConstructorInjection(),
      input.getMethodInjection(),
      input.getExtraction(),
      input.getCoercion());
  // 获取field的类型
  List<ThriftInjection> injections = getInjections();
  checkState(injections.size()>0,"invalid size of injections");
  ThriftInjection injection = injections.get(0);		
  if(injection instanceof ThriftParameterInjection){
    javaType = ((ThriftParameterInjection)injection).getJavaType();
  }else if(injection instanceof ThriftFieldInjection){
    javaType = ((ThriftFieldInjection)injection).getField().getType();
  }else{
    javaType = null;
    // 对于不支持的数据类型无法获取field类型,输出警告
    logger.warning(
        String.format("UNSUPPORED TYPE %s,can't get Java Type. "
            + "(不识别的ThriftInjection实例类型,无法实现requiredness转义)",
        null == injection? null : injection.getClass().getName()));
  }
}
/** 重载方法,实现 requiredness 转义 */
origin: com.facebook.swift/swift-codec

  private <T> void verifyField(ThriftStructMetadata metadata, int id, String name)
  {
    ThriftFieldMetadata messageField = metadata.getField(id);
    assertNotNull(messageField, "field '" + name + "' is null");
    assertEquals(messageField.getId(), id);
    assertEquals(messageField.getName(), name);
    assertFalse(messageField.isReadOnly());
    assertFalse(messageField.isWriteOnly());

    assertTrue(messageField.getExtraction().isPresent());
    ThriftExtraction extraction = messageField.getExtraction().get();
    assertEquals(extraction.getId(), id);
    assertEquals(extraction.getName(), name);

    assertNotNull(messageField.getInjections());
    assertEquals(messageField.getInjections().size(), 1);
    ThriftInjection injection = messageField.getInjections().get(0);
    assertEquals(injection.getId(), id);
    assertEquals(injection.getName(), name);
  }
}
origin: com.facebook.swift/swift-codec

private void loadFieldValue(MethodDefinition write, ThriftFieldMetadata field)
{
  write.loadVariable("struct");
  if (field.getExtraction().isPresent()) {
    ThriftExtraction extraction = field.getExtraction().get();
    if (extraction instanceof ThriftFieldExtractor) {
      ThriftFieldExtractor fieldExtractor = (ThriftFieldExtractor) extraction;
      write.getField(fieldExtractor.getField());
      if (fieldExtractor.isGeneric()) {
       write.checkCast(type(fieldExtractor.getType()));
      }
    }
    else if (extraction instanceof ThriftMethodExtractor) {
      ThriftMethodExtractor methodExtractor = (ThriftMethodExtractor) extraction;
      write.invokeVirtual(methodExtractor.getMethod());
      if (methodExtractor.isGeneric()) {
       write.checkCast(type(methodExtractor.getType()));
      }
    }
  }
}
origin: com.facebook.swift/swift-codec

  private <T> void verifyField(ThriftStructMetadata metadata, int id, String name)
  {
    ThriftFieldMetadata metadataField = metadata.getField(id);
    assertNotNull(metadataField, "metadataField is null");
    assertEquals(metadataField.getId(), id);
    assertEquals(metadataField.getName(), name);
    assertFalse(metadataField.isReadOnly());
    assertFalse(metadataField.isWriteOnly());

    assertTrue(metadataField.getExtraction().isPresent());
    ThriftExtraction extraction = metadataField.getExtraction().get();
    assertEquals(extraction.getId(), id);
    assertEquals(extraction.getName(), name);

    assertNotNull(metadataField.getInjections());
    assertEquals(metadataField.getInjections().size(), 1);
    ThriftInjection injection = metadataField.getInjections().get(0);
    assertEquals(injection.getId(), id);
    assertEquals(injection.getName(), name);
  }
}
com.facebook.swift.codec.metadataThriftFieldMetadatagetExtraction

Popular methods of ThriftFieldMetadata

  • getId
  • getName
  • getRequiredness
  • getThriftType
  • getConstructorInjection
  • getInjections
  • getType
  • isWriteOnly
  • getCoercion
  • getMethodInjection
  • <init>
  • isReadOnly
  • <init>,
  • isReadOnly,
  • isTypePredicate,
  • getIdGetter,
  • getIdlAnnotations,
  • isRecursiveReference,
  • isTypeReferenceRecursive

Popular in Java

  • Reading from database using SQL prepared statement
  • putExtra (Intent)
  • getApplicationContext (Context)
  • addToBackStack (FragmentTransaction)
  • Window (java.awt)
    A Window object is a top-level window with no borders and no menubar. The default layout for a windo
  • FileInputStream (java.io)
    An input stream that reads bytes from a file. File file = ...finally if (in != null) in.clos
  • ByteBuffer (java.nio)
    A buffer for bytes. A byte buffer can be created in either one of the following ways: * #allocate
  • SQLException (java.sql)
    An exception that indicates a failed JDBC operation. It provides the following information about pro
  • CountDownLatch (java.util.concurrent)
    A synchronization aid that allows one or more threads to wait until a set of operations being perfor
  • Manifest (java.util.jar)
    The Manifest class is used to obtain attribute information for a JarFile and its entries.
  • Sublime Text for Python
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimAtomGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyStudentsTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now