@Override public final Optional<String> getUnits() { return baseType.getUnits(); }
@Override public final Optional<String> getUnits() { return baseType.getUnits(); }
@Override public final Optional<String> getUnits() { return units != null ? Optional.of(units) : baseType.getUnits(); }
@Override public final Optional<String> getUnits() { return units != null ? Optional.of(units) : baseType.getUnits(); }
DerivedTypeBuilder(final T baseType, final SchemaPath path) { super(requireNonNull(baseType), path); checkArgument(baseType instanceof AbstractBaseType || baseType instanceof AbstractDerivedType || baseType instanceof AbstractRestrictedType, "Derived type can be built only from a base, derived, or restricted type, not %s", baseType); // http://tools.ietf.org/html/rfc6020#section-7.3.4 defaultValue = baseType.getDefaultValue().orElse(null); // In similar vein, it makes sense to propagate units units = baseType.getUnits().orElse(null); }
DerivedTypeBuilder(final T baseType, final SchemaPath path) { super(requireNonNull(baseType), path); checkArgument(baseType instanceof AbstractBaseType || baseType instanceof AbstractDerivedType || baseType instanceof AbstractRestrictedType, "Derived type can be built only from a base, derived, or restricted type, not %s", baseType); // http://tools.ietf.org/html/rfc6020#section-7.3.4 defaultValue = baseType.getDefaultValue().orElse(null); // In similar vein, it makes sense to propagate units units = baseType.getUnits().orElse(null); }
public final void setUnits(final String units) { requireNonNull(units); final Optional<String> baseUnits = getBaseType().getUnits(); if (baseUnits.isPresent() && !units.equals(baseUnits.get())) { LOG.warn("Type {} uverrides 'units' of type {} to \"{}\"", getPath(), getBaseType(), units); } this.units = units; }
static @NonNull ToStringHelper toStringHelper(final @NonNull TypeDefinition<?> type) { return MoreObjects.toStringHelper(type).omitNullValues() .add("path", type.getPath()) .add("baseType", type.getBaseType()) .add("default", type.getDefaultValue().orElse(null)) .add("description", type.getDescription().orElse(null)) .add("reference", type.getReference().orElse(null)) .add("status", type.getStatus()) .add("units", type.getUnits().orElse(null)); }
public final void setUnits(final String units) { requireNonNull(units); final Optional<String> baseUnits = getBaseType().getUnits(); if (baseUnits.isPresent() && !units.equals(baseUnits.get())) { LOG.warn("Type {} uverrides 'units' of type {} to \"{}\"", getPath(), getBaseType(), units); } this.units = units; }
static @NonNull ToStringHelper toStringHelper(final @NonNull TypeDefinition<?> type) { return MoreObjects.toStringHelper(type).omitNullValues() .add("path", type.getPath()) .add("baseType", type.getBaseType()) .add("default", type.getDefaultValue().orElse(null)) .add("description", type.getDescription().orElse(null)) .add("reference", type.getReference().orElse(null)) .add("status", type.getStatus()) .add("units", type.getUnits().orElse(null)); }
static <T extends TypeDefinition<T>> @Nullable T castIfEquals(final @NonNull Class<T> clazz, final @NonNull T type, final @Nullable Object obj) { if (!clazz.isInstance(obj)) { return null; } final @NonNull T other = clazz.cast(obj); return Objects.equals(type.getPath(), other.getPath()) && Objects.equals(type.getBaseType(), other.getBaseType()) && Objects.equals(type.getDefaultValue(), other.getDefaultValue()) && Objects.equals(type.getUnknownSchemaNodes(), other.getUnknownSchemaNodes()) && Objects.equals(type.getUnits(), other.getUnits()) ? other : null; }
static <T extends TypeDefinition<T>> @Nullable T castIfEquals(final @NonNull Class<T> clazz, final @NonNull T type, final @Nullable Object obj) { if (!clazz.isInstance(obj)) { return null; } final @NonNull T other = clazz.cast(obj); return Objects.equals(type.getPath(), other.getPath()) && Objects.equals(type.getBaseType(), other.getBaseType()) && Objects.equals(type.getDefaultValue(), other.getDefaultValue()) && Objects.equals(type.getUnknownSchemaNodes(), other.getUnknownSchemaNodes()) && Objects.equals(type.getUnits(), other.getUnits()) ? other : null; }
static int basicHashCode(final @NonNull TypeDefinition<?> type) { return Objects.hash(type.getPath(), type.getUnknownSchemaNodes(), type.getBaseType(), type.getUnits().orElse(null), type.getDefaultValue().orElse(null)); }
@Override public final T build() { final T base = getBaseType(); if (Objects.equals(getDefaultValue(), base.getDefaultValue().orElse(null)) && Objects.equals(getUnits(), base.getUnits().orElse(null))) { return base; } return verifyNotNull(buildType()); } }
@Override public final T build() { final T base = getBaseType(); if (Objects.equals(getDefaultValue(), base.getDefaultValue().orElse(null)) && Objects.equals(getUnits(), base.getUnits().orElse(null))) { return base; } return verifyNotNull(buildType()); } }
static int basicHashCode(final @NonNull TypeDefinition<?> type) { return Objects.hash(type.getPath(), type.getUnknownSchemaNodes(), type.getBaseType(), type.getUnits().orElse(null), type.getDefaultValue().orElse(null)); }
private void emitTypedefNode(final TypeDefinition<?> typedef) { super.writer.startTypedefNode(typedef.getQName()); // Differentiate between derived type and existing type // name. emitTypeNodeDerived(typedef); typedef.getUnits().ifPresent(this::emitUnitsNode); typedef.getDefaultValue().ifPresent(this::emitDefaultNode); emitDocumentedNode(typedef); emitUnknownStatementNodes(typedef.getUnknownSchemaNodes()); super.writer.endNode(); }
private void emitLeaf(final LeafSchemaNode child) { super.writer.startLeafNode(child.getQName()); child.getWhenCondition().ifPresent(this::emitWhen); // FIXME: BUG-2444: *(ifFeatureNode ) emitTypeNode(child.getPath(), child.getType()); child.getType().getUnits().ifPresent(this::emitUnitsNode); child.getMustConstraints().forEach(this::emitMust); child.getType().getDefaultValue().ifPresent(this::emitDefaultNode); emitConfigNode(child.isConfiguration()); emitMandatoryNode(child.isMandatory()); emitDocumentedNode(child); emitUnknownStatementNodes(child.getUnknownSchemaNodes()); super.writer.endNode(); }
private void emitLeafList(final LeafListSchemaNode child) { super.writer.startLeafListNode(child.getQName()); child.getWhenCondition().ifPresent(this::emitWhen); // FIXME: BUG-2444: *(ifFeatureNode ) emitTypeNode(child.getPath(), child.getType()); child.getType().getUnits().ifPresent(this::emitUnitsNode); // FIXME: BUG-2444: unitsNode /Optional child.getMustConstraints().forEach(this::emitMust); emitConfigNode(child.isConfiguration()); emitDefaultNodes(child.getDefaults()); child.getElementCountConstraint().ifPresent(this::emitCountConstraint); emitOrderedBy(child.isUserOrdered()); emitDocumentedNode(child); emitUnknownStatementNodes(child.getUnknownSchemaNodes()); super.writer.endNode(); }
private Type createReturnTypeForUnion(final GeneratedTOBuilder genTOBuilder, final TypeDefinition<?> typeDef, final GeneratedTypeBuilder typeBuilder, final Module parentModule) { final GeneratedTOBuilderImpl returnType = new GeneratedTOBuilderImpl(genTOBuilder.getPackageName(), genTOBuilder.getName()); returnType.setDescription(typeDef.getDescription()); returnType.setReference(typeDef.getReference()); returnType.setSchemaPath(typeDef.getPath().getPathFromRoot()); returnType.setModuleName(parentModule.getName()); genTOBuilder.setTypedef(true); genTOBuilder.setIsUnion(true); ((TypeProviderImpl) typeProvider).addUnitsToGenTO(genTOBuilder, typeDef.getUnits()); final GeneratedTOBuilder unionBuilder = createUnionBuilder(genTOBuilder,typeBuilder); final MethodSignatureBuilder method = unionBuilder.addMethod("getDefaultInstance"); method.setReturnType(returnType); method.addParameter(Types.STRING, "defaultValue"); method.setAccessModifier(AccessModifier.PUBLIC); method.setStatic(true); final Set<Type> types = ((TypeProviderImpl) typeProvider).getAdditionalTypes().get(parentModule); if (types == null) { ((TypeProviderImpl) typeProvider).getAdditionalTypes().put(parentModule, Sets.<Type> newHashSet(unionBuilder.toInstance())); } else { types.add(unionBuilder.toInstance()); } return returnType.toInstance(); }