public List<TSRecordFieldSyntax> fields() { List<TSRecordFieldSyntax> fields = new ArrayList<>(); for (RecordTemplateSpec.Field fieldSpec: _template.getFields()) { fields.add(new TSRecordFieldSyntax(_template, fieldSpec)); } return fields; }
public TSRecordFieldSyntax(RecordTemplateSpec _template, RecordTemplateSpec.Field _field) { this._template = _template; this._schema = _template.getSchema(); this._field = _field; }
private RecordTemplateSpec generateRecord(RecordDataSchema schema) final RecordTemplateSpec recordClass = new RecordTemplateSpec(schema); recordClass.setNamespace(schema.getNamespace()); recordClass.setClassName(schema.getName()); recordClass.setModifiers(ModifierSpec.PUBLIC); registerClassTemplateSpec(schema, recordClass); recordClass.addField(newField);
public static Set<ClassTemplateSpec> directReferencedTypes(ClassTemplateSpec spec) { Set<ClassTemplateSpec> results = new HashSet<ClassTemplateSpec>(); if (spec instanceof RecordTemplateSpec) { RecordTemplateSpec recordSpec = (RecordTemplateSpec)spec; for (RecordTemplateSpec.Field field: recordSpec.getFields()) { results.add(field.getType()); } } else if (spec instanceof UnionTemplateSpec) { UnionTemplateSpec unionSpec = (UnionTemplateSpec)spec; for (UnionTemplateSpec.Member member: unionSpec.getMembers()) { results.add(member.getClassTemplateSpec()); } } else if (spec instanceof CourierMapTemplateSpec) { CourierMapTemplateSpec mapSpec = (CourierMapTemplateSpec)spec; if (mapSpec.getKeyClass() != null) { results.add(mapSpec.getKeyClass()); } results.add(mapSpec.getValueClass()); } else if (spec instanceof ArrayTemplateSpec) { ArrayTemplateSpec arraySpec = (ArrayTemplateSpec)spec; results.add(arraySpec.getItemClass()); } return results; }
public TSRecordSyntax(RecordTemplateSpec _template) { this._template = _template; this._schema = _template.getSchema(); this._namedTypeSyntax = new TSNamedTypeSyntax(_schema); }