/** @see Sensor#getType() */ @Override public Class<? super T> getType() { return TypeTokens.getRawType(typeToken, type); }
/** @see Sensor#getTypeToken() */ @Override public TypeToken<T> getTypeToken() { return TypeTokens.getTypeToken(typeToken, type); }
protected BasicSensor(Class<T> type, TypeToken<T> typeToken, String name, String description) { TypeTokens.checkCompatibleOneNonNull(type, typeToken); this.typeToken = typeToken; this.type = type; this.name = checkNotNull(name, "name"); this.description = description; }
@SuppressWarnings("unchecked") public BasicSensor(TypeToken<T> typeToken, String name, String description) { this((Class<T>)TypeTokens.getRawTypeIfRaw(typeToken), TypeTokens.getTypeTokenIfNotRaw(checkNotNull(typeToken, "typeToken")), checkNotNull(name, "name"), description); }
targetType = TypeTokens.getRawType(targetTypeToken, targetType); if (targetTypeToken!=null && targetTypeToken.getType() instanceof ParameterizedType) { if (value instanceof Iterable && Iterable.class.isAssignableFrom(targetType)) { targetTypeToken = TypeTokens.getTypeToken(targetTypeToken, targetType); for (TryCoercer coercer : genericCoercers) { result = coercer.tryCoerce(value, targetTypeToken);
@SuppressWarnings("unchecked") public Builder(String newName, ConfigKey<T> key) { TypeToken<T> tt = key.getTypeToken(); this.type = (Class<T>) TypeTokens.getRawTypeIfRaw(tt); this.typeToken = TypeTokens.getTypeTokenIfNotRaw(tt); this.name = checkNotNull(newName, "name"); this.deprecatedNames = checkNotNull(key.getDeprecatedNames(), "deprecatedNames"); description(key.getDescription()); defaultValue(key.getDefaultValue()); reconfigurable(key.isReconfigurable()); runtimeInheritance(key.getInheritanceByContext(InheritanceContext.RUNTIME_MANAGEMENT)); typeInheritance(key.getInheritanceByContext(InheritanceContext.TYPE_DEFINITION)); constraint(key.getConstraint()); } public B name(String val) {
/** @see ConfigKey#getTypeToken() */ @Override public TypeToken<T> getTypeToken() { return TypeTokens.getTypeToken(typeToken, type); }
/** @see ConfigKey#getType() */ @Override public Class<? super T> getType() { return TypeTokens.getRawType(typeToken, type); }
public BasicConfigKey(Builder<T,?> builder) { this.name = checkNotNull(builder.name, "name"); this.deprecatedNames = checkNotNull(builder.deprecatedNames, "deprecatedNames"); TypeTokens.checkCompatibleOneNonNull(builder.type, builder.typeToken); this.type = builder.type; this.typeToken = builder.typeToken; this.description = builder.description; this.defaultValue = builder.defaultValue; this.reconfigurable = builder.reconfigurable; this.runtimeInheritance = builder.runtimeInheritance; this.typeInheritance = builder.typeInheritance; // Note: it's intentionally possible to have default values that are not valid // per the configured constraint. If validity were checked here any class that // contained a weirdly-defined config key would fail to initialise. this.constraint = checkNotNull(builder.constraint, "constraint"); }