当前位置: 首页>>代码示例>>Java>>正文


Java TypeConverterBinding类代码示例

本文整理汇总了Java中com.google.inject.spi.TypeConverterBinding的典型用法代码示例。如果您正苦于以下问题:Java TypeConverterBinding类的具体用法?Java TypeConverterBinding怎么用?Java TypeConverterBinding使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


TypeConverterBinding类属于com.google.inject.spi包,在下文中一共展示了TypeConverterBinding类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getConverter

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
@Override
public TypeConverterBinding getConverter(
    String stringValue, TypeLiteral<?> type, Errors errors, Object source) {
  TypeConverterBinding matchingConverter = null;
  for (State s = this; s != State.NONE; s = s.parent()) {
    for (TypeConverterBinding converter : s.getConvertersThisLevel()) {
      if (converter.getTypeMatcher().matches(type)) {
        if (matchingConverter != null) {
          errors.ambiguousTypeConversion(stringValue, source, type, matchingConverter, converter);
        }
        matchingConverter = converter;
      }
    }
  }
  return matchingConverter;
}
 
开发者ID:google,项目名称:guice,代码行数:17,代码来源:InheritingState.java

示例2: ConvertedConstantBindingImpl

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
ConvertedConstantBindingImpl(
    InjectorImpl injector,
    Key<T> key,
    T value,
    Binding<String> originalBinding,
    TypeConverterBinding typeConverterBinding) {
  super(
      injector,
      key,
      originalBinding.getSource(),
      new ConstantFactory<T>(Initializables.of(value)),
      Scoping.UNSCOPED);
  this.value = value;
  provider = Providers.of(value);
  this.originalBinding = originalBinding;
  this.typeConverterBinding = typeConverterBinding;
}
 
开发者ID:google,项目名称:guice,代码行数:18,代码来源:InjectorImpl.java

示例3: testCustomTypeConversion

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
public void testCustomTypeConversion() throws CreationException {
  final Date result = new Date();

  Injector injector =
      Guice.createInjector(
          new AbstractModule() {
            @Override
            protected void configure() {
              convertToTypes(
                  Matchers.only(TypeLiteral.get(Date.class)), mockTypeConverter(result));
              bindConstant().annotatedWith(NumericValue.class).to("Today");
              bind(DateHolder.class);
            }
          });

  assertSame(result, injector.getInstance(DateHolder.class).date);

  Binding<Date> binding = injector.getBinding(Key.get(Date.class, NumericValue.class));
  assertTrue(binding instanceof ConvertedConstantBinding<?>);

  TypeConverterBinding converterBinding =
      ((ConvertedConstantBinding<?>) binding).getTypeConverterBinding();
  assertEquals("CustomConverter", converterBinding.getTypeConverter().toString());

  assertTrue(injector.getTypeConverterBindings().contains(converterBinding));
}
 
开发者ID:google,项目名称:guice,代码行数:27,代码来源:TypeConversionTest.java

示例4: testCustomTypeConversion

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
public void testCustomTypeConversion() throws CreationException {
  final Date result = new Date();

  Injector injector = Guice.createInjector(new AbstractModule() {
    @Override protected void configure() {
      convertToTypes(Matchers.only(TypeLiteral.get(Date.class)) , mockTypeConverter(result));
      bindConstant().annotatedWith(NumericValue.class).to("Today");
      bind(DateHolder.class);
    }
  });

  assertSame(result, injector.getInstance(DateHolder.class).date);

  Binding<Date> binding = injector.getBinding(Key.get(Date.class, NumericValue.class));
  assertTrue(binding instanceof ConvertedConstantBinding<?>);

  TypeConverterBinding converterBinding = ((ConvertedConstantBinding<?>)binding).getTypeConverterBinding();
  assertEquals("CustomConverter", converterBinding.getTypeConverter().toString());

  assertTrue(injector.getTypeConverterBindings().contains(converterBinding));
}
 
开发者ID:cgruber,项目名称:guice-old,代码行数:22,代码来源:TypeConversionTest.java

示例5: testCustomTypeConversion

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
public void testCustomTypeConversion() throws CreationException {
  final Date result = new Date();

  Injector injector = Guice.createInjector(new AbstractModule() {
    protected void configure() {
      convertToTypes(Matchers.only(TypeLiteral.get(Date.class)) , mockTypeConverter(result));
      bindConstant().annotatedWith(NumericValue.class).to("Today");
      bind(DateHolder.class);
    }
  });

  assertSame(result, injector.getInstance(DateHolder.class).date);

  Binding<Date> binding = injector.getBinding(Key.get(Date.class, NumericValue.class));
  assertTrue(binding instanceof ConvertedConstantBinding<?>);

  TypeConverterBinding converterBinding = ((ConvertedConstantBinding<?>)binding).getTypeConverterBinding();
  assertEquals("CustomConverter", converterBinding.getTypeConverter().toString());

  assertTrue(injector.getTypeConverterBindings().contains(converterBinding));
}
 
开发者ID:utopiazh,项目名称:google-guice,代码行数:22,代码来源:TypeConversionTest.java

示例6: visit

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
@Override
public Boolean visit(TypeConverterBinding command) {
  injector.state.addConverter(
      new TypeConverterBinding(
          command.getSource(), command.getTypeMatcher(), command.getTypeConverter()));
  return true;
}
 
开发者ID:google,项目名称:guice,代码行数:8,代码来源:TypeConverterBindingProcessor.java

示例7: converterReturnedNull

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
public Errors converterReturnedNull(
    String stringValue,
    Object source,
    TypeLiteral<?> type,
    TypeConverterBinding typeConverterBinding) {
  return addMessage(
      "Received null converting '%s' (bound at %s) to %s%n using %s.",
      stringValue, convert(source), type, typeConverterBinding);
}
 
开发者ID:google,项目名称:guice,代码行数:10,代码来源:Errors.java

示例8: conversionTypeError

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
public Errors conversionTypeError(
    String stringValue,
    Object source,
    TypeLiteral<?> type,
    TypeConverterBinding typeConverterBinding,
    Object converted) {
  return addMessage(
      "Type mismatch converting '%s' (bound at %s) to %s%n"
          + " using %s.%n"
          + " Converter returned %s.",
      stringValue, convert(source), type, typeConverterBinding, converted);
}
 
开发者ID:google,项目名称:guice,代码行数:13,代码来源:Errors.java

示例9: conversionError

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
public Errors conversionError(
    String stringValue,
    Object source,
    TypeLiteral<?> type,
    TypeConverterBinding typeConverterBinding,
    RuntimeException cause) {
  return errorInUserCode(
      cause,
      "Error converting '%s' (bound at %s) to %s%n using %s.%n Reason: %s",
      stringValue,
      convert(source),
      type,
      typeConverterBinding,
      cause);
}
 
开发者ID:google,项目名称:guice,代码行数:16,代码来源:Errors.java

示例10: ambiguousTypeConversion

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
public Errors ambiguousTypeConversion(
    String stringValue,
    Object source,
    TypeLiteral<?> type,
    TypeConverterBinding a,
    TypeConverterBinding b) {
  return addMessage(
      "Multiple converters can convert '%s' (bound at %s) to %s:%n"
          + " %s and%n"
          + " %s.%n"
          + " Please adjust your type converter configuration to avoid overlapping matches.",
      stringValue, convert(source), type, a, b);
}
 
开发者ID:google,项目名称:guice,代码行数:14,代码来源:Errors.java

示例11: getConverter

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
public TypeConverterBinding getConverter(
    String stringValue, TypeLiteral<?> type, Errors errors, Object source) {
  TypeConverterBinding matchingConverter = null;
  for (State s = this; s != State.NONE; s = s.parent()) {
    for (TypeConverterBinding converter : s.getConvertersThisLevel()) {
      if (converter.getTypeMatcher().matches(type)) {
        if (matchingConverter != null) {
          errors.ambiguousTypeConversion(stringValue, source, type, matchingConverter, converter);
        }
        matchingConverter = converter;
      }
    }
  }
  return matchingConverter;
}
 
开发者ID:cgruber,项目名称:guice-old,代码行数:16,代码来源:InheritingState.java

示例12: ConvertedConstantBindingImpl

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
ConvertedConstantBindingImpl(
    InjectorImpl injector, Key<T> key, T value, Binding<String> originalBinding,
    TypeConverterBinding typeConverterBinding) {
  super(injector, key, originalBinding.getSource(),
      new ConstantFactory<T>(Initializables.of(value)), Scoping.UNSCOPED);
  this.value = value;
  provider = Providers.of(value);
  this.originalBinding = originalBinding;
  this.typeConverterBinding = typeConverterBinding;
}
 
开发者ID:cgruber,项目名称:guice-old,代码行数:11,代码来源:InjectorImpl.java

示例13: conversionTypeError

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
public Errors conversionTypeError(String stringValue, Object source, TypeLiteral<?> type,
    TypeConverterBinding typeConverterBinding, Object converted) {
  return addMessage("Type mismatch converting '%s' (bound at %s) to %s%n"
      + " using %s.%n"
      + " Converter returned %s.",
      stringValue, convert(source), type, typeConverterBinding, converted);
}
 
开发者ID:cgruber,项目名称:guice-old,代码行数:8,代码来源:Errors.java

示例14: conversionError

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
public Errors conversionError(String stringValue, Object source,
    TypeLiteral<?> type, TypeConverterBinding typeConverterBinding, RuntimeException cause) {
  return errorInUserCode(cause, "Error converting '%s' (bound at %s) to %s%n"
      + " using %s.%n"
      + " Reason: %s",
      stringValue, convert(source), type, typeConverterBinding, cause);
}
 
开发者ID:cgruber,项目名称:guice-old,代码行数:8,代码来源:Errors.java

示例15: ambiguousTypeConversion

import com.google.inject.spi.TypeConverterBinding; //导入依赖的package包/类
public Errors ambiguousTypeConversion(String stringValue, Object source, TypeLiteral<?> type,
    TypeConverterBinding a, TypeConverterBinding b) {
  return addMessage("Multiple converters can convert '%s' (bound at %s) to %s:%n"
      + " %s and%n"
      + " %s.%n"
      + " Please adjust your type converter configuration to avoid overlapping matches.",
      stringValue, convert(source), type, a, b);
}
 
开发者ID:cgruber,项目名称:guice-old,代码行数:9,代码来源:Errors.java


注:本文中的com.google.inject.spi.TypeConverterBinding类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。