@Override public String getValue() { return wrapped.getValue(); }
@Override public void processEvent(Object object, String event, VariantNameIF new_value, VariantNameIF old_value) { objects.add(new_value.getValue(), new_value); } }
@Override public void processEvent(Object object, String event, VariantNameIF new_value, VariantNameIF old_value) { objects.remove(old_value.getValue(), old_value); } }
@Override public int compare(VariantNameIF vn1, VariantNameIF vn2) { if (Objects.equals(vn1, vn2)) return 0; int retVal = scopeComparator.compare(filterCollection(vn1.getScope()), filterCollection(vn2.getScope())); if (retVal == 0) retVal = lazyStringCompare(vn1.getValue(), vn2.getValue()); return retVal; }
protected static String makeDataKey(VariantNameIF variant) { return "$$" + variant.getValue() + SPACER + variant.getDataType(); } }
private void writeVariant(VariantNameIF variant, ContentHandler dh, ContextHolder context) throws SAXException { dh.startElement("", "", "variant", empty); writeScope(variant, dh, context); dh.startElement("", "", "variantName", empty); if (variant.getLocator() == null) writeResourceData(variant.getValue(), dh); else writeResourceRef(variant.getLocator(), dh); dh.endElement("", "", "variantName"); dh.endElement("", "", "variant"); }
private boolean searchTopicFor(String pattern, TMTopicNode node) { Iterator namesIt = node.getTopic().getTopicNames().iterator(); while (namesIt.hasNext()) { TopicNameIF currentName = (TopicNameIF)namesIt.next(); if (matchesIgnoreCase(currentName.getValue(), pattern)) return true; Iterator variantsIt = currentName.getVariants().iterator(); while (variantsIt.hasNext()) { VariantNameIF currentVariant = (VariantNameIF)variantsIt.next(); if (matchesIgnoreCase(currentVariant.getValue(), pattern)) return true; } } return false; }
@Override public int compare(Object o1, Object o2) { VariantNameIF vn1 = (VariantNameIF) o1; VariantNameIF vn2 = (VariantNameIF) o2; int cmp = compareString(vn1.getValue(), vn2.getValue()); if (cmp == 0) cmp = compareLocator(vn1.getLocator(), vn2.getLocator()); if (cmp == 0) cmp = compareTopicSet(vn1.getScope(), vn2.getScope()); return cmp; }
private static void copyVariants(TopicNameIF target, TopicNameIF source, Map<TopicIF, TopicIF> mergemap) { TopicMapBuilderIF builder = target.getTopicMap().getBuilder(); Iterator<VariantNameIF> it = source.getVariants().iterator(); while (it.hasNext()) { VariantNameIF sv = it.next(); VariantNameIF tv = builder.makeVariantName(target, sv.getValue(), sv.getDataType()); copyScope(tv, sv, mergemap); copyReifier(tv, sv, mergemap); copySourceLocators(tv, sv); } }
@Override public void run(MasterTest mt) { VariantNameIF vn = (VariantNameIF)topicmap.getObjectById(mt.objectId); assertTrue("Variant name value is not set", "New variant".equals(vn.getValue())); } });
@Override public DocumentIF generate(VariantNameIF variant) { // Create document DocumentIF doc = createDocument(); // Add fields addObjectFields(doc, variant, "N"); if (Objects.equals(variant.getDataType(), DataTypes.TYPE_URI)) addLocatorField(doc, variant.getLocator()); else addContentField(doc, variant.getValue()); return doc; }
@Override public void run(MasterTest mt) { VariantNameIF vn = (VariantNameIF)topicmap.getObjectById(mt.objectId); assertTrue("Variant name value is not null", "".equals(vn.getValue())); } });
@Override public int compare(VariantNameIF vn1, VariantNameIF vn2) { if (vn1 == vn2) return 0; // Compare variant name values int cval1 = compareObjects(vn1.getValue(), vn2.getValue()); if (cval1 != 0) return cval1; // Compare variant name locators int cval2 = compareObjects(vn1.getLocator(), vn2.getLocator(), LocatorComparator.getInstance()); if (cval2 != 0) return cval2; // Compare scope return compareCollections(vn1.getScope(), vn2.getScope(), TopicComparator.getInstance()); } }
public void endAnalysis() { // merge terms that are synonyms for (TopicIF topic : atopics) { Term term = null; for (TopicNameIF bname : topic.getTopicNames()) { term = createTerm(term, bname.getValue()); for (VariantNameIF vname : bname.getVariants()) { term = createTerm(term, vname.getValue()); } } } // boost score by topic type // store information about which terms map to which topics this.tdb = null; }
@Override public void endAnalysis() { // merge terms that are synonyms for (TopicIF topic : atopics) { Term term = null; for (TopicNameIF bname : topic.getTopicNames()) { term = createTerm(term, bname.getValue()); for (VariantNameIF vname : bname.getVariants()) { term = createTerm(term, vname.getValue()); } } } // boost score by topic type // store information about which terms map to which topics this.tdb = null; }
public void testValue() { assertTrue("initial name value not null", "".equals(variant.getValue())); variant.setValue("testfaen"); assertTrue("name not set correctly", variant.getValue().equals("testfaen")); assertTrue("data type is incorrect. should be xsd:anyURI", Objects.equals(variant.getDataType(), DataTypes.TYPE_STRING)); try { variant.setValue(null); fail("value could be set to null"); } catch (NullPointerException e) { } assertTrue("data type is incorrect. should be xsd:anyURI", Objects.equals(variant.getDataType(), DataTypes.TYPE_STRING)); }
public VariantNameIF change(TopicMapIF tm, VariantNameIF result, VariantName variant) { // VariantNameIF if ((variant.getValue() != null) && (!variant.getValue().equals(result.getValue()))) { result.setValue(variant.getValue()); } if ((variant.getDataType() != null) && (!variant.getDataType().equals(result.getDataType()))) { result.setValue(result.getValue(), variant.getDataType()); // no shortcut } // ScopedIF scoped.setScope(result, variant.getScope()); // ReifiableIF reifiable.setReifier(result, variant.getReifier()); // TMObjectIF tmobject.setItemIdentifiers(result, variant); return result; }
/** * INTERNAL: Copies the variant value and datatype from the * source topic to the target topic. * * @since 4.0 */ public static void copyVariantData(VariantNameIF target, VariantNameIF source) { if (source.getLength() > DataTypes.SIZE_THRESHOLD) target.setReader(source.getReader(), source.getLength(), source.getDataType()); else target.setValue(source.getValue(), source.getDataType()); }
@Override public void run(MasterTest mt) { VariantNameIF vn = (VariantNameIF)topicmap.getObjectById(mt.objectId); assertTrue("Added variant name not found", vn != null); if (testInitialProperties) { assertTrue("Source locators is set", vn.getItemIdentifiers().isEmpty()); assertTrue("Scope is set", vn.getScope().isEmpty()); assertTrue("Value is set", vn.getValue() == null); assertTrue("Locator is set", vn.getLocator() == null); } } });
/** * INTERNAL: Serialize a variant to the underlying JTM stream. * * @param variant the variant to be serialized. * @param topLevel if the element is serialized as top-level element. */ private void serializeVariant(VariantNameIF variant, boolean topLevel) throws IOException { if (!topLevel) { writer.object(); } serializeValue(variant.getLocator(), variant.getValue()); serializeDataType(variant.getDataType()); serializeScope(variant); serializeItemIdentifiers(variant); serializeReifier(variant); writer.endObject(); }