public void format(FormatterContext context, Collection updateTypes, String[] levels) { if (updateTypes.size() == 0) { return; } TagBuilder tag = new TagBuilder(context.getWriter(), "METADATA-UPDATE_TYPE") .appendAttribute("Resource", levels[RESOURCE_LEVEL]) .appendAttribute("Class", levels[CLASS_LEVEL]) .appendAttribute("Update", levels[UPDATE_LEVEL]) .appendAttribute("Version", context.getVersion()) .appendAttribute("Date", context.getDate()) .beginContentOnNewLine() .appendColumns(COLUMNS); for (Iterator iterator = updateTypes.iterator(); iterator.hasNext(); ) { UpdateType updateType = (UpdateType) iterator.next(); apppendDataRow(context, updateType); } tag.close(); }
private void apppendDataRow(FormatterContext context, UpdateType updateType) { DataRowBuilder row = new DataRowBuilder(context.getWriter()); row.begin(); row.append(updateType.getTable().getSystemName()); row.append(updateType.getSequence()); row.append(updateType.getAttributes()); row.append(updateType.getDefault()); row.append(updateType.getValidationExpressions()); row.append(updateType.getUpdateHelp()); row.append(updateType.getValidationLookup()); row.append(updateType.getValidationExternal()); row.end(); }
private void appendDataRow(FormatterContext context, MForeignKey foreignKey) { DataRowBuilder row = new DataRowBuilder(context.getWriter()); row.begin(); row.append(foreignKey.getForeignKeyID()); row.append(foreignKey.getParentResourceID()); row.append(foreignKey.getParentClassID()); row.append(foreignKey.getParentSystemName()); row.append(foreignKey.getChildResourceID()); row.append(foreignKey.getChildClassID()); row.append(foreignKey.getChildSystemName()); // 1.7.2 row.append(foreignKey.getConditionalParentField()); row.append(foreignKey.getConditionalParentValue()); row.end(); }
public void format( FormatterContext context, Collection<MetaObject> foreignKeys, String[] levels) { RetsVersion retsVersion = context.getRetsVersion(); if (foreignKeys.size() == 0) { return; } TagBuilder tag; // 1.7.2 DTD makes changes. if (retsVersion.equals(RetsVersion.RETS_1_0) || retsVersion.equals(RetsVersion.RETS_1_5) || retsVersion.equals(RetsVersion.RETS_1_7)) { /* * RETS 1.5 spec indicates that Version and Date should be * attributes of the METADATA-FOREIGNKEYS tag. However, the 1.5 DTD * does not list these in the attribute list. */ tag = new TagBuilder(context.getWriter(), "METADATA-FOREIGNKEYS") .beginContentOnNewLine() .appendColumns(COLUMNS); } else { // TODO: RETS 1.7.2 spec says tag should be METADATA-FOREIGN_KEYS // instead of METADATA-FOREIGNKEYS. tag = new TagBuilder(context.getWriter(), "METADATA-FOREIGNKEYS") .appendAttribute("Version", context.getVersion()) .appendAttribute("Date", context.getDate(), context.getRetsVersion()) .beginContentOnNewLine() .appendColumns(COLUMNS); } for (Iterator<?> iterator = foreignKeys.iterator(); iterator.hasNext(); ) { MForeignKey foreignKey = (MForeignKey) iterator.next(); appendDataRow(context, foreignKey); } tag.close(); }