/** Create an instance of {@link DomainType } */ public DomainType createDomainType() { return new DomainType(); }
public static DomainType getDomain(DomainType domain, DomainsType refDomains) { String currentDomainName = domain.getName(); if (currentDomainName == null) { String domainRef = domain.getRef(); if (domainRef != null && refDomains != null) { for (DomainType refDomain : refDomains.getDomain()) { if (refDomain.getName().equalsIgnoreCase(domainRef)) { currentDomainName = domainRef; return refDomain; } } } } return domain; }
/** * Get the attributes from the specified domain. The boolean specifies whether we need to add a * domain prefix before returning the attributes. * * @param domain * @param domainPrefix * @return */ private static String getAttributesAsString( final DomainType domain, final boolean domainPrefix) { final String currentDomainName = domain.getName(); final List<AttributeType> listAttributes = domain.getAttributes(); if (!listAttributes.isEmpty()) { String attribs = null; if (listAttributes.size() == 1) { attribs = listAttributes.get(0).getAttribute().trim(); } else { // Only support up to 2 attributes (start;end/low;high/...) String attr0 = listAttributes.get(0).getAttribute().trim(); String attr1 = listAttributes.get(1).getAttribute().trim(); attribs = attr0 + ";" + attr1; } if (domainPrefix) { return currentDomainName + "(" + attribs + ")"; } else { return attribs; } } return null; }
/** * Parse additional domains * * @param attributes * @param domainList */ public static void parseAdditionalDomains(String attributes, List<DomainType> domainList) { final String[] domainsAttributes = attributes.split(","); for (String domainAttributes : domainsAttributes) { DomainType domain = Utils.OBJECT_FACTORY.createDomainType(); String domainName = domainAttributes.trim(); String domainAttribs = domainName; if (domainAttributes.contains("(") && domainAttributes.contains(")")) { domainName = domainName.substring(0, domainName.indexOf("(")).trim(); domainAttribs = domainAttribs .substring(domainAttribs.indexOf("(")) .replace("(", "") .replace(")", ""); } domain.setName(domainName); // TODO: CHECK THAT setAttributes(domain, domainAttribs); domainList.add(domain); } }
/** * Add a single attribute to that domain with the specified value * * @param domain * @param attributeValue */ private static void addAttribute(DomainType domain, String attributeValue) { AttributeType attribute = Utils.OBJECT_FACTORY.createAttributeType(); attribute.setAttribute(attributeValue); List<AttributeType> listAttributes = domain.getAttributes(); listAttributes.add(attribute); }
DomainType currentDomain = getDomain(domain, refDomains); String currentDomainName = currentDomain.getName(); if (currentDomainName != null && currentDomainName.equalsIgnoreCase( DomainType currentDomain = getDomain(domain, refDomains); String domName = currentDomain.getName(); if (!domName.equalsIgnoreCase(Utils.TIME_DOMAIN) && !domName.equalsIgnoreCase(
private static void addDomain( Properties props, Coverage coverage, String attributeName, String domainName) { if (props.containsKey(attributeName)) { DomainsType domains = coverage.getDomains(); if (domains == null) { domains = Utils.OBJECT_FACTORY.createDomainsType(); coverage.setDomains(domains); } List<DomainType> domainList = domains.getDomain(); DomainType domain = Utils.OBJECT_FACTORY.createDomainType(); domain.setName(domainName.toLowerCase()); setAttributes(domain, props.getProperty(attributeName)); domainList.add(domain); } }