Move common code to router-core from DR 13/55513/1
authorDaniel Silverthorn <daniel.silverthorn@amdocs.com>
Wed, 27 Jun 2018 19:01:55 +0000 (15:01 -0400)
committerDaniel Silverthorn <daniel.silverthorn@amdocs.com>
Wed, 27 Jun 2018 19:03:21 +0000 (15:03 -0400)
Change-Id: I5c13ca2b4173db02c0678dfbc0b4a8b168a570f8
Issue-ID: AAI-1339
Signed-off-by: Daniel Silverthorn <daniel.silverthorn@amdocs.com>
19 files changed:
pom.xml
src/main/java/org/onap/aai/datarouter/entity/OxmEntityDescriptor.java [deleted file]
src/main/java/org/onap/aai/datarouter/logging/DataRouterMsgs.java
src/main/java/org/onap/aai/datarouter/policy/AbstractSpikeEntityEventProcessor.java
src/main/java/org/onap/aai/datarouter/policy/EntityEventPolicy.java
src/main/java/org/onap/aai/datarouter/policy/SpikeAutosuggestIndexProcessor.java
src/main/java/org/onap/aai/datarouter/policy/SpikeEntityEventPolicy.java
src/main/java/org/onap/aai/datarouter/schema/OxmConfigTranslator.java [deleted file]
src/main/java/org/onap/aai/datarouter/schema/OxmModelLoader.java [deleted file]
src/main/java/org/onap/aai/datarouter/schema/SchemaIngestPropertiesReader.java [deleted file]
src/main/java/org/onap/aai/datarouter/util/CrossEntityReference.java [deleted file]
src/main/java/org/onap/aai/datarouter/util/EntityOxmReferenceHelper.java [deleted file]
src/main/java/org/onap/aai/datarouter/util/ExternalOxmModelProcessor.java [deleted file]
src/main/java/org/onap/aai/datarouter/util/Version.java [deleted file]
src/main/java/org/onap/aai/datarouter/util/VersionedOxmEntities.java [deleted file]
src/main/resources/logging/DataRouterMsgs.properties
src/test/java/org/onap/aai/datarouter/entity/AaiEventEntityTest.java
src/test/java/org/onap/aai/datarouter/schema/OxmModelLoaderTest.java [deleted file]
src/test/java/org/onap/aai/datarouter/util/CrossEntityReferenceTest.java [deleted file]

diff --git a/pom.xml b/pom.xml
index e955c80..7b0a651 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -169,22 +169,22 @@ limitations under the License.
          <version>3.1.200</version>
          <scope>provided</scope>
       </dependency>
-      <dependency>
-         <groupId>org.onap.aai.aai-common</groupId>
-         <artifactId>aai-schema</artifactId>
-         <version>1.3.0-SNAPSHOT</version>
-      </dependency>
-      <dependency>
-        <groupId>org.onap.aai.aai-common</groupId>
-         <artifactId>aai-schema-ingest</artifactId>
-         <version>1.2.2</version>
-         <exclusions>
-             <exclusion>
-                 <groupId>com.google.guava</groupId>
-                 <artifactId>guava</artifactId>
-             </exclusion>
-         </exclusions>
-      </dependency>
+      <!--<dependency>-->
+         <!--<groupId>org.onap.aai.aai-common</groupId>-->
+         <!--<artifactId>aai-schema</artifactId>-->
+         <!--<version>1.3.0-SNAPSHOT</version>-->
+      <!--</dependency>-->
+      <!--<dependency>-->
+        <!--<groupId>org.onap.aai.aai-common</groupId>-->
+         <!--<artifactId>aai-schema-ingest</artifactId>-->
+         <!--<version>1.2.2</version>-->
+         <!--<exclusions>-->
+             <!--<exclusion>-->
+                 <!--<groupId>com.google.guava</groupId>-->
+                 <!--<artifactId>guava</artifactId>-->
+             <!--</exclusion>-->
+         <!--</exclusions>-->
+      <!--</dependency>-->
       <dependency>
          <groupId>org.onap.aai.router-core</groupId>
          <artifactId>router-core</artifactId>
diff --git a/src/main/java/org/onap/aai/datarouter/entity/OxmEntityDescriptor.java b/src/main/java/org/onap/aai/datarouter/entity/OxmEntityDescriptor.java
deleted file mode 100644 (file)
index 30e55b7..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-/**
- * ============LICENSE_START=======================================================
- * org.onap.aai
- * ================================================================================
- * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017-2018 Amdocs
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-package org.onap.aai.datarouter.entity;
-
-import java.util.List;
-
-import org.onap.aai.datarouter.util.CrossEntityReference;
-
-
-public class OxmEntityDescriptor {
-       
-       private String entityName;
-
-       private List<String> primaryKeyAttributeName;
-       
-       private List<String> searchableAttributes;
-       
-       private CrossEntityReference crossEntityReference;
-       
-       private List<String> alias;
-       
-       private List<String> suggestableAttributes;
-    
-    boolean isSuggestableEntity;
-
-       public String getEntityName() {
-               return entityName;
-       }
-
-       public void setEntityName(String entityName) {
-               this.entityName = entityName;
-       }
-       
-       public List<String> getPrimaryKeyAttributeName() {
-               return primaryKeyAttributeName;
-       }
-
-       public void setPrimaryKeyAttributeName(List<String> primaryKeyAttributeName) {
-               this.primaryKeyAttributeName = primaryKeyAttributeName;
-       }
-
-       public List<String> getSearchableAttributes() {
-               return searchableAttributes;
-       }
-
-       public void setSearchableAttributes(List<String> searchableAttributes) {
-               this.searchableAttributes = searchableAttributes;
-       }
-       
-       public boolean hasSearchableAttributes() {
-          
-          if ( this.searchableAttributes == null) {
-             return false;
-          }
-          
-          if ( !this.searchableAttributes.isEmpty() ) {
-             return true;
-          }
-          
-          return false;
-          
-       }
-
-       public CrossEntityReference getCrossEntityReference() {
-               return crossEntityReference;
-       }
-
-       public void setCrossEntityReference(CrossEntityReference crossEntityReference) {
-               this.crossEntityReference = crossEntityReference;
-       }
-
-       public List<String> getAlias() {
-    return alias;
-  }
-
-  public void setAlias(List<String> alias) {
-    this.alias = alias;
-  }
-
-  public List<String> getSuggestableAttributes() {
-    return suggestableAttributes;
-  }
-
-  public void setSuggestableAttributes(List<String> suggestableAttributes) {
-    this.suggestableAttributes = suggestableAttributes;
-  }
-
-  public boolean isSuggestableEntity() {
-    return isSuggestableEntity;
-  }
-
-  public void setSuggestableEntity(boolean isSuggestableEntity) {
-    this.isSuggestableEntity = isSuggestableEntity;
-  }
-
-  @Override
-  public String toString() {
-    return "OxmEntityDescriptor [entityName=" + entityName + ", primaryKeyAttributeName="
-        + primaryKeyAttributeName + ", searchableAttributes=" + searchableAttributes
-        + ", crossEntityReference=" + crossEntityReference + ", alias=" + alias
-        + ", suggestableAttributes=" + suggestableAttributes + ", isSuggestableEntity="
-        + isSuggestableEntity + "]";
-  }
-}
index 521a7c3..2443993 100644 (file)
@@ -153,13 +153,6 @@ public enum DataRouterMsgs implements LogMessageEnum {
   
   INVALID_OXM_DIR,
   LOAD_OXM_ERROR,
-  /**
-   * Successfully loaded schema: {0}
-   *
-   * <p>Arguments:
-   * {0} = oxm filename
-   */
-  LOADED_OXM_FILE,
   
   /**
    * Arguments: {0} = origin payload
@@ -194,10 +187,7 @@ public enum DataRouterMsgs implements LogMessageEnum {
   READING_JSON_SCHEMA_ERROR,
   
   /** Arguments: {0} = Error message */
-  JSON_CONVERSION_ERROR,
-
-  /** Failed to load the schemaIngest.properties file */
-  SCHEMA_INGEST_LOAD_ERROR;
+  JSON_CONVERSION_ERROR;
   
   /**
    * Static initializer to ensure the resource bundles for this class are loaded...
index ca8caf4..c642102 100644 (file)
@@ -33,7 +33,6 @@ import java.util.Map;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
-import org.apache.http.conn.routing.RouteInfo.LayerType;
 import org.eclipse.persistence.dynamic.DynamicType;
 import org.eclipse.persistence.internal.helper.DatabaseField;
 import org.eclipse.persistence.jaxb.dynamic.DynamicJAXBContext;
@@ -43,19 +42,19 @@ import org.json.JSONObject;
 import org.onap.aai.cl.api.Logger;
 import org.onap.aai.cl.eelf.LoggerFactory;
 import org.onap.aai.cl.mdc.MdcContext;
-import org.onap.aai.datarouter.schema.OxmModelLoader;
+import org.onap.aai.schema.OxmModelLoader;
 import org.onap.aai.datarouter.entity.DocumentStoreDataEntity;
-import org.onap.aai.datarouter.entity.OxmEntityDescriptor;
 import org.onap.aai.datarouter.entity.SpikeEventEntity;
 import org.onap.aai.datarouter.entity.SpikeEventMeta;
 import org.onap.aai.datarouter.entity.SpikeEventVertex;
 import org.onap.aai.datarouter.logging.EntityEventPolicyMsgs;
-import org.onap.aai.datarouter.util.EntityOxmReferenceHelper;
-import org.onap.aai.datarouter.util.ExternalOxmModelProcessor;
 import org.onap.aai.datarouter.util.RouterServiceUtil;
 import org.onap.aai.datarouter.util.SearchServiceAgent;
-import org.onap.aai.datarouter.util.Version;
-import org.onap.aai.datarouter.util.VersionedOxmEntities;
+import org.onap.aai.entity.OxmEntityDescriptor;
+import org.onap.aai.util.EntityOxmReferenceHelper;
+import org.onap.aai.util.ExternalOxmModelProcessor;
+import org.onap.aai.util.Version;
+import org.onap.aai.util.VersionedOxmEntities;
 import org.onap.aai.restclient.client.Headers;
 import org.onap.aai.restclient.client.OperationResult;
 import org.onap.aai.restclient.rest.HttpUtil;
index ae5d0e6..6276abd 100644 (file)
@@ -43,21 +43,21 @@ import org.json.JSONObject;
 import org.onap.aai.datarouter.entity.AaiEventEntity;
 import org.onap.aai.datarouter.entity.AggregationEntity;
 import org.onap.aai.datarouter.entity.DocumentStoreDataEntity;
-import org.onap.aai.datarouter.entity.OxmEntityDescriptor;
 import org.onap.aai.datarouter.entity.SuggestionSearchEntity;
 import org.onap.aai.datarouter.entity.TopographicalEntity;
 import org.onap.aai.datarouter.entity.UebEventHeader;
 import org.onap.aai.datarouter.logging.EntityEventPolicyMsgs;
-import org.onap.aai.datarouter.util.CrossEntityReference;
-import org.onap.aai.datarouter.util.EntityOxmReferenceHelper;
-import org.onap.aai.datarouter.util.ExternalOxmModelProcessor;
 import org.onap.aai.datarouter.util.NodeUtils;
-import org.onap.aai.datarouter.schema.OxmModelLoader;
 import org.onap.aai.datarouter.util.RouterServiceUtil;
 import org.onap.aai.datarouter.util.SearchServiceAgent;
 import org.onap.aai.datarouter.util.SearchSuggestionPermutation;
-import org.onap.aai.datarouter.util.Version;
-import org.onap.aai.datarouter.util.VersionedOxmEntities;
+import org.onap.aai.entity.OxmEntityDescriptor;
+import org.onap.aai.util.CrossEntityReference;
+import org.onap.aai.util.EntityOxmReferenceHelper;
+import org.onap.aai.util.ExternalOxmModelProcessor;
+import org.onap.aai.schema.OxmModelLoader;
+import org.onap.aai.util.Version;
+import org.onap.aai.util.VersionedOxmEntities;
 import org.onap.aai.cl.api.Logger;
 import org.onap.aai.cl.eelf.LoggerFactory;
 import org.onap.aai.cl.mdc.MdcContext;
index 8b56f99..b2f9202 100644 (file)
@@ -28,14 +28,14 @@ import java.util.List;
 import java.util.Map;
 
 import org.apache.camel.Exchange;
-import org.onap.aai.datarouter.entity.OxmEntityDescriptor;
 import org.onap.aai.datarouter.entity.SpikeEventMeta;
 import org.onap.aai.datarouter.entity.SuggestionSearchEntity;
 import org.onap.aai.datarouter.logging.EntityEventPolicyMsgs;
-import org.onap.aai.datarouter.util.EntityOxmReferenceHelper;
 import org.onap.aai.datarouter.util.SearchSuggestionPermutation;
-import org.onap.aai.datarouter.util.Version;
-import org.onap.aai.datarouter.util.VersionedOxmEntities;
+import org.onap.aai.entity.OxmEntityDescriptor;
+import org.onap.aai.util.EntityOxmReferenceHelper;
+import org.onap.aai.util.Version;
+import org.onap.aai.util.VersionedOxmEntities;
 
 import com.fasterxml.jackson.databind.JsonNode;
 
index 67db407..9826743 100644 (file)
@@ -44,15 +44,15 @@ import org.onap.aai.cl.api.Logger;
 import org.onap.aai.cl.eelf.LoggerFactory;
 import org.onap.aai.cl.mdc.MdcContext;
 import org.onap.aai.datarouter.entity.DocumentStoreDataEntity;
-import org.onap.aai.datarouter.entity.OxmEntityDescriptor;
 import org.onap.aai.datarouter.entity.SpikeEventEntity;
 import org.onap.aai.datarouter.entity.SpikeEventVertex;
 import org.onap.aai.datarouter.logging.EntityEventPolicyMsgs;
-import org.onap.aai.datarouter.util.EntityOxmReferenceHelper;
-import org.onap.aai.datarouter.util.ExternalOxmModelProcessor;
-import org.onap.aai.datarouter.schema.OxmModelLoader;
 import org.onap.aai.datarouter.util.RouterServiceUtil;
 import org.onap.aai.datarouter.util.SearchServiceAgent;
+import org.onap.aai.entity.OxmEntityDescriptor;
+import org.onap.aai.util.EntityOxmReferenceHelper;
+import org.onap.aai.util.ExternalOxmModelProcessor;
+import org.onap.aai.schema.OxmModelLoader;
 import org.onap.aai.restclient.client.Headers;
 import org.onap.aai.restclient.client.OperationResult;
 import org.onap.aai.restclient.rest.HttpUtil;
diff --git a/src/main/java/org/onap/aai/datarouter/schema/OxmConfigTranslator.java b/src/main/java/org/onap/aai/datarouter/schema/OxmConfigTranslator.java
deleted file mode 100644 (file)
index ee2c5dc..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-/**
- * ============LICENSE_START=======================================================
- * org.onap.aai
- * ================================================================================
- * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017-2018 Amdocs
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-package org.onap.aai.datarouter.schema;
-
-import java.io.IOException;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.nio.file.PathMatcher;
-import java.nio.file.Paths;
-import java.util.List;
-import java.util.Map;
-import java.util.ServiceConfigurationError;
-import java.util.stream.Collectors;
-import java.util.stream.Stream;
-import org.onap.aai.setup.ConfigTranslator;
-import org.onap.aai.setup.SchemaLocationsBean;
-import org.onap.aai.setup.Version;
-
-public class OxmConfigTranslator extends ConfigTranslator {
-    public OxmConfigTranslator(SchemaLocationsBean bean) {
-        super(bean);
-    }
-
-    @Override
-    public Map<Version, List<String>> getNodeFiles() {
-        String nodeDirectory = bean.getNodeDirectory();
-        if (nodeDirectory == null) {
-            throw new ServiceConfigurationError(
-                    "Node(s) directory is empty in the schema location bean (" + bean.getSchemaConfigLocation() + ")");
-        }
-        try {
-            return getVersionMap(Paths.get(nodeDirectory), "*_v*.xml");
-        } catch (IOException e) {
-            throw new ServiceConfigurationError("Failed to read node(s) directory " + getPath(nodeDirectory), e);
-        }
-    }
-
-    @Override
-    public Map<Version, List<String>> getEdgeFiles() {
-        String edgeDirectory = bean.getEdgeDirectory();
-        if (edgeDirectory == null) {
-            throw new ServiceConfigurationError(
-                    "Edge(s) directory is empty in the schema location bean (" + bean.getSchemaConfigLocation() + ")");
-        }
-        try {
-            return getVersionMap(Paths.get(edgeDirectory), "*_v*.json");
-        } catch (IOException e) {
-            throw new ServiceConfigurationError("Failed to read edge(s) directory " + getPath(edgeDirectory), e);
-        }
-    }
-
-    private String getPath(String nodeDirectory) {
-        return Paths.get(nodeDirectory).toAbsolutePath().toString();
-    }
-
-    /**
-     * Creates a map containing each OXM Version and the matching OXM file path(s)
-     *
-     * @param folderPath the folder/directory containing the OXM files
-     * @param fileSuffix
-     * @return a new Map object (may be empty)
-     * @throws IOException if there is a problem reading the specified directory path
-     */
-    private Map<Version, List<String>> getVersionMap(Path folderPath, String globPattern) throws IOException {
-        final PathMatcher filter = folderPath.getFileSystem().getPathMatcher("glob:**/" + globPattern);
-        try (final Stream<Path> stream = Files.list(folderPath)) {
-            return stream.filter(filter::matches).map(Path::toString).filter(p -> getVersionFromPath(p) != null)
-                    .collect(Collectors.groupingBy(this::getVersionFromPath));
-        }
-    }
-
-    private Version getVersionFromPath(String pathName) {
-        String version = "V" + pathName.replaceAll("^.*\\/", "").replaceAll("\\D+", "");
-        try {
-            return Version.valueOf(version);
-        } catch (IllegalArgumentException e) {
-            return null;
-        }
-    }
-}
diff --git a/src/main/java/org/onap/aai/datarouter/schema/OxmModelLoader.java b/src/main/java/org/onap/aai/datarouter/schema/OxmModelLoader.java
deleted file mode 100644 (file)
index 93854d8..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-/**
- * ============LICENSE_START=======================================================
- * org.onap.aai
- * ================================================================================
- * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017-2018 Amdocs
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-package org.onap.aai.datarouter.schema;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-import java.util.Map;
-import java.util.NoSuchElementException;
-import java.util.concurrent.ConcurrentHashMap;
-import javax.ws.rs.core.Response.Status;
-import org.eclipse.persistence.jaxb.dynamic.DynamicJAXBContext;
-import org.onap.aai.cl.eelf.LoggerFactory;
-import org.onap.aai.datarouter.logging.DataRouterMsgs;
-import org.onap.aai.datarouter.util.ExternalOxmModelProcessor;
-import org.onap.aai.nodes.NodeIngestor;
-import org.onap.aai.setup.ConfigTranslator;
-import org.onap.aai.setup.SchemaLocationsBean;
-import org.onap.aai.setup.Version;
-
-public class OxmModelLoader {
-
-    private static Map<String, DynamicJAXBContext> versionContextMap = new ConcurrentHashMap<>();
-    private static List<ExternalOxmModelProcessor> oxmModelProcessorRegistry = new ArrayList<>();
-
-    private static final org.onap.aai.cl.api.Logger logger =
-            LoggerFactory.getInstance().getLogger(OxmModelLoader.class.getName());
-
-    private OxmModelLoader() {
-        throw new IllegalStateException("Utility class");
-    }
-
-    public static synchronized void loadModels() {
-        SchemaIngestPropertiesReader schemaIngestPropReader = new SchemaIngestPropertiesReader();
-        SchemaLocationsBean schemaLocationsBean = new SchemaLocationsBean();
-        schemaLocationsBean.setNodeDirectory(schemaIngestPropReader.getNodeDir());
-        ConfigTranslator configTranslator = new OxmConfigTranslator(schemaLocationsBean);
-        NodeIngestor nodeIngestor = new NodeIngestor(configTranslator);
-
-        for (Version oxmVersion : Version.values()) {
-            DynamicJAXBContext jaxbContext = nodeIngestor.getContextForVersion(oxmVersion);
-            if (jaxbContext != null) {
-                loadModel(oxmVersion.toString(), jaxbContext);
-            }
-        }
-    }
-
-    public static DynamicJAXBContext getContextForVersion(String version) {
-        if (versionContextMap == null || versionContextMap.isEmpty()) {
-            loadModels();
-        } else if (!versionContextMap.containsKey(version)) {
-            throw new NoSuchElementException(Status.NOT_FOUND.toString());
-        }
-        return versionContextMap.get(version);
-    }
-
-    public static synchronized void registerExternalOxmModelProcessors(
-            Collection<ExternalOxmModelProcessor> processors) {
-        if (processors != null) {
-            for (ExternalOxmModelProcessor processor : processors) {
-                if (!oxmModelProcessorRegistry.contains(processor)) {
-                    oxmModelProcessorRegistry.add(processor);
-                }
-            }
-        }
-    }
-
-    public static Map<String, DynamicJAXBContext> getVersionContextMap() {
-        return versionContextMap;
-    }
-
-    private static synchronized void loadModel(String oxmVersion, DynamicJAXBContext jaxbContext) {
-        versionContextMap.put(oxmVersion, jaxbContext);
-        if (oxmModelProcessorRegistry != null) {
-            for (ExternalOxmModelProcessor processor : oxmModelProcessorRegistry) {
-                processor.onOxmVersionChange(org.onap.aai.datarouter.util.Version.valueOf(oxmVersion.toLowerCase()),
-                        jaxbContext);
-            }
-        }
-        logger.info(DataRouterMsgs.LOADED_OXM_FILE, oxmVersion);
-    }
-
-}
diff --git a/src/main/java/org/onap/aai/datarouter/schema/SchemaIngestPropertiesReader.java b/src/main/java/org/onap/aai/datarouter/schema/SchemaIngestPropertiesReader.java
deleted file mode 100644 (file)
index 76530ae..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-/**
- * ============LICENSE_START=======================================================
- * org.onap.aai
- * ================================================================================
- * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017-2018 Amdocs
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-package org.onap.aai.datarouter.schema;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URISyntaxException;
-import java.nio.file.Files;
-import java.nio.file.NoSuchFileException;
-import java.nio.file.Path;
-import java.nio.file.Paths;
-import java.util.Properties;
-import org.onap.aai.cl.eelf.LoggerFactory;
-import org.onap.aai.datarouter.logging.DataRouterMsgs;
-
-public class SchemaIngestPropertiesReader {
-
-    private static final String SCHEMA_INGEST_PROPERTIES_FILE = "schemaIngest.properties";
-    private static final String MSG_FAILED_LOAD_SCHEMA_INGEST_PROPERTIES = "Failed to load " + SCHEMA_INGEST_PROPERTIES_FILE;
-
-    private static final String SCHEMA_INGEST_PROPERTIES_LOCATION =
-            System.getProperty("CONFIG_HOME") + "/" + SCHEMA_INGEST_PROPERTIES_FILE;
-
-    private static org.onap.aai.cl.api.Logger logger =
-            LoggerFactory.getInstance().getLogger(SchemaIngestPropertiesReader.class.getName());
-
-    /**
-     * Gets the location of the OXM.
-     *
-     * @return the directory containing the OXM files
-     */
-    public String getNodeDir() {
-
-        Properties prop = new Properties();
-        try {
-            prop = loadFromFile(SCHEMA_INGEST_PROPERTIES_LOCATION);
-        } catch (NoSuchFileException e) {
-            try {
-                prop = loadFromClasspath(SCHEMA_INGEST_PROPERTIES_FILE);
-            } catch (URISyntaxException | IOException ef) {
-                logger.error(DataRouterMsgs.SCHEMA_INGEST_LOAD_ERROR, ef.getMessage());
-                throw new RuntimeException(MSG_FAILED_LOAD_SCHEMA_INGEST_PROPERTIES);
-            }
-        } catch (IOException ec) {
-            logger.error(DataRouterMsgs.SCHEMA_INGEST_LOAD_ERROR, ec.getMessage());
-            throw new RuntimeException(MSG_FAILED_LOAD_SCHEMA_INGEST_PROPERTIES);
-        }
-        return prop.getProperty("nodeDir");
-    }
-
-    private Properties loadFromFile(String filename) throws IOException {
-        Path configLocation = Paths.get(filename);
-        try (InputStream stream = Files.newInputStream(configLocation)) {
-            return loadProperties(stream);
-        }
-    }
-
-    private Properties loadFromClasspath(String resourceName) throws URISyntaxException, IOException {
-        Path path = Paths.get(ClassLoader.getSystemResource(resourceName).toURI());
-        try (InputStream stream = Files.newInputStream(path)) {
-            return loadProperties(stream);
-        }
-    }
-
-    private Properties loadProperties(InputStream stream) throws IOException {
-        Properties config = new Properties();
-        config.load(stream);
-        return config;
-    }
-}
diff --git a/src/main/java/org/onap/aai/datarouter/util/CrossEntityReference.java b/src/main/java/org/onap/aai/datarouter/util/CrossEntityReference.java
deleted file mode 100644 (file)
index 47d6105..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-/**
- * ============LICENSE_START=======================================================
- * org.onap.aai
- * ================================================================================
- * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017-2018 Amdocs
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-package org.onap.aai.datarouter.util;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Processing and entity wrapper for property transposition logic and UEB processing
- * 
- * @author DAVEA
- */
-public class CrossEntityReference {
-
-  private String targetEntityType;
-
-  private List<String> attributeNames;
-
-  public CrossEntityReference() {
-    this.targetEntityType = null;
-    this.attributeNames = new ArrayList<>();
-  }
-
-  public String getTargetEntityType() {
-    return targetEntityType;
-  }
-
-  public void setTargetEntityType(String targetEntityType) {
-    this.targetEntityType = targetEntityType;
-  }
-
-  public List<String> getAttributeNames() {
-    return attributeNames;
-  }
-
-  public void setAttributeNames(List<String> attributeNames) {
-    this.attributeNames = attributeNames;
-  }
-
-  public void addAttributeName(String attributeName) {
-    if (!this.attributeNames.contains(attributeName)) {
-      this.attributeNames.add(attributeName);
-    }
-  }
-
-  public void initialize(String crossEntityReferenceValueFromModel) {
-
-    if (crossEntityReferenceValueFromModel == null
-        || crossEntityReferenceValueFromModel.length() == 0) {
-      // or throw an exception due to failure to initialize
-      return;
-    }
-
-    String[] tokens = crossEntityReferenceValueFromModel.split(",");
-
-    if (tokens.length >= 2) {
-      this.targetEntityType = tokens[0];
-
-      for (int x = 1; x < tokens.length; x++) {
-        this.attributeNames.add(tokens[x]);
-      }
-    } else {
-      // throw a CrossEntityReferenceInitializationException??
-    }
-
-  }
-
-  @Override
-  public String toString() {
-    return "CrossEntityReference ["
-        + (targetEntityType != null ? "entityType=" + targetEntityType + ", " : "")
-        + (attributeNames != null ? "attributeNames=" + attributeNames : "") + "]";
-  }
-
-}
diff --git a/src/main/java/org/onap/aai/datarouter/util/EntityOxmReferenceHelper.java b/src/main/java/org/onap/aai/datarouter/util/EntityOxmReferenceHelper.java
deleted file mode 100644 (file)
index 3f05a92..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/**
- * ============LICENSE_START=======================================================
- * org.onap.aai
- * ================================================================================
- * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017-2018 Amdocs
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-package org.onap.aai.datarouter.util;
-
-import java.util.HashMap;
-
-import org.eclipse.persistence.jaxb.dynamic.DynamicJAXBContext;
-
-public class EntityOxmReferenceHelper implements ExternalOxmModelProcessor {
-
-   private static EntityOxmReferenceHelper _instance = null;
-   
-   private HashMap<Version, VersionedOxmEntities> versionedModels;
-   
-   protected EntityOxmReferenceHelper() {
-      this.versionedModels = new HashMap<>();
-   }
-   
-   public static EntityOxmReferenceHelper getInstance() {
-      if ( _instance == null ) {
-         _instance = new EntityOxmReferenceHelper();
-      }
-      
-      return _instance;
-   }
-   
-   
-   @Override
-   public void onOxmVersionChange(Version version, DynamicJAXBContext context) {
-      VersionedOxmEntities oxmEntities = new VersionedOxmEntities();
-      oxmEntities.initialize(context);
-      this.versionedModels.put(version, oxmEntities);
-      
-   }
-   
-   public VersionedOxmEntities getVersionedOxmEntities(Version version){ 
-      return this.versionedModels.get(version);
-   }
-
-}
diff --git a/src/main/java/org/onap/aai/datarouter/util/ExternalOxmModelProcessor.java b/src/main/java/org/onap/aai/datarouter/util/ExternalOxmModelProcessor.java
deleted file mode 100644 (file)
index 9406d30..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-/**
- * ============LICENSE_START=======================================================
- * org.onap.aai
- * ================================================================================
- * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017-2018 Amdocs
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-package org.onap.aai.datarouter.util;
-
-import org.eclipse.persistence.jaxb.dynamic.DynamicJAXBContext;
-
-/**
- * Exposes a registration and processing contract so that any load/change of an oxm version will
- * inform registered model processors.
- * 
- * @author davea
- */
-public interface ExternalOxmModelProcessor {
-  public void onOxmVersionChange(Version version, DynamicJAXBContext context);
-}
diff --git a/src/main/java/org/onap/aai/datarouter/util/Version.java b/src/main/java/org/onap/aai/datarouter/util/Version.java
deleted file mode 100644 (file)
index 62418ae..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * ============LICENSE_START=======================================================
- * org.onap.aai
- * ================================================================================
- * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017-2018 Amdocs
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-package org.onap.aai.datarouter.util;
-
-public enum Version {
-  v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20;
-}
\ No newline at end of file
diff --git a/src/main/java/org/onap/aai/datarouter/util/VersionedOxmEntities.java b/src/main/java/org/onap/aai/datarouter/util/VersionedOxmEntities.java
deleted file mode 100644 (file)
index fc34437..0000000
+++ /dev/null
@@ -1,349 +0,0 @@
-/**
- * ============LICENSE_START=======================================================
- * org.onap.aai
- * ================================================================================
- * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017-2018 Amdocs
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-package org.onap.aai.datarouter.util;
-
-import org.eclipse.persistence.dynamic.DynamicType;
-import org.eclipse.persistence.internal.helper.DatabaseField;
-import org.eclipse.persistence.internal.oxm.XPathFragment;
-import org.eclipse.persistence.internal.oxm.mappings.Descriptor;
-import org.eclipse.persistence.jaxb.dynamic.DynamicJAXBContext;
-import org.eclipse.persistence.mappings.DatabaseMapping;
-import org.eclipse.persistence.oxm.XMLField;
-import org.onap.aai.datarouter.entity.OxmEntityDescriptor;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.Vector;
-
-/**
- * Builds up a representation of the versioned entities in a way that they can be cross referenced
- * in a data-driven way
- *
- * @author DAVEA
- */
-public class VersionedOxmEntities {
-
-    private static final String REST_ROOT_ENTITY = "inventory";
-
-    private HashMap<String, Boolean> crossEntityReferenceContainerLookup = new HashMap<>();
-    private HashMap<String, CrossEntityReference> crossEntityReferenceLookup = new HashMap<>();
-    private Map<String, DynamicType> entityTypeLookup = new LinkedHashMap<>();
-    private Map<String, OxmEntityDescriptor> searchableEntityDescriptors = new HashMap<>();
-    private Map<String, OxmEntityDescriptor> suggestableEntityDescriptors = new HashMap<>();
-    private Map<String, OxmEntityDescriptor> entityAliasDescriptors = new HashMap<>();
-
-
-    public void initialize(DynamicJAXBContext context) {
-        parseOxmContext(context);
-        buildCrossEntityReferenceCollections(REST_ROOT_ENTITY, new HashSet<String>());
-        populateSearchableDescriptors(context);
-    }
-
-    /**
-     * The big goal for these methods is to make the processing as generic and model driven as possible.
-     * There are only two exceptions to this rule, at the moment.  I needed to hard-coded the top level REST data
-     * model entity type, which is "inventory" for now.   And as this class is heavily focused and coupled towards
-     * building a version specific set of lookup structures for the "crossEntityReference" model attribute, it possesses
-     * knowledge of that attribute whether it exists or not in the DynamicJAXBContext we are currently analyzing.
-     * <p>
-     * This method will build two collections:
-     * <p>
-     * 1)  A list of entity types that can have nested entities containing cross entity reference definitions.
-     * The purpose of this collection is a fail-fast test when processing UEB events so we can quickly determine if
-     * it is necessary to deeply parse the event looking for cross entity reference attributes which not exist.
-     * <p>
-     * For example, looking at a service-instance <=> inventory path:
-     * <p>
-     * inventory (true)
-     * -> business (true)
-     * -> customers  (true)
-     * -> customer  (true)
-     * -> service-subscriptions (true)
-     * -> service-subscription (CER defined here in the model)   (true)
-     * -> service-instances    (false)
-     * -> service-instance   (false)
-     * <p>
-     * Because service-subscription contains a model definition of CER, in the first collection all the types in the
-     * tree will indicate that it possesses one or more contained entity types with a cross-entity-reference definition.
-     * <p>
-     * 2)  A lookup for { entityType => CrossEntityReference } so we can quickly access the model definition of a CER
-     * for a specific entity type when we begin extracting parent attributes for transposition into nested child entity
-     * types.
-     *
-     * @param entityType
-     * @param checked
-     * @return
-     */
-    protected boolean buildCrossEntityReferenceCollections(String entityType, HashSet<String> checked) {
-
-      /*
-       * To short-circuit infinite loops, make sure this entityType hasn't
-       * already been checked
-       */
-
-        if (checked.contains(entityType)) {
-            return false;
-        } else {
-            checked.add(entityType);
-        }
-
-        DynamicType parentType = entityTypeLookup.get(entityType);
-        DynamicType childType;
-        boolean returnValue = false;
-
-        if (parentType == null) {
-            return returnValue;
-        }
-
-      /*
-       * Check if current descriptor contains the cross-entity-reference
-       * attribute. If it does not walk the entity model looking for nested
-       * entity types that may contain the reference.
-       */
-
-        Map<String, String> properties = parentType.getDescriptor().getProperties();
-        if (properties != null) {
-            for (Map.Entry<String, String> entry : properties.entrySet()) {
-                if ("crossEntityReference".equalsIgnoreCase(entry.getKey())) {
-                    returnValue = true;
-                    CrossEntityReference cer = new CrossEntityReference();
-                    cer.initialize(entry.getValue());
-                    crossEntityReferenceLookup.put(entityType, cer);
-                    //System.out.println("entityType = " + entityType + " contains a CER instance = " + returnValue);
-                    // return true;
-                }
-            }
-        }
-
-        Vector<DatabaseField> fields = parentType.getDescriptor().getAllFields();
-
-        if (fields != null) {
-
-            XMLField xmlField;
-            for (DatabaseField f : fields) {
-
-                if (f instanceof XMLField) {
-                    xmlField = (XMLField) f;
-                    XPathFragment xpathFragment = xmlField.getXPathFragment();
-                    String entityShortName = xpathFragment.getLocalName();
-
-                    childType = entityTypeLookup.get(entityShortName);
-
-                    if (childType != null) {
-
-                        if (!checked.contains(entityShortName)) {
-
-                            if (buildCrossEntityReferenceCollections(entityShortName, checked)) {
-                                returnValue = true;
-                            }
-
-                        }
-
-                        checked.add(entityShortName);
-
-                    }
-
-                }
-
-            }
-
-        }
-
-        crossEntityReferenceContainerLookup.put(entityType, Boolean.valueOf(returnValue));
-        return returnValue;
-    }
-
-    private void populateSearchableDescriptors(DynamicJAXBContext oxmContext) {
-        List<Descriptor> descriptorsList = oxmContext.getXMLContext().getDescriptors();
-        OxmEntityDescriptor newOxmEntity;
-
-        for (Descriptor desc : descriptorsList) {
-
-            DynamicType entity = (DynamicType) oxmContext.getDynamicType(desc.getAlias());
-
-            //LinkedHashMap<String, String> oxmProperties = new LinkedHashMap<String, String>();
-            String primaryKeyAttributeNames = null;
-
-            //Not all fields have key attributes
-            if (desc.getPrimaryKeyFields() != null) {
-                primaryKeyAttributeNames = desc.getPrimaryKeyFields()
-                        .toString().replaceAll("/text\\(\\)", "").replaceAll("\\[", "").replaceAll("\\]", "");
-            }
-
-            String entityName = desc.getDefaultRootElement();
-
-            Map<String, String> properties = entity.getDescriptor().getProperties();
-            if (properties != null) {
-                for (Map.Entry<String, String> entry : properties.entrySet()) {
-                    if ("searchable".equalsIgnoreCase(entry.getKey())) {
-                  
-                  /*
-                   * we can do all the work here, we don't have a create additional collections for 
-                   * subsequent passes
-                   */
-                        newOxmEntity = new OxmEntityDescriptor();
-                        newOxmEntity.setEntityName(entityName);
-                        newOxmEntity
-                                .setPrimaryKeyAttributeName(Arrays.asList(primaryKeyAttributeNames.split(",")));
-                        newOxmEntity.setSearchableAttributes(Arrays.asList(entry.getValue().split(",")));
-                        searchableEntityDescriptors.put(entityName, newOxmEntity);
-                    } else if ("containsSuggestibleProps".equalsIgnoreCase(entry.getKey())) {
-                        newOxmEntity = new OxmEntityDescriptor();
-                        newOxmEntity.setEntityName(entityName);
-                        newOxmEntity.setSuggestableEntity(true);
-                        Vector<DatabaseMapping> descriptorMaps = entity.getDescriptor().getMappings();
-                        List<String> listOfSuggestableAttributes = new ArrayList<>();
-
-                        for (DatabaseMapping descMap : descriptorMaps) {
-                            if (descMap.isAbstractDirectMapping()) {
-
-                                if (descMap.getProperties().get("suggestibleOnSearch") != null) {
-                                    String suggestableOnSearchString = String.valueOf(
-                                            descMap.getProperties().get("suggestibleOnSearch"));
-
-                                    boolean isSuggestibleOnSearch = Boolean.valueOf(suggestableOnSearchString);
-
-                                    if (isSuggestibleOnSearch) {
-                         /* Grab attribute types for suggestion */
-                                        String attributeName = descMap.getField().getName()
-                                                .replaceAll("/text\\(\\)", "");
-                                        listOfSuggestableAttributes.add(attributeName);
-                                    }
-                                }
-                            }
-                        }
-                        newOxmEntity.setSuggestableAttributes(listOfSuggestableAttributes);
-                        suggestableEntityDescriptors.put(entityName, newOxmEntity);
-                    } else if ("suggestionAliases".equalsIgnoreCase(entry.getKey())) {
-                        newOxmEntity = new OxmEntityDescriptor();
-                        newOxmEntity.setEntityName(entityName);
-                        newOxmEntity.setAlias(Arrays.asList(entry.getValue().split(",")));
-                        entityAliasDescriptors.put(entityName, newOxmEntity);
-                    }
-                }
-            }
-
-        }
-
-    }
-
-    public Map<String, OxmEntityDescriptor> getSearchableEntityDescriptors() {
-        return searchableEntityDescriptors;
-    }
-
-    public OxmEntityDescriptor getSearchableEntityDescriptor(String entityType) {
-        return searchableEntityDescriptors.get(entityType);
-    }
-
-
-    public HashMap<String, Boolean> getCrossEntityReferenceContainers() {
-        return crossEntityReferenceContainerLookup;
-    }
-
-    public HashMap<String, CrossEntityReference> getCrossEntityReferences() {
-        return crossEntityReferenceLookup;
-    }
-
-
-    private void parseOxmContext(DynamicJAXBContext oxmContext) {
-        List<Descriptor> descriptorsList = oxmContext.getXMLContext().getDescriptors();
-
-        for (Descriptor desc : descriptorsList) {
-
-            DynamicType entity = (DynamicType) oxmContext.getDynamicType(desc.getAlias());
-
-            String entityName = desc.getDefaultRootElement();
-
-            entityTypeLookup.put(entityName, entity);
-
-        }
-
-    }
-
-    public boolean entityModelContainsCrossEntityReference(String containerEntityType) {
-        Boolean v = crossEntityReferenceContainerLookup.get(containerEntityType);
-
-        if (v == null) {
-            return false;
-        }
-
-        return v;
-    }
-
-    public boolean entityContainsCrossEntityReference(String entityType) {
-        return crossEntityReferenceLookup.get(entityType) != null;
-    }
-
-    public CrossEntityReference getCrossEntityReference(String entityType) {
-        return crossEntityReferenceLookup.get(entityType);
-    }
-
-    public Map<String, OxmEntityDescriptor> getSuggestableEntityDescriptors() {
-        return suggestableEntityDescriptors;
-    }
-
-    public void setSuggestableEntityDescriptors(
-            Map<String, OxmEntityDescriptor> suggestableEntityDescriptors) {
-        this.suggestableEntityDescriptors = suggestableEntityDescriptors;
-    }
-
-    public Map<String, OxmEntityDescriptor> getEntityAliasDescriptors() {
-        return entityAliasDescriptors;
-    }
-
-    public void setEntityAliasDescriptors(Map<String, OxmEntityDescriptor> entityAliasDescriptors) {
-        this.entityAliasDescriptors = entityAliasDescriptors;
-    }
-
-    public void extractEntities(String entityType, DynamicJAXBContext context, Collection<DynamicType> entities) {
-
-
-    }
-
-    public String dumpCrossEntityReferenceContainers() {
-
-        Set<String> keys = crossEntityReferenceContainerLookup.keySet();
-        StringBuilder sb = new StringBuilder(128);
-
-        for (String key : keys) {
-
-            if (crossEntityReferenceContainerLookup.get(key)) {
-                sb.append("\n").append("Entity-Type = '" + key + "' contains a Cross-Entity-Reference.");
-            }
-        }
-
-
-        return sb.toString();
-
-    }
-    
-    public Map<String, DynamicType> getEntityTypeLookup() {
-      return entityTypeLookup;
-    }
-
-}
index d922a7f..3194f5e 100644 (file)
@@ -95,11 +95,7 @@ ROUTING_RESPONSE=\
             
 OP_TIME=\
             DR0013I|\
-            {0} took {1} ms.            
-
-LOADED_OXM_FILE=\
-            DR0014I|\
-            Successfully loaded schema: {0}
+            {0} took {1} ms.
             
 STARTUP_FAILURE=\
             DR2001E|\
@@ -115,11 +111,11 @@ QUERY_ROUTING_ERR=\
             
 LOAD_PROPERTIES_FAILURE=\
             DR3001E|\
-            File {0} cannot be loaded into the map.                        
+            File {0} cannot be loaded into the map.
 
 FILE_MON_BLOCK_ERR=\
             DR3002E|\
-            Error in the file monitor block.            
+            Error in the file monitor block.
             
 CREATE_PROPERTY_MAP_ERR=\
             DR3003E|\
@@ -171,7 +167,3 @@ FAIL_TO_CREATE_UPDATE_DOC=\
 LOAD_OXM_ERROR=\
             DR5000E|\
             Unable to load Oxm model: {0}\
-
-SCHEMA_INGEST_LOAD_ERROR=\
-            DR5001E|\
-            Unable to load schema ingest properties file due to : {0}                      
index 665b8f9..1f71dcd 100644 (file)
@@ -22,7 +22,7 @@ package org.onap.aai.datarouter.entity;
 \r
 import org.junit.Assert;\r
 import org.junit.Test;\r
-import org.onap.aai.datarouter.util.CrossEntityReference;\r
+import org.onap.aai.util.CrossEntityReference;\r
 \r
 import java.io.IOException;\r
 import java.security.NoSuchAlgorithmException;\r
@@ -95,34 +95,6 @@ public class AaiEventEntityTest {
         Assert.assertNotNull(entity.toString());\r
     }\r
 \r
-    @Test\r
-    public void testOxmEntityDescriptor(){\r
-        OxmEntityDescriptor descriptor = new OxmEntityDescriptor();\r
-        descriptor.setEntityName("entity-1");\r
-        Assert.assertEquals(descriptor.getEntityName(), "entity-1");\r
-\r
-        descriptor.setPrimaryKeyAttributeName(new ArrayList<String>());\r
-        Assert.assertTrue(descriptor.getPrimaryKeyAttributeName().size()==0);\r
-\r
-        Assert.assertFalse(descriptor.hasSearchableAttributes());\r
-\r
-        List<String> searchableAttr = new ArrayList<String>();\r
-        searchableAttr.add("search");\r
-        descriptor.setSearchableAttributes(searchableAttr);\r
-        Assert.assertTrue(descriptor.getSearchableAttributes().size()==1);\r
-\r
-        Assert.assertTrue(descriptor.hasSearchableAttributes());\r
-\r
-        CrossEntityReference ref = new CrossEntityReference();\r
-        descriptor.setCrossEntityReference(ref);\r
-        Assert.assertEquals(descriptor.getCrossEntityReference(), ref);\r
-\r
-        descriptor.setSuggestableEntity(true);\r
-        Assert.assertTrue(descriptor.isSuggestableEntity());\r
-\r
-        Assert.assertNotNull(descriptor.toString());\r
-    }\r
-\r
     @Test\r
     public void testPolicyResponse(){\r
         PolicyResponse response = new PolicyResponse(PolicyResponse.ResponseType.SUCCESS, "response-data");\r
diff --git a/src/test/java/org/onap/aai/datarouter/schema/OxmModelLoaderTest.java b/src/test/java/org/onap/aai/datarouter/schema/OxmModelLoaderTest.java
deleted file mode 100644 (file)
index a92d739..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * ============LICENSE_START=======================================================
- * org.onap.aai
- * ================================================================================
- * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017-2018 Amdocs
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-package org.onap.aai.datarouter.schema;
-
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import java.util.ArrayList;
-import org.eclipse.persistence.dynamic.DynamicType;
-import org.eclipse.persistence.internal.helper.DatabaseField;
-import org.eclipse.persistence.jaxb.dynamic.DynamicJAXBContext;
-import org.eclipse.persistence.mappings.DatabaseMapping;
-import org.junit.Test;
-import org.onap.aai.datarouter.schema.OxmModelLoader;
-import org.onap.aai.datarouter.util.EntityOxmReferenceHelper;
-import org.onap.aai.datarouter.util.ExternalOxmModelProcessor;
-import org.onap.aai.setup.Version;
-
-public class OxmModelLoaderTest {
-
-    @Test
-    public void testLoadingMultipleOxmFiles() {
-        ArrayList<ExternalOxmModelProcessor> externalOxmModelProcessors = new ArrayList<ExternalOxmModelProcessor>();
-        externalOxmModelProcessors.add(EntityOxmReferenceHelper.getInstance());
-        OxmModelLoader.registerExternalOxmModelProcessors(externalOxmModelProcessors);
-        OxmModelLoader.loadModels();
-
-        DynamicJAXBContext jaxbContext = OxmModelLoader.getContextForVersion(Version.getLatest().toString());
-
-        DynamicType pserver = jaxbContext.getDynamicType("Pserver");
-        DynamicType genericVnf = jaxbContext.getDynamicType("GenericVnf");
-
-        assertNotNull(pserver);
-        assertNotNull(genericVnf);
-
-        DatabaseMapping mapping = pserver.getDescriptor().getMappings().firstElement();
-        if (mapping.isAbstractDirectMapping()) {
-            DatabaseField f = mapping.getField();
-            String keyName = f.getName().substring(0, f.getName().indexOf("/"));
-            assertTrue(keyName.equals("hostname"));
-        }
-
-        mapping = genericVnf.getDescriptor().getMappings().firstElement();
-        if (mapping.isAbstractDirectMapping()) {
-            DatabaseField f = mapping.getField();
-            String keyName = f.getName().substring(0, f.getName().indexOf("/"));
-            assertTrue(keyName.equals("vnf-id"));
-        }
-
-    }
-}
diff --git a/src/test/java/org/onap/aai/datarouter/util/CrossEntityReferenceTest.java b/src/test/java/org/onap/aai/datarouter/util/CrossEntityReferenceTest.java
deleted file mode 100644 (file)
index 3e0593f..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/**\r
- * ============LICENSE_START=======================================================\r
- * org.onap.aai\r
- * ================================================================================\r
- * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.\r
- * Copyright © 2017-2018 Amdocs\r
- * ================================================================================\r
- * Licensed under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- *\r
- *       http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * Unless required by applicable law or agreed to in writing, software\r
- * distributed under the License is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * ============LICENSE_END=========================================================\r
- */\r
-package org.onap.aai.datarouter.util;\r
-\r
-import org.junit.Assert;\r
-import org.junit.Test;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import static org.junit.Assert.*;\r
-\r
-public class CrossEntityReferenceTest {\r
-\r
-    @Test\r
-    public void testCrossEntityReference() {\r
-\r
-        CrossEntityReference reference = new CrossEntityReference();\r
-\r
-        reference.setTargetEntityType("entity-type");\r
-        Assert.assertEquals(reference.getTargetEntityType(),"entity-type");\r
-\r
-        reference.setAttributeNames(new ArrayList<String>());\r
-        Assert.assertTrue(reference.getAttributeNames().size()==0);\r
-\r
-        reference.addAttributeName("attribute");\r
-        Assert.assertEquals(reference.getAttributeNames().get(0),"attribute");\r
-    }\r
-\r
-\r
-}
\ No newline at end of file