You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@atlas.apache.org by ma...@apache.org on 2018/05/25 20:07:54 UTC

[01/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Repository: atlas
Updated Branches:
  refs/heads/branch-1.0 eb4c3d95b -> b0ecc36ac


http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/metadatacollection/properties/MatchCriteria.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/metadatacollection/properties/MatchCriteria.java b/omrs/src/main/java/org/apache/atlas/omrs/metadatacollection/properties/MatchCriteria.java
deleted file mode 100644
index 300f28a..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/metadatacollection/properties/MatchCriteria.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.metadatacollection.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The MatchCriteria enum defines how the metadata instances in the metadata collection should be matched
- * against the properties supplied on the search request.
- * <ul>
- *     <li>ALL means all properties must match.</li>
- *     <li>ANY means a match on any of properties is good enough.</li>
- *     <li>NONE means return instances where none of the supplied properties match.</li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum MatchCriteria implements Serializable
-{
-    ALL  (0, "All",  "All properties must match."),
-    ANY  (1, "Any",  "A match on any of properties in the instance is good enough."),
-    NONE (2, "None", "Return instances where none of the supplied properties match.");
-
-    private static final long serialVersionUID = 1L;
-
-    private int     ordinal;
-    private String  name;
-    private String  description;
-
-    /**
-     * Constructor to set up a single instances of the enum.
-     *
-     * @param ordinal - numerical representation of the match criteria
-     * @param name - default string name of the match criteria
-     * @param description - default string description of the match criteria
-     */
-    MatchCriteria(int  ordinal, String name, String description)
-    {
-        this.ordinal = ordinal;
-        this.name = name;
-        this.description = description;
-    }
-
-    /**
-     * Return the numeric representation of the match criteria.
-     *
-     * @return int ordinal
-     */
-    public int getOrdinal() { return ordinal; }
-
-
-    /**
-     * Return the default name of the match criteria.
-     *
-     * @return String name
-     */
-    public String getName() { return name; }
-
-
-    /**
-     * Return the default description of the match criteria.
-     *
-     * @return String description
-     */
-    public String getDescription() { return description; }
-}


[03/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/metadatacollection/OMRSMetadataCollection.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/metadatacollection/OMRSMetadataCollection.java b/omrs/src/main/java/org/apache/atlas/omrs/metadatacollection/OMRSMetadataCollection.java
deleted file mode 100644
index ef3c3d7..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/metadatacollection/OMRSMetadataCollection.java
+++ /dev/null
@@ -1,2139 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.metadatacollection;
-
-import org.apache.atlas.omrs.ffdc.*;
-import org.apache.atlas.omrs.ffdc.exception.*;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.metadatacollection.properties.MatchCriteria;
-import org.apache.atlas.omrs.metadatacollection.properties.SequencingOrder;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.*;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.*;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-import java.util.List;
-import java.util.Date;
-
-/**
- * <p>
- *     OMRSMetadataCollection is the common interface for working with the contents of a metadata repository.
- *     Within a metadata collection are the type definitions (TypeDefs) and metadata instances (Entities and
- *     Relationships).
- *
- *     The methods on OMRSMetadataCollection are in the following major groups:
- * </p>
- * <ul>
- *     <li><b>Methods to retrieve information about the metadata repository</b> -
- *         Used to retrieve or confirm the identity of the metadata repository
- *     </li>
- *     <li><b>Methods for working with typedefs</b> -
- *         Typedefs are used to define the type model for open metadata.
- *         The open metadata support had a comprehensive set of typedefs implemented, and these can be augmented by
- *         different vendors or applications.  The typedefs can be queried, created, updated and deleted though the
- *         metadata collection.
- *     </li>
- *
- *     <li><b>Methods for querying Entities and Relationships</b> -
- *         The metadata repository stores instances of the typedefs as metadata instances.
- *         Principally these are entities (nodes in the graph) and relationships (links between nodes).
- *         Both the entities and relationships can have properties.
- *         The entity may also have structured properties called structs and classifications attached.
- *         This second group of methods supports a range of queries to retrieve these instances.
- *     </li>
- *
- *     <li><b>Methods for maintaining the instances</b> -
- *         The fourth group of methods supports the maintenance of the metadata instances.  Each instance as a status
- *         (see InstanceStatus) that allows an instance to be proposed, drafted and approved before it becomes
- *         active.  The instances can also be soft-deleted and restored or purged from the metadata
- *         collection.
- *     </li>
- *     <li>
- *         <b>Methods for repairing the metadata collections of the cohort</b> -
- *         The fifth group of methods are for editing the control information of entities and relationships to
- *         manage changes in the cohort.  These methods are advanced methods and are rarely used.
- *     </li>
- *     <li>
- *         <b>Methods for local maintenance of a metadata collection</b>
- *         The final group of methods are for removing reference copies of the metadata instances.  These updates
- *         are not broadcast to the rest of the Cohort as events.
- *     </li>
- * </ul>
- */
-public abstract class OMRSMetadataCollection
-{
-    static final private String       defaultRepositoryName = "Open Metadata Repository";
-
-    protected String                  metadataCollectionId;                         /* Initialized in constructor */
-    protected OMRSRepositoryHelper    repositoryHelper    = null;                   /* Initialized in constructor */
-    protected OMRSRepositoryValidator repositoryValidator = null;                   /* Initialized in constructor */
-    protected OMRSRepositoryConnector parentConnector     = null;                   /* Initialized in constructor */
-    protected String                  repositoryName      = defaultRepositoryName;  /* Initialized in constructor */
-
-
-    /**
-     * Constructor to save the metadata collection id.
-     *
-     * @param metadataCollectionId - unique identifier for the metadata collection
-     */
-    @Deprecated
-    public OMRSMetadataCollection(String  metadataCollectionId)
-    {
-        this.metadataCollectionId = metadataCollectionId;
-
-        if (metadataCollectionId == null)
-        {
-            String            actionDescription = "OMRS Metadata Collection Constructor";
-
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_METADATA_COLLECTION_ID;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(defaultRepositoryName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              actionDescription,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-
-        }
-    }
-
-
-    /**
-     * Constructor to save the metadata collection id, repository helper and repository validator.
-     *
-     * @param parentConnector - connector that this metadata collection supports.  The connector has the information
-     *                        to call the metadata repository.
-     * @param repositoryName - name of this repository.
-     * @param repositoryHelper - helper class for building types and instances
-     * @param repositoryValidator - validator class for checking open metadata repository objects and parameters.
-     * @param metadataCollectionId - unique identifier for the metadata collection
-     */
-    public OMRSMetadataCollection(OMRSRepositoryConnector parentConnector,
-                                  String                  repositoryName,
-                                  String                  metadataCollectionId,
-                                  OMRSRepositoryHelper    repositoryHelper,
-                                  OMRSRepositoryValidator repositoryValidator)
-    {
-        this.metadataCollectionId = metadataCollectionId;
-
-        if (metadataCollectionId == null)
-        {
-            String            actionDescription = "OMRS Metadata Collection Constructor";
-
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_METADATA_COLLECTION_ID;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(repositoryName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              actionDescription,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-
-        }
-
-        this.repositoryHelper = repositoryHelper;
-        this.repositoryValidator = repositoryValidator;
-        this.parentConnector = parentConnector;
-        this.repositoryName = repositoryName;
-    }
-
-
-    /**
-     * Verify that a metadata collection is operating with a parent connector.  This should always be the case but
-     * if the metadata collection is being consumed in an unorthodox manner then this exception will catch it.
-     *
-     * @param methodName - name of method called
-     * @throws RepositoryErrorException - null repository connector
-     */
-    public void validateRepositoryConnector(String     methodName) throws RepositoryErrorException
-    {
-        if (parentConnector == null)
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NO_REPOSITORY_CONNECTOR_FOR_COLLECTION;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(methodName, repositoryName);
-
-            throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction());
-        }
-
-        if (repositoryValidator == null)
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NO_REPOSITORY_VALIDATOR_FOR_COLLECTION;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(methodName, repositoryName);
-
-            throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction());
-        }
-
-        if (repositoryHelper == null)
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NO_REPOSITORY_HELPER_FOR_COLLECTION;
-            String        errorMessage = errorCode.getErrorMessageId()
-                    + errorCode.getFormattedErrorMessage(methodName, repositoryName);
-
-            throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction());
-        }
-    }
-
-
-    /* ======================================================================
-     * Group 1: Confirm the identity of the metadata repository being called.
-     */
-
-    /**
-     * Returns the identifier of the metadata repository.  This is the identifier used to register the
-     * metadata repository with the metadata repository cohort.  It is also the identifier used to
-     * identify the home repository of a metadata instance.
-     *
-     * @return String - metadata collection id.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     */
-    public String      getMetadataCollectionId() throws RepositoryErrorException
-    {
-        return metadataCollectionId;
-    }
-
-
-    /* ==============================
-     * Group 2: Working with typedefs
-     */
-
-
-    /**
-     * Returns the list of different types of metadata organized into two groups.  The first are the
-     * attribute type definitions (AttributeTypeDefs).  These provide types for properties in full
-     * type definitions.  Full type definitions (TypeDefs) describe types for entities, relationships
-     * and classifications.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @return TypeDefGallery - List of different categories of type definitions.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract TypeDefGallery getAllTypes(String  userId) throws RepositoryErrorException,
-                                                                      UserNotAuthorizedException;
-
-
-    /**
-     * Returns a list of type definitions that have the specified name.  Type names should be unique.  This
-     * method allows wildcard character to be included in the name.  These are * (asterisk) for an
-     * arbitrary string of characters and ampersand for an arbitrary character.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - name of the TypeDefs to return (including wildcard characters).
-     * @return TypeDefGallery - List of different categories of type definitions.
-     * @throws InvalidParameterException - the name of the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract TypeDefGallery findTypesByName(String userId,
-                                                   String name) throws InvalidParameterException,
-                                                                       RepositoryErrorException,
-                                                                       UserNotAuthorizedException;
-
-
-    /**
-     * Returns all of the TypeDefs for a specific category.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param category - enum value for the category of TypeDef to return.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the TypeDefCategory is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract List<TypeDef> findTypeDefsByCategory(String          userId,
-                                                         TypeDefCategory category) throws InvalidParameterException,
-                                                                                          RepositoryErrorException,
-                                                                                          UserNotAuthorizedException;
-
-    /**
-     * Returns all of the AttributeTypeDefs for a specific category.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param category - enum value for the category of an AttributeTypeDef to return.
-     * @return AttributeTypeDefs list.
-     * @throws InvalidParameterException - the TypeDefCategory is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract List<AttributeTypeDef> findAttributeTypeDefsByCategory(String                   userId,
-                                                                           AttributeTypeDefCategory category) throws InvalidParameterException,
-                                                                                                                     RepositoryErrorException,
-                                                                                                                     UserNotAuthorizedException;
-
-    /**
-     * Return the TypeDefs that have the properties matching the supplied match criteria.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param matchCriteria - TypeDefProperties - a list of property names and values.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the matchCriteria is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract List<TypeDef> findTypeDefsByProperty(String            userId,
-                                                         TypeDefProperties matchCriteria) throws InvalidParameterException,
-                                                                                                 RepositoryErrorException,
-                                                                                                 UserNotAuthorizedException;
-
-
-    /**
-     * Return the types that are linked to the elements from the specified standard.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param standard - name of the standard - null means any.
-     * @param organization - name of the organization - null means any.
-     * @param identifier - identifier of the element in the standard - null means any.
-     * @return TypeDefs list - each entry in the list contains a TypeDef.  This is is a structure
-     * describing the TypeDef's category and properties.
-     * @throws InvalidParameterException - all attributes of the external id are null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract List<TypeDef> findTypesByExternalID(String    userId,
-                                                         String    standard,
-                                                         String    organization,
-                                                         String    identifier) throws InvalidParameterException,
-                                                                                      RepositoryErrorException,
-                                                                                      UserNotAuthorizedException;
-
-    /**
-     * Return the TypeDefs that match the search criteria.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param searchCriteria - String - search criteria.
-     * @return TypeDefs list - each entry in the list contains a TypeDef.  This is is a structure
-     * describing the TypeDef's category and properties.
-     * @throws InvalidParameterException - the searchCriteria is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract List<TypeDef> searchForTypeDefs(String userId,
-                                                    String searchCriteria) throws InvalidParameterException,
-                                                                                  RepositoryErrorException,
-                                                                                  UserNotAuthorizedException;
-
-
-    /**
-     * Return the TypeDef identified by the GUID.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique id of the TypeDef
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - The requested TypeDef is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract TypeDef getTypeDefByGUID(String    userId,
-                                             String    guid) throws InvalidParameterException,
-                                                                    RepositoryErrorException,
-                                                                    TypeDefNotKnownException,
-                                                                    UserNotAuthorizedException;
-
-    /**
-     * Return the AttributeTypeDef identified by the GUID.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique id of the TypeDef
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - The requested TypeDef is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract AttributeTypeDef getAttributeTypeDefByGUID(String    userId,
-                                                               String    guid) throws InvalidParameterException,
-                                                                                      RepositoryErrorException,
-                                                                                      TypeDefNotKnownException,
-                                                                                      UserNotAuthorizedException;
-
-
-    /**
-     * Return the TypeDef identified by the unique name.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - String name of the TypeDef.
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the name is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract TypeDef getTypeDefByName(String    userId,
-                                             String    name) throws InvalidParameterException,
-                                                                    RepositoryErrorException,
-                                                                    TypeDefNotKnownException,
-                                                                    UserNotAuthorizedException;
-
-
-    /**
-     * Return the AttributeTypeDef identified by the unique name.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - String name of the TypeDef.
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the name is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract AttributeTypeDef getAttributeTypeDefByName(String    userId,
-                                                               String    name) throws InvalidParameterException,
-                                                                                      RepositoryErrorException,
-                                                                                      TypeDefNotKnownException,
-                                                                                      UserNotAuthorizedException;
-
-
-    /**
-     * Create a collection of related types.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newTypes - TypeDefGalleryResponse structure describing the new AttributeTypeDefs and TypeDefs.
-     * @throws InvalidParameterException - the new TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefKnownException - the TypeDef is already stored in the repository.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract void addTypeDefGallery(String          userId,
-                                           TypeDefGallery  newTypes) throws InvalidParameterException,
-                                                                            RepositoryErrorException,
-                                                                            TypeDefNotSupportedException,
-                                                                            TypeDefKnownException,
-                                                                            TypeDefConflictException,
-                                                                            InvalidTypeDefException,
-                                                                            FunctionNotSupportedException,
-                                                                            UserNotAuthorizedException;
-
-
-    /**
-     * Create a definition of a new TypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newTypeDef - TypeDef structure describing the new TypeDef.
-     * @throws InvalidParameterException - the new TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefKnownException - the TypeDef is already stored in the repository.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract void addTypeDef(String       userId,
-                                    TypeDef      newTypeDef) throws InvalidParameterException,
-                                                                    RepositoryErrorException,
-                                                                    TypeDefNotSupportedException,
-                                                                    TypeDefKnownException,
-                                                                    TypeDefConflictException,
-                                                                    InvalidTypeDefException,
-                                                                    FunctionNotSupportedException,
-                                                                    UserNotAuthorizedException;
-
-    /**
-     * Create a definition of a new AttributeTypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newAttributeTypeDef - TypeDef structure describing the new TypeDef.
-     * @throws InvalidParameterException - the new TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefKnownException - the TypeDef is already stored in the repository.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract void addAttributeTypeDef(String             userId,
-                                             AttributeTypeDef   newAttributeTypeDef) throws InvalidParameterException,
-                                                                                            RepositoryErrorException,
-                                                                                            TypeDefNotSupportedException,
-                                                                                            TypeDefKnownException,
-                                                                                            TypeDefConflictException,
-                                                                                            InvalidTypeDefException,
-                                                                                            FunctionNotSupportedException,
-                                                                                            UserNotAuthorizedException;
-
-
-    /**
-     * Verify that a definition of a TypeDef is either new - or matches the definition already stored.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param typeDef - TypeDef structure describing the TypeDef to test.
-     * @return boolean - true means the TypeDef matches the local definition - false means the TypeDef is not known.
-     * @throws InvalidParameterException - the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract boolean verifyTypeDef(String       userId,
-                                          TypeDef      typeDef) throws InvalidParameterException,
-                                                                       RepositoryErrorException,
-                                                                       TypeDefNotSupportedException,
-                                                                       TypeDefConflictException,
-                                                                       InvalidTypeDefException,
-                                                                       UserNotAuthorizedException;
-
-
-    /**
-     * Verify that a definition of an AttributeTypeDef is either new - or matches the definition already stored.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param attributeTypeDef - TypeDef structure describing the TypeDef to test.
-     * @return boolean - true means the TypeDef matches the local definition - false means the TypeDef is not known.
-     * @throws InvalidParameterException - the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract boolean verifyAttributeTypeDef(String            userId,
-                                                   AttributeTypeDef  attributeTypeDef) throws InvalidParameterException,
-                                                                                              RepositoryErrorException,
-                                                                                              TypeDefNotSupportedException,
-                                                                                              TypeDefConflictException,
-                                                                                              InvalidTypeDefException,
-                                                                                              UserNotAuthorizedException;
-
-
-    /**
-     * Update one or more properties of the TypeDef.  The TypeDefPatch controls what types of updates
-     * are safe to make to the TypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param typeDefPatch - TypeDef patch describing change to TypeDef.
-     * @return updated TypeDef
-     * @throws InvalidParameterException - the TypeDefPatch is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws PatchErrorException - the TypeDef can not be updated because the supplied patch is incompatible
-     *                               with the stored TypeDef.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract TypeDef updateTypeDef(String         userId,
-                                          TypeDefPatch   typeDefPatch) throws InvalidParameterException,
-                                                                              RepositoryErrorException,
-                                                                              TypeDefNotKnownException,
-                                                                              PatchErrorException,
-                                                                              FunctionNotSupportedException,
-                                                                              UserNotAuthorizedException;
-
-
-    /**
-     * Delete the TypeDef.  This is only possible if the TypeDef has never been used to create instances or any
-     * instances of this TypeDef have been purged from the metadata collection.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param obsoleteTypeDefGUID - String unique identifier for the TypeDef.
-     * @param obsoleteTypeDefName - String unique name for the TypeDef.
-     * @throws InvalidParameterException - the one of TypeDef identifiers is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws TypeDefInUseException - the TypeDef can not be deleted because there are instances of this type in the
-     *                                 the metadata collection.  These instances need to be purged before the
-     *                                 TypeDef can be deleted.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract void deleteTypeDef(String    userId,
-                                       String    obsoleteTypeDefGUID,
-                                       String    obsoleteTypeDefName) throws InvalidParameterException,
-                                                                             RepositoryErrorException,
-                                                                             TypeDefNotKnownException,
-                                                                             TypeDefInUseException,
-                                                                             FunctionNotSupportedException,
-                                                                             UserNotAuthorizedException;
-
-
-    /**
-     * Delete an AttributeTypeDef.  This is only possible if the AttributeTypeDef has never been used to create
-     * instances or any instances of this AttributeTypeDef have been purged from the metadata collection.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param obsoleteTypeDefGUID - String unique identifier for the AttributeTypeDef.
-     * @param obsoleteTypeDefName - String unique name for the AttributeTypeDef.
-     * @throws InvalidParameterException - the one of AttributeTypeDef identifiers is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested AttributeTypeDef is not found in the metadata collection.
-     * @throws TypeDefInUseException - the AttributeTypeDef can not be deleted because there are instances of this type in the
-     *                                 the metadata collection.  These instances need to be purged before the
-     *                                 AttributeTypeDef can be deleted.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract void deleteAttributeTypeDef(String    userId,
-                                                String    obsoleteTypeDefGUID,
-                                                String    obsoleteTypeDefName) throws InvalidParameterException,
-                                                                                      RepositoryErrorException,
-                                                                                      TypeDefNotKnownException,
-                                                                                      TypeDefInUseException,
-                                                                                      FunctionNotSupportedException,
-                                                                                      UserNotAuthorizedException;
-
-
-    /**
-     * Change the guid or name of an existing TypeDef to a new value.  This is used if two different
-     * TypeDefs are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param originalTypeDefGUID - the original guid of the TypeDef.
-     * @param originalTypeDefName - the original name of the TypeDef.
-     * @param newTypeDefGUID - the new identifier for the TypeDef.
-     * @param newTypeDefName - new name for this TypeDef.
-     * @return typeDef - new values for this TypeDef, including the new guid/name.
-     * @throws InvalidParameterException - one of the parameters is invalid or null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the TypeDef identified by the original guid/name is not found
-     *                                    in the metadata collection.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract TypeDef reIdentifyTypeDef(String     userId,
-                                              String     originalTypeDefGUID,
-                                              String     originalTypeDefName,
-                                              String     newTypeDefGUID,
-                                              String     newTypeDefName) throws InvalidParameterException,
-                                                                                RepositoryErrorException,
-                                                                                TypeDefNotKnownException,
-                                                                                FunctionNotSupportedException,
-                                                                                UserNotAuthorizedException;
-
-
-    /**
-     * Change the guid or name of an existing TypeDef to a new value.  This is used if two different
-     * TypeDefs are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param originalAttributeTypeDefGUID - the original guid of the AttributeTypeDef.
-     * @param originalAttributeTypeDefName - the original name of the AttributeTypeDef.
-     * @param newAttributeTypeDefGUID - the new identifier for the AttributeTypeDef.
-     * @param newAttributeTypeDefName - new name for this AttributeTypeDef.
-     * @return attributeTypeDef - new values for this AttributeTypeDef, including the new guid/name.
-     * @throws InvalidParameterException - one of the parameters is invalid or null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the AttributeTypeDef identified by the original guid/name is not
-     *                                    found in the metadata collection.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract AttributeTypeDef reIdentifyAttributeTypeDef(String     userId,
-                                                                String     originalAttributeTypeDefGUID,
-                                                                String     originalAttributeTypeDefName,
-                                                                String     newAttributeTypeDefGUID,
-                                                                String     newAttributeTypeDefName) throws InvalidParameterException,
-                                                                                                           RepositoryErrorException,
-                                                                                                           TypeDefNotKnownException,
-                                                                                                           FunctionNotSupportedException,
-                                                                                                           UserNotAuthorizedException;
-
-
-    /* ===================================================
-     * Group 3: Locating entity and relationship instances
-     */
-
-
-    /**
-     * Returns a boolean indicating if the entity is stored in the metadata collection.  This entity may be a full
-     * entity object, or an entity proxy.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity
-     * @return the entity details if the entity is found in the metadata collection; otherwise return null
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract EntityDetail  isEntityKnown(String     userId,
-                                                String     guid) throws InvalidParameterException,
-                                                                        RepositoryErrorException,
-                                                                        UserNotAuthorizedException;
-
-
-    /**
-     * Return the header and classifications for a specific entity.  The returned entity summary may be from
-     * a full entity object or an entity proxy.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity
-     * @return EntitySummary structure
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract EntitySummary getEntitySummary(String     userId,
-                                                   String     guid) throws InvalidParameterException,
-                                                                           RepositoryErrorException,
-                                                                           EntityNotKnownException,
-                                                                           UserNotAuthorizedException;
-
-
-
-    /**
-     * Return the header, classifications and properties of a specific entity.  This requires the full entity
-     * object to be available.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity.
-     * @return EntityDetail structure.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                 the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws EntityProxyOnlyException - the requested entity instance is only a proxy in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract EntityDetail getEntityDetail(String     userId,
-                                                 String     guid) throws InvalidParameterException,
-                                                                         RepositoryErrorException,
-                                                                         EntityNotKnownException,
-                                                                         EntityProxyOnlyException,
-                                                                         UserNotAuthorizedException;
-
-
-    /**
-     * Return a historical version of an entity - includes the header, classifications and properties of the entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity.
-     * @param asOfTime - the time used to determine which version of the entity that is desired.
-     * @return EntityDetail structure.
-     * @throws InvalidParameterException - the guid or date is null or date is for future time
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                 the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection
-     *                                   at the time requested.
-     * @throws EntityProxyOnlyException - the requested entity instance is only a proxy in the metadata collection.
-     * @throws FunctionNotSupportedException - the repository does not support satOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract EntityDetail getEntityDetail(String     userId,
-                                                 String     guid,
-                                                 Date       asOfTime) throws InvalidParameterException,
-                                                                             RepositoryErrorException,
-                                                                             EntityNotKnownException,
-                                                                             EntityProxyOnlyException,
-                                                                             FunctionNotSupportedException,
-                                                                             UserNotAuthorizedException;
-
-
-
-    /**
-     * Return the relationships for a specific entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param entityGUID - String unique identifier for the entity.
-     * @param relationshipTypeGUID - String GUID of the the type of relationship required (null for all).
-     * @param fromRelationshipElement - the starting element number of the relationships to return.
-     *                                This is used when retrieving elements
-     *                                beyond the first page of results. Zero means start from the first element.
-     * @param limitResultsByStatus - By default, relationships in all statuses are returned.  However, it is possible
-     *                             to specify a list of statuses (eg ACTIVE) to restrict the results to.  Null means all
-     *                             status values.
-     * @param asOfTime - Requests a historical query of the relationships for the entity.  Null means return the
-     *                 present values.
-     * @param sequencingProperty - String name of the property that is to be used to sequence the results.
-     *                           Null means do not sequence on a property name (see SequencingOrder).
-     * @param sequencingOrder - Enum defining how the results should be ordered.
-     * @param pageSize -- the maximum number of result classifications that can be returned on this request.  Zero means
-     *                 unrestricted return results size.
-     * @return Relationships list.  Null means no relationships associated with the entity.
-     * @throws InvalidParameterException - a parameter is invalid or null.
-     * @throws TypeErrorException - the type guid passed on the request is not known by the metadata collection.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws PropertyErrorException - the sequencing property is not valid for the attached classifications.
-     * @throws PagingErrorException - the paging/sequencing parameters are set up incorrectly.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract List<Relationship> getRelationshipsForEntity(String                     userId,
-                                                                 String                     entityGUID,
-                                                                 String                     relationshipTypeGUID,
-                                                                 int                        fromRelationshipElement,
-                                                                 List<InstanceStatus>       limitResultsByStatus,
-                                                                 Date                       asOfTime,
-                                                                 String                     sequencingProperty,
-                                                                 SequencingOrder            sequencingOrder,
-                                                                 int                        pageSize) throws InvalidParameterException,
-                                                                                                             TypeErrorException,
-                                                                                                             RepositoryErrorException,
-                                                                                                             EntityNotKnownException,
-                                                                                                             PropertyErrorException,
-                                                                                                             PagingErrorException,
-                                                                                                             FunctionNotSupportedException,
-                                                                                                             UserNotAuthorizedException;
-
-
-
-    /**
-     * Return a list of entities that match the supplied properties according to the match criteria.  The results
-     * can be returned over many pages.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param entityTypeGUID - String unique identifier for the entity type of interest (null means any entity type).
-     * @param matchProperties - List of entity properties to match to (null means match on entityTypeGUID only).
-     * @param matchCriteria - Enum defining how the properties should be matched to the entities in the repository.
-     * @param fromEntityElement - the starting element number of the entities to return.
-     *                                This is used when retrieving elements
-     *                                beyond the first page of results. Zero means start from the first element.
-     * @param limitResultsByStatus - By default, entities in all statuses are returned.  However, it is possible
-     *                             to specify a list of statuses (eg ACTIVE) to restrict the results to.  Null means all
-     *                             status values.
-     * @param limitResultsByClassification - List of classifications that must be present on all returned entities.
-     * @param asOfTime - Requests a historical query of the entity.  Null means return the present values.
-     * @param sequencingProperty - String name of the entity property that is to be used to sequence the results.
-     *                           Null means do not sequence on a property name (see SequencingOrder).
-     * @param sequencingOrder - Enum defining how the results should be ordered.
-     * @param pageSize - the maximum number of result entities that can be returned on this request.  Zero means
-     *                 unrestricted return results size.
-     * @return a list of entities matching the supplied criteria - null means no matching entities in the metadata
-     * collection.
-     * @throws InvalidParameterException - a parameter is invalid or null.
-     * @throws TypeErrorException - the type guid passed on the request is not known by the
-     *                              metadata collection.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws PropertyErrorException - the properties specified are not valid for any of the requested types of
-     *                                  entity.
-     * @throws PagingErrorException - the paging/sequencing parameters are set up incorrectly.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract List<EntityDetail> findEntitiesByProperty(String                    userId,
-                                                              String                    entityTypeGUID,
-                                                              InstanceProperties        matchProperties,
-                                                              MatchCriteria             matchCriteria,
-                                                              int                       fromEntityElement,
-                                                              List<InstanceStatus>      limitResultsByStatus,
-                                                              List<String>              limitResultsByClassification,
-                                                              Date                      asOfTime,
-                                                              String                    sequencingProperty,
-                                                              SequencingOrder           sequencingOrder,
-                                                              int                       pageSize) throws InvalidParameterException,
-                                                                                                         RepositoryErrorException,
-                                                                                                         TypeErrorException,
-                                                                                                         PropertyErrorException,
-                                                                                                         PagingErrorException,
-                                                                                                         FunctionNotSupportedException,
-                                                                                                         UserNotAuthorizedException;
-
-
-    /**
-     * Return a list of entities that have the requested type of classifications attached.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param entityTypeGUID - unique identifier for the type of entity requested.  Null means any type of entity
-     *                       (but could be slow so not recommended.
-     * @param classificationName - name of the classification - a null is not valid.
-     * @param matchClassificationProperties - list of classification properties used to narrow the search.
-     * @param matchCriteria - Enum defining how the properties should be matched to the classifications in the repository.
-     * @param fromEntityElement - the starting element number of the entities to return.
-     *                                This is used when retrieving elements
-     *                                beyond the first page of results. Zero means start from the first element.
-     * @param limitResultsByStatus - By default, entities in all statuses are returned.  However, it is possible
-     *                             to specify a list of statuses (eg ACTIVE) to restrict the results to.  Null means all
-     *                             status values.
-     * @param asOfTime - Requests a historical query of the entity.  Null means return the present values.
-     * @param sequencingProperty - String name of the entity property that is to be used to sequence the results.
-     *                           Null means do not sequence on a property name (see SequencingOrder).
-     * @param sequencingOrder - Enum defining how the results should be ordered.
-     * @param pageSize - the maximum number of result entities that can be returned on this request.  Zero means
-     *                 unrestricted return results size.
-     * @return a list of entities matching the supplied criteria - null means no matching entities in the metadata
-     * collection.
-     * @throws InvalidParameterException - a parameter is invalid or null.
-     * @throws TypeErrorException - the type guid passed on the request is not known by the
-     *                              metadata collection.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws ClassificationErrorException - the classification request is not known to the metadata collection.
-     * @throws PropertyErrorException - the properties specified are not valid for the requested type of
-     *                                  classification.
-     * @throws PagingErrorException - the paging/sequencing parameters are set up incorrectly.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract List<EntityDetail> findEntitiesByClassification(String                    userId,
-                                                                    String                    entityTypeGUID,
-                                                                    String                    classificationName,
-                                                                    InstanceProperties        matchClassificationProperties,
-                                                                    MatchCriteria             matchCriteria,
-                                                                    int                       fromEntityElement,
-                                                                    List<InstanceStatus>      limitResultsByStatus,
-                                                                    Date                      asOfTime,
-                                                                    String                    sequencingProperty,
-                                                                    SequencingOrder           sequencingOrder,
-                                                                    int                       pageSize) throws InvalidParameterException,
-                                                                                                               TypeErrorException,
-                                                                                                               RepositoryErrorException,
-                                                                                                               ClassificationErrorException,
-                                                                                                               PropertyErrorException,
-                                                                                                               PagingErrorException,
-                                                                                                               FunctionNotSupportedException,
-                                                                                                               UserNotAuthorizedException;
-
-
-    /**
-     * Return a list of entities whose string based property values match the search criteria.  The
-     * search criteria may include regex style wild cards.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param entityTypeGUID - GUID of the type of entity to search for. Null means all types will
-     *                       be searched (could be slow so not recommended).
-     * @param searchCriteria - String expression contained in any of the property values within the entities
-     *                       of the supplied type.
-     * @param fromEntityElement - the starting element number of the entities to return.
-     *                                This is used when retrieving elements
-     *                                beyond the first page of results. Zero means start from the first element.
-     * @param limitResultsByStatus - By default, entities in all statuses are returned.  However, it is possible
-     *                             to specify a list of statuses (eg ACTIVE) to restrict the results to.  Null means all
-     *                             status values.
-     * @param limitResultsByClassification - List of classifications that must be present on all returned entities.
-     * @param asOfTime - Requests a historical query of the entity.  Null means return the present values.
-     * @param sequencingProperty - String name of the property that is to be used to sequence the results.
-     *                           Null means do not sequence on a property name (see SequencingOrder).
-     * @param sequencingOrder - Enum defining how the results should be ordered.
-     * @param pageSize - the maximum number of result entities that can be returned on this request.  Zero means
-     *                 unrestricted return results size.
-     * @return a list of entities matching the supplied criteria - null means no matching entities in the metadata
-     * collection.
-     * @throws InvalidParameterException - a parameter is invalid or null.
-     * @throws TypeErrorException - the type guid passed on the request is not known by the
-     *                              metadata collection.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws PropertyErrorException - the sequencing property specified is not valid for any of the requested types of
-     *                                  entity.
-     * @throws PagingErrorException - the paging/sequencing parameters are set up incorrectly.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract List<EntityDetail> findEntitiesByPropertyValue(String                userId,
-                                                                   String                entityTypeGUID,
-                                                                   String                searchCriteria,
-                                                                   int                   fromEntityElement,
-                                                                   List<InstanceStatus>  limitResultsByStatus,
-                                                                   List<String>          limitResultsByClassification,
-                                                                   Date                  asOfTime,
-                                                                   String                sequencingProperty,
-                                                                   SequencingOrder       sequencingOrder,
-                                                                   int                   pageSize) throws InvalidParameterException,
-                                                                                                          TypeErrorException,
-                                                                                                          RepositoryErrorException,
-                                                                                                          PropertyErrorException,
-                                                                                                          PagingErrorException,
-                                                                                                          FunctionNotSupportedException,
-                                                                                                          UserNotAuthorizedException;
-
-
-    /**
-     * Returns a boolean indicating if the relationship is stored in the metadata collection.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the relationship.
-     * @return relationship if the relationship is found in the metadata collection; otherwise return null.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract Relationship  isRelationshipKnown(String     userId,
-                                                      String     guid) throws InvalidParameterException,
-                                                                              RepositoryErrorException,
-                                                                              UserNotAuthorizedException;
-
-
-    /**
-     * Return the current version of a requested relationship.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the relationship.
-     * @return a relationship structure.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws RelationshipNotKnownException - the metadata collection does not have a relationship with
-     *                                         the requested GUID stored.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract Relationship getRelationship(String    userId,
-                                                 String    guid) throws InvalidParameterException,
-                                                                        RepositoryErrorException,
-                                                                        RelationshipNotKnownException,
-                                                                        UserNotAuthorizedException;
-
-    /**
-     * Return a historical version of a relationship.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the relationship.
-     * @param asOfTime - the time used to determine which version of the entity that is desired.
-     * @return Relationship structure.
-     * @throws InvalidParameterException - the guid or date is null or date is for a future time
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                 the metadata collection is stored.
-     * @throws RelationshipNotKnownException - the requested entity instance is not known in the metadata collection
-     *                                   at the time requested.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract Relationship getRelationship(String    userId,
-                                                 String    guid,
-                                                 Date      asOfTime) throws InvalidParameterException,
-                                                                            RepositoryErrorException,
-                                                                            RelationshipNotKnownException,
-                                                                            FunctionNotSupportedException,
-                                                                            UserNotAuthorizedException;
-
-
-    /**
-     * Return a list of relationships that match the requested properties by the matching criteria.   The results
-     * can be received as a series of pages.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param relationshipTypeGUID - unique identifier (guid) for the new relationship's type.  Null means all types
-     *                             (but may be slow so not recommended).
-     * @param matchProperties - list of properties used to narrow the search.  The property values may include
-     *                        regex style wild cards.
-     * @param matchCriteria - Enum defining how the properties should be matched to the relationships in the repository.
-     * @param fromRelationshipElement - the starting element number of the entities to return.
-     *                                This is used when retrieving elements
-     *                                beyond the first page of results. Zero means start from the first element.
-     * @param limitResultsByStatus - By default, relationships in all statuses are returned.  However, it is possible
-     *                             to specify a list of statuses (eg ACTIVE) to restrict the results to.  Null means all
-     *                             status values.
-     * @param asOfTime - Requests a historical query of the relationships for the entity.  Null means return the
-     *                 present values.
-     * @param sequencingProperty - String name of the property that is to be used to sequence the results.
-     *                           Null means do not sequence on a property name (see SequencingOrder).
-     * @param sequencingOrder - Enum defining how the results should be ordered.
-     * @param pageSize - the maximum number of result relationships that can be returned on this request.  Zero means
-     *                 unrestricted return results size.
-     * @return a list of relationships.  Null means no matching relationships.
-     * @throws InvalidParameterException - one of the parameters is invalid or null.
-     * @throws TypeErrorException - the type guid passed on the request is not known by the
-     *                              metadata collection.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws PropertyErrorException - the properties specified are not valid for any of the requested types of
-     *                                  relationships.
-     * @throws PagingErrorException - the paging/sequencing parameters are set up incorrectly.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract List<Relationship> findRelationshipsByProperty(String                    userId,
-                                                                   String                    relationshipTypeGUID,
-                                                                   InstanceProperties        matchProperties,
-                                                                   MatchCriteria             matchCriteria,
-                                                                   int                       fromRelationshipElement,
-                                                                   List<InstanceStatus>      limitResultsByStatus,
-                                                                   Date                      asOfTime,
-                                                                   String                    sequencingProperty,
-                                                                   SequencingOrder           sequencingOrder,
-                                                                   int                       pageSize) throws InvalidParameterException,
-                                                                                                              TypeErrorException,
-                                                                                                              RepositoryErrorException,
-                                                                                                              PropertyErrorException,
-                                                                                                              PagingErrorException,
-                                                                                                              FunctionNotSupportedException,
-                                                                                                              UserNotAuthorizedException;
-
-
-    /**
-     * Return a list of relationships whose string based property values match the search criteria.  The
-     * search criteria may include regex style wild cards.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param relationshipTypeGUID - GUID of the type of entity to search for. Null means all types will
-     *                       be searched (could be slow so not recommended).
-     * @param searchCriteria - String expression contained in any of the property values within the entities
-     *                       of the supplied type.
-     * @param fromRelationshipElement - Element number of the results to skip to when building the results list
-     *                                to return.  Zero means begin at the start of the results.  This is used
-     *                                to retrieve the results over a number of pages.
-     * @param limitResultsByStatus - By default, relationships in all statuses are returned.  However, it is possible
-     *                             to specify a list of statuses (eg ACTIVE) to restrict the results to.  Null means all
-     *                             status values.
-     * @param asOfTime - Requests a historical query of the relationships for the entity.  Null means return the
-     *                 present values.
-     * @param sequencingProperty - String name of the property that is to be used to sequence the results.
-     *                           Null means do not sequence on a property name (see SequencingOrder).
-     * @param sequencingOrder - Enum defining how the results should be ordered.
-     * @param pageSize - the maximum number of result relationships that can be returned on this request.  Zero means
-     *                 unrestricted return results size.
-     * @return a list of relationships.  Null means no matching relationships.
-     * @throws InvalidParameterException - one of the parameters is invalid or null.
-     * @throws TypeErrorException - the type guid passed on the request is not known by the
-     *                              metadata collection.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws PropertyErrorException - there is a problem with one of the other parameters.
-     * @throws PagingErrorException - the paging/sequencing parameters are set up incorrectly.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract List<Relationship> findRelationshipsByPropertyValue(String                    userId,
-                                                                        String                    relationshipTypeGUID,
-                                                                        String                    searchCriteria,
-                                                                        int                       fromRelationshipElement,
-                                                                        List<InstanceStatus>      limitResultsByStatus,
-                                                                        Date                      asOfTime,
-                                                                        String                    sequencingProperty,
-                                                                        SequencingOrder           sequencingOrder,
-                                                                        int                       pageSize) throws InvalidParameterException,
-                                                                                                                   TypeErrorException,
-                                                                                                                   RepositoryErrorException,
-                                                                                                                   PropertyErrorException,
-                                                                                                                   PagingErrorException,
-                                                                                                                   FunctionNotSupportedException,
-                                                                                                                   UserNotAuthorizedException;
-
-
-    /**
-     * Return all of the relationships and intermediate entities that connect the startEntity with the endEntity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param startEntityGUID - The entity that is used to anchor the query.
-     * @param endEntityGUID - the other entity that defines the scope of the query.
-     * @param limitResultsByStatus - By default, relationships in all statuses are returned.  However, it is possible
-     *                             to specify a list of statuses (eg ACTIVE) to restrict the results to.  Null means all
-     *                             status values.
-     * @param asOfTime - Requests a historical query of the relationships for the entity.  Null means return the
-     *                 present values.
-     * @return InstanceGraph - the sub-graph that represents the returned linked entities and their relationships.
-     * @throws InvalidParameterException - one of the parameters is invalid or null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws EntityNotKnownException - the entity identified by either the startEntityGUID or the endEntityGUID
-     *                                   is not found in the metadata collection.
-     * @throws PropertyErrorException - there is a problem with one of the other parameters.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract InstanceGraph getLinkingEntities(String                    userId,
-                                                     String                    startEntityGUID,
-                                                     String                    endEntityGUID,
-                                                     List<InstanceStatus>      limitResultsByStatus,
-                                                     Date                      asOfTime) throws InvalidParameterException,
-                                                                                                RepositoryErrorException,
-                                                                                                EntityNotKnownException,
-                                                                                                PropertyErrorException,
-                                                                                                FunctionNotSupportedException,
-                                                                                                UserNotAuthorizedException;
-
-
-    /**
-     * Return the entities and relationships that radiate out from the supplied entity GUID.
-     * The results are scoped both the instance type guids and the level.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param entityGUID - the starting point of the query.
-     * @param entityTypeGUIDs - list of entity types to include in the query results.  Null means include
-     *                          all entities found, irrespective of their type.
-     * @param relationshipTypeGUIDs - list of relationship types to include in the query results.  Null means include
-     *                                all relationships found, irrespective of their type.
-     * @param limitResultsByStatus - By default, relationships in all statuses are returned.  However, it is possible
-     *                             to specify a list of statuses (eg ACTIVE) to restrict the results to.  Null means all
-     *                             status values.
-     * @param limitResultsByClassification - List of classifications that must be present on all returned entities.
-     * @param asOfTime - Requests a historical query of the relationships for the entity.  Null means return the
-     *                 present values.
-     * @param level - the number of the relationships out from the starting entity that the query will traverse to
-     *              gather results.
-     * @return InstanceGraph - the sub-graph that represents the returned linked entities and their relationships.
-     * @throws InvalidParameterException - one of the parameters is invalid or null.
-     * @throws TypeErrorException - one of the type guids passed on the request is not known by the
-     *                              metadata collection.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws EntityNotKnownException - the entity identified by the entityGUID is not found in the metadata collection.
-     * @throws PropertyErrorException - there is a problem with one of the other parameters.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public abstract InstanceGraph getEntityNeighborhood(String               userId,
-                                                     

<TRUNCATED>

[17/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSRepositoryEventManager.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSRepositoryEventManager.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSRepositoryEventManager.java
deleted file mode 100644
index 2deeddb..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSRepositoryEventManager.java
+++ /dev/null
@@ -1,1631 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement;
-
-import org.apache.atlas.omrs.auditlog.OMRSAuditLog;
-import org.apache.atlas.omrs.auditlog.OMRSAuditingComponent;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSInstanceEventProcessor;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSTypeDefEventProcessor;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.OMRSLogicErrorException;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityDetail;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceProvenanceType;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.Relationship;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.*;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-
-/**
- * OMRSRepositoryEventManager is responsible for managing the distribution of TypeDef and instance events.
- * There is one OMRSRepositoryEventManager for each cohort that the local server is registered with and one for
- * the local repository.
- *
- * Since OMRSRepositoryEventManager sits at the crossroads of the flow of events between the cohorts,
- * the local repository and the enterprise access components, it performs detailed error checking of the
- * event contents to help assure the integrity of the open metadata ecosystem.
- */
-public class OMRSRepositoryEventManager implements OMRSRepositoryEventProcessor
-{
-    private ArrayList<OMRSTypeDefEventProcessor>  typeDefEventConsumers  = new ArrayList<>();
-    private ArrayList<OMRSInstanceEventProcessor> instanceEventConsumers = new ArrayList<>();
-    private OMRSRepositoryValidator               repositoryValidator; /* set in constructor */
-    private OMRSRepositoryEventExchangeRule       exchangeRule; /* set in constructor */
-
-    /*
-     * The audit log provides a verifiable record of the open metadata archives that have been loaded into
-     * the open metadata repository.  The Logger is for standard debug.
-     */
-    private static final OMRSAuditLog auditLog = new OMRSAuditLog(OMRSAuditingComponent.REPOSITORY_EVENT_MANAGER);
-    private static final Logger       log      = LoggerFactory.getLogger(OMRSRepositoryEventManager.class);
-
-    /**
-     * Constructor to initialize a repository event manager
-     *
-     * @param exchangeRule - this is the rule that determines which events are processed.
-     * @param repositoryValidator - validator class for checking open metadata repository objects and parameters.
-     */
-    public OMRSRepositoryEventManager(OMRSRepositoryEventExchangeRule exchangeRule,
-                                      OMRSRepositoryValidator         repositoryValidator)
-    {
-        final String   methodName = "OMRSRepositoryEventManager";
-        /*
-         * If the exchangeRule is null, throw exception
-         */
-        if (exchangeRule == null)
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_EXCHANGE_RULE;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-
-        this.exchangeRule = exchangeRule;
-
-        /*
-         * If the repository validator is null, throw an exception
-         */
-        if (repositoryValidator == null)
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_REPOSITORY_VALIDATOR;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-
-        this.repositoryValidator = repositoryValidator;
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("New Event Manager");
-        }
-    }
-
-
-    /**
-     * Adds a new consumer to the list of consumers that the OMRSRepositoryEventManager will notify of
-     * any TypeDef events it receives.
-     *
-     * @param typeDefEventConsumer - the new consumer of TypeDef events from other members of the cohort
-     */
-    public void registerTypeDefProcessor(OMRSTypeDefEventProcessor typeDefEventConsumer)
-    {
-        typeDefEventConsumers.add(typeDefEventConsumer);
-    }
-
-
-    /**
-     * Adds a new consumer to the list of consumers that the OMRSRepositoryEventManager will notify of
-     * any instance events it receives.
-     *
-     * @param instanceEventConsumer - the new consumer of instance events from other members of the cohort
-     */
-    public void registerInstanceProcessor(OMRSInstanceEventProcessor instanceEventConsumer)
-    {
-        instanceEventConsumers.add(instanceEventConsumer);
-    }
-
-
-    /**
-     * A new TypeDef has been defined in a metadata repository.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDef - details of the new TypeDef.
-     */
-    public void processNewTypeDefEvent(String      sourceName,
-                                       String      originatorMetadataCollectionId,
-                                       String      originatorServerName,
-                                       String      originatorServerType,
-                                       String      originatorOrganizationName,
-                                       TypeDef     typeDef)
-    {
-        if (exchangeRule.processTypeDefEvents())
-        {
-            for (OMRSTypeDefEventProcessor consumer: typeDefEventConsumers)
-            {
-                consumer.processNewTypeDefEvent(sourceName,
-                                                originatorMetadataCollectionId,
-                                                originatorServerName,
-                                                originatorServerType,
-                                                originatorOrganizationName,
-                                                typeDef);
-            }
-        }
-    }
-
-
-    /**
-     * A new AttributeTypeDef has been defined in an open metadata repository.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param attributeTypeDef - details of the new AttributeTypeDef.
-     */
-    public void processNewAttributeTypeDefEvent(String           sourceName,
-                                                String           originatorMetadataCollectionId,
-                                                String           originatorServerName,
-                                                String           originatorServerType,
-                                                String           originatorOrganizationName,
-                                                AttributeTypeDef attributeTypeDef)
-    {
-        if (exchangeRule.processTypeDefEvents())
-        {
-            for (OMRSTypeDefEventProcessor consumer: typeDefEventConsumers)
-            {
-                consumer.processNewAttributeTypeDefEvent(sourceName,
-                                                         originatorMetadataCollectionId,
-                                                         originatorServerName,
-                                                         originatorServerType,
-                                                         originatorOrganizationName,
-                                                         attributeTypeDef);
-            }
-        }
-    }
-
-
-    /**
-     * An existing TypeDef has been updated in a remote metadata repository.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefPatch - details of the new version of the TypeDef
-     */
-    public void processUpdatedTypeDefEvent(String       sourceName,
-                                           String       originatorMetadataCollectionId,
-                                           String       originatorServerName,
-                                           String       originatorServerType,
-                                           String       originatorOrganizationName,
-                                           TypeDefPatch typeDefPatch)
-    {
-        if (exchangeRule.processTypeDefEvents())
-        {
-            for (OMRSTypeDefEventProcessor consumer: typeDefEventConsumers)
-            {
-                consumer.processUpdatedTypeDefEvent(sourceName,
-                                                    originatorMetadataCollectionId,
-                                                    originatorServerName,
-                                                    originatorServerType,
-                                                    originatorOrganizationName,
-                                                    typeDefPatch);
-            }
-        }
-    }
-
-
-    /**
-     * An existing TypeDef has been deleted in a remote metadata repository.  Both the name and the
-     * GUID are provided to ensure the right TypeDef is deleted in other cohort member repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - unique identifier of the TypeDef
-     * @param typeDefName - unique name of the TypeDef
-     */
-    public void processDeletedTypeDefEvent(String      sourceName,
-                                           String      originatorMetadataCollectionId,
-                                           String      originatorServerName,
-                                           String      originatorServerType,
-                                           String      originatorOrganizationName,
-                                           String      typeDefGUID,
-                                           String      typeDefName)
-    {
-        if (exchangeRule.processTypeDefEvents())
-        {
-            for (OMRSTypeDefEventProcessor consumer: typeDefEventConsumers)
-            {
-                consumer.processDeletedTypeDefEvent(sourceName,
-                                                    originatorMetadataCollectionId,
-                                                    originatorServerName,
-                                                    originatorServerType,
-                                                    originatorOrganizationName,
-                                                    typeDefGUID,
-                                                    typeDefName);
-            }
-        }
-    }
-
-
-    /**
-     * An existing AttributeTypeDef has been deleted in an open metadata repository.  Both the name and the
-     * GUID are provided to ensure the right AttributeTypeDef is deleted in other cohort member repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param attributeTypeDefGUID - unique identifier of the AttributeTypeDef
-     * @param attributeTypeDefName - unique name of the AttributeTypeDef
-     */
-    public void processDeletedAttributeTypeDefEvent(String      sourceName,
-                                                    String      originatorMetadataCollectionId,
-                                                    String      originatorServerName,
-                                                    String      originatorServerType,
-                                                    String      originatorOrganizationName,
-                                                    String      attributeTypeDefGUID,
-                                                    String      attributeTypeDefName)
-    {
-        if (exchangeRule.processTypeDefEvents())
-        {
-            for (OMRSTypeDefEventProcessor consumer: typeDefEventConsumers)
-            {
-                consumer.processDeletedAttributeTypeDefEvent(sourceName,
-                                                             originatorMetadataCollectionId,
-                                                             originatorServerName,
-                                                             originatorServerType,
-                                                             originatorOrganizationName,
-                                                             attributeTypeDefGUID,
-                                                             attributeTypeDefName);
-            }
-        }
-    }
-
-
-    /**
-     * Process an event that changes either the name or guid of a TypeDef.  It is resolving a Conflicting TypeDef Error.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalTypeDefSummary - details of the original TypeDef
-     * @param typeDef - updated TypeDef with new identifiers inside.
-     */
-    public void processReIdentifiedTypeDefEvent(String         sourceName,
-                                                String         originatorMetadataCollectionId,
-                                                String         originatorServerName,
-                                                String         originatorServerType,
-                                                String         originatorOrganizationName,
-                                                TypeDefSummary originalTypeDefSummary,
-                                                TypeDef        typeDef)
-    {
-        if (exchangeRule.processTypeDefEvents())
-        {
-            for (OMRSTypeDefEventProcessor consumer: typeDefEventConsumers)
-            {
-                consumer.processReIdentifiedTypeDefEvent(sourceName,
-                                                         originatorMetadataCollectionId,
-                                                         originatorServerName,
-                                                         originatorServerType,
-                                                         originatorOrganizationName,
-                                                         originalTypeDefSummary,
-                                                         typeDef);
-            }
-        }
-    }
-
-
-    /**
-     * Process an event that changes either the name or guid of an AttributeTypeDef.
-     * It is resolving a Conflicting AttributeTypeDef Error.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalAttributeTypeDef - description of original AttributeTypeDef
-     * @param attributeTypeDef - updated AttributeTypeDef with new identifiers inside.
-     */
-    public void processReIdentifiedAttributeTypeDefEvent(String           sourceName,
-                                                         String           originatorMetadataCollectionId,
-                                                         String           originatorServerName,
-                                                         String           originatorServerType,
-                                                         String           originatorOrganizationName,
-                                                         AttributeTypeDef originalAttributeTypeDef,
-                                                         AttributeTypeDef attributeTypeDef)
-    {
-        if (exchangeRule.processTypeDefEvents())
-        {
-            for (OMRSTypeDefEventProcessor consumer: typeDefEventConsumers)
-            {
-                consumer.processReIdentifiedAttributeTypeDefEvent(sourceName,
-                                                                  originatorMetadataCollectionId,
-                                                                  originatorServerName,
-                                                                  originatorServerType,
-                                                                  originatorOrganizationName,
-                                                                  originalAttributeTypeDef,
-                                                                  attributeTypeDef);
-            }
-        }
-    }
-
-
-    /**
-     * Process a detected conflict in type definitions (TypeDefs) used in the cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originatorTypeDefSummary - details of the TypeDef in the event originator
-     * @param otherMetadataCollectionId - the metadataCollection using the conflicting TypeDef
-     * @param conflictingTypeDefSummary - the detaild of the TypeDef in the other metadata collection
-     * @param errorMessage - description of error.
-     */
-    public void processTypeDefConflictEvent(String         sourceName,
-                                            String         originatorMetadataCollectionId,
-                                            String         originatorServerName,
-                                            String         originatorServerType,
-                                            String         originatorOrganizationName,
-                                            TypeDefSummary originatorTypeDefSummary,
-                                            String         otherMetadataCollectionId,
-                                            TypeDefSummary conflictingTypeDefSummary,
-                                            String         errorMessage)
-    {
-        if (exchangeRule.processTypeDefEvents())
-        {
-            for (OMRSTypeDefEventProcessor consumer: typeDefEventConsumers)
-            {
-                consumer.processTypeDefConflictEvent(sourceName,
-                                                     originatorMetadataCollectionId,
-                                                     originatorServerName,
-                                                     originatorServerType,
-                                                     originatorOrganizationName,
-                                                     originatorTypeDefSummary,
-                                                     otherMetadataCollectionId,
-                                                     conflictingTypeDefSummary,
-                                                     errorMessage);
-            }
-        }
-    }
-
-
-    /**
-     * Process a detected conflict in the attribute type definitions (AttributeTypeDefs) used in the cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originatorAttributeTypeDef- description of the AttributeTypeDef in the event originator.
-     * @param otherMetadataCollectionId - the metadataCollection using the conflicting AttributeTypeDef.
-     * @param conflictingAttributeTypeDef - description of the AttributeTypeDef in the other metadata collection.
-     * @param errorMessage - details of the error that occurs when the connection is used.
-     */
-    public void processAttributeTypeDefConflictEvent(String           sourceName,
-                                                     String           originatorMetadataCollectionId,
-                                                     String           originatorServerName,
-                                                     String           originatorServerType,
-                                                     String           originatorOrganizationName,
-                                                     AttributeTypeDef originatorAttributeTypeDef,
-                                                     String           otherMetadataCollectionId,
-                                                     AttributeTypeDef conflictingAttributeTypeDef,
-                                                     String           errorMessage)
-    {
-        if (exchangeRule.processTypeDefEvents())
-        {
-            for (OMRSTypeDefEventProcessor consumer: typeDefEventConsumers)
-            {
-                consumer.processAttributeTypeDefConflictEvent(sourceName,
-                                                              originatorMetadataCollectionId,
-                                                              originatorServerName,
-                                                              originatorServerType,
-                                                              originatorOrganizationName,
-                                                              originatorAttributeTypeDef,
-                                                              otherMetadataCollectionId,
-                                                              conflictingAttributeTypeDef,
-                                                              errorMessage);
-            }
-        }
-    }
-
-    /**
-     * A TypeDef from another member in the cohort is at a different version than the local repository.  This may
-     * create some inconsistencies in the different copies of instances of this type in different members of the
-     * cohort.  The recommended action is to update all TypeDefs to the latest version.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param targetMetadataCollectionId - identifier of the metadata collection that is reporting a TypeDef at a
-     *                                   different level to the local repository.
-     * @param targetTypeDefSummary - details of the target TypeDef
-     * @param otherTypeDef - details of the TypeDef in the local repository.
-     * @param errorMessage - description of error.
-     */
-    public void processTypeDefPatchMismatchEvent(String         sourceName,
-                                                 String         originatorMetadataCollectionId,
-                                                 String         originatorServerName,
-                                                 String         originatorServerType,
-                                                 String         originatorOrganizationName,
-                                                 String         targetMetadataCollectionId,
-                                                 TypeDefSummary targetTypeDefSummary,
-                                                 TypeDef        otherTypeDef,
-                                                 String         errorMessage)
-    {
-        if (exchangeRule.processTypeDefEvents())
-        {
-            for (OMRSTypeDefEventProcessor consumer: typeDefEventConsumers)
-            {
-                consumer.processTypeDefPatchMismatchEvent(sourceName,
-                                                          originatorMetadataCollectionId,
-                                                          originatorServerName,
-                                                          originatorServerType,
-                                                          originatorOrganizationName,
-                                                          targetMetadataCollectionId,
-                                                          targetTypeDefSummary,
-                                                          otherTypeDef,
-                                                          errorMessage);
-            }
-        }
-    }
-
-
-    /**
-     * A new entity has been created.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the new entity
-     */
-    public void processNewEntityEvent(String       sourceName,
-                                      String       originatorMetadataCollectionId,
-                                      String       originatorServerName,
-                                      String       originatorServerType,
-                                      String       originatorOrganizationName,
-                                      EntityDetail entity)
-    {
-        if (repositoryValidator.validEntity(sourceName, entity))
-        {
-            if (exchangeRule.processInstanceEvent(entity))
-            {
-                for (OMRSInstanceEventProcessor consumer : instanceEventConsumers)
-                {
-                    consumer.processNewEntityEvent(sourceName,
-                                                   originatorMetadataCollectionId,
-                                                   originatorServerName,
-                                                   originatorServerType,
-                                                   originatorOrganizationName,
-                                                   entity);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * An existing entity has been updated.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the new version of the entity.
-     */
-    public void processUpdatedEntityEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          EntityDetail entity)
-    {
-        if (repositoryValidator.validEntity(sourceName, entity))
-        {
-            if (exchangeRule.processInstanceEvent(entity))
-            {
-                for (OMRSInstanceEventProcessor consumer : instanceEventConsumers)
-                {
-                    consumer.processUpdatedEntityEvent(sourceName,
-                                                       originatorMetadataCollectionId,
-                                                       originatorServerName,
-                                                       originatorServerType,
-                                                       originatorOrganizationName,
-                                                       entity);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * An update to an entity has been undone.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the version of the entity that has been restored.
-     */
-    public void processUndoneEntityEvent(String       sourceName,
-                                         String       originatorMetadataCollectionId,
-                                         String       originatorServerName,
-                                         String       originatorServerType,
-                                         String       originatorOrganizationName,
-                                         EntityDetail entity)
-    {
-        if (repositoryValidator.validEntity(sourceName, entity))
-        {
-            if (exchangeRule.processInstanceEvent(entity))
-            {
-                for (OMRSInstanceEventProcessor consumer : instanceEventConsumers)
-                {
-                    consumer.processUndoneEntityEvent(sourceName,
-                                                      originatorMetadataCollectionId,
-                                                      originatorServerName,
-                                                      originatorServerType,
-                                                      originatorOrganizationName,
-                                                      entity);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * A new classification has been added to an entity.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the entity with the new classification added.
-     */
-    public void processClassifiedEntityEvent(String       sourceName,
-                                             String       originatorMetadataCollectionId,
-                                             String       originatorServerName,
-                                             String       originatorServerType,
-                                             String       originatorOrganizationName,
-                                             EntityDetail entity)
-    {
-        if (repositoryValidator.validEntity(sourceName, entity))
-        {
-            if (exchangeRule.processInstanceEvent(entity))
-            {
-                for (OMRSInstanceEventProcessor consumer : instanceEventConsumers)
-                {
-                    consumer.processClassifiedEntityEvent(sourceName,
-                                                          originatorMetadataCollectionId,
-                                                          originatorServerName,
-                                                          originatorServerType,
-                                                          originatorOrganizationName,
-                                                          entity);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * A classification has been removed from an entity.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the entity after the classification has been removed.
-     */
-    public void processDeclassifiedEntityEvent(String       sourceName,
-                                               String       originatorMetadataCollectionId,
-                                               String       originatorServerName,
-                                               String       originatorServerType,
-                                               String       originatorOrganizationName,
-                                               EntityDetail entity)
-    {
-        if (repositoryValidator.validEntity(sourceName, entity))
-        {
-            if (exchangeRule.processInstanceEvent(entity))
-            {
-                for (OMRSInstanceEventProcessor consumer : instanceEventConsumers)
-                {
-                    consumer.processDeclassifiedEntityEvent(sourceName,
-                                                            originatorMetadataCollectionId,
-                                                            originatorServerName,
-                                                            originatorServerType,
-                                                            originatorOrganizationName,
-                                                            entity);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * An existing classification has been changed on an entity.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the entity after the classification has been changed.
-     */
-    public void processReclassifiedEntityEvent(String       sourceName,
-                                               String       originatorMetadataCollectionId,
-                                               String       originatorServerName,
-                                               String       originatorServerType,
-                                               String       originatorOrganizationName,
-                                               EntityDetail entity)
-    {
-        if (repositoryValidator.validEntity(sourceName, entity))
-        {
-            if (exchangeRule.processInstanceEvent(entity))
-            {
-                for (OMRSInstanceEventProcessor consumer : instanceEventConsumers)
-                {
-                    consumer.processReclassifiedEntityEvent(sourceName,
-                                                            originatorMetadataCollectionId,
-                                                            originatorServerName,
-                                                            originatorServerType,
-                                                            originatorOrganizationName,
-                                                            entity);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * An existing entity has been deleted.  This is a soft delete. This means it is still in the repository
-     * but it is no longer returned on queries.
-     *
-     * All relationships to the entity are also soft-deleted and will no longer be usable.  These deleted relationships
-     * will be notified through separate events.
-     *
-     * Details of the TypeDef are included with the entity's unique id (guid) to ensure the right entity is deleted in
-     * the remote repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - deleted entity
-     */
-    public void processDeletedEntityEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          EntityDetail entity)
-    {
-        if (repositoryValidator.validEntity(sourceName, entity))
-        {
-            if (exchangeRule.processInstanceEvent(entity))
-            {
-                for (OMRSInstanceEventProcessor consumer : instanceEventConsumers)
-                {
-                    consumer.processDeletedEntityEvent(sourceName,
-                                                       originatorMetadataCollectionId,
-                                                       originatorServerName,
-                                                       originatorServerType,
-                                                       originatorOrganizationName,
-                                                       entity);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * A deleted entity has been permanently removed from the repository.  This request can not be undone.
-     *
-     * Details of the TypeDef are included with the entity's unique id (guid) to ensure the right entity is purged in
-     * the remote repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - unique identifier for this entity's TypeDef
-     * @param typeDefName - name of this entity's TypeDef
-     * @param instanceGUID - unique identifier for the entity
-     */
-    public void processPurgedEntityEvent(String       sourceName,
-                                         String       originatorMetadataCollectionId,
-                                         String       originatorServerName,
-                                         String       originatorServerType,
-                                         String       originatorOrganizationName,
-                                         String       typeDefGUID,
-                                         String       typeDefName,
-                                         String       instanceGUID)
-    {
-        if (repositoryValidator.validInstanceId(sourceName, typeDefGUID, typeDefName, TypeDefCategory.ENTITY_DEF, instanceGUID))
-        {
-            if (exchangeRule.processInstanceEvent(typeDefGUID, typeDefName))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processPurgedEntityEvent(sourceName,
-                                                      originatorMetadataCollectionId,
-                                                      originatorServerName,
-                                                      originatorServerType,
-                                                      originatorOrganizationName,
-                                                      typeDefGUID,
-                                                      typeDefName,
-                                                      instanceGUID);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * A deleted entity has been restored to the state it was before it was deleted.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the version of the entity that has been restored.
-     */
-    public void processRestoredEntityEvent(String       sourceName,
-                                           String       originatorMetadataCollectionId,
-                                           String       originatorServerName,
-                                           String       originatorServerType,
-                                           String       originatorOrganizationName,
-                                           EntityDetail entity)
-    {
-        if (repositoryValidator.validEntity(sourceName, entity))
-        {
-            if (exchangeRule.processInstanceEvent(entity))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processRestoredEntityEvent(sourceName,
-                                                        originatorMetadataCollectionId,
-                                                        originatorServerName,
-                                                        originatorServerType,
-                                                        originatorOrganizationName,
-                                                        entity);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * An existing entity has had its type changed.  Typically this action is taken to move an entity's
-     * type to either a super type (so the subtype can be deleted) or a new subtype (so additional properties can be
-     * added.)  However, the type can be changed to any compatible type.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalTypeDefSummary - details of this entity's original TypeDef.
-     * @param entity - new values for this entity, including the new type information.
-     */
-    public void processReTypedEntityEvent(String         sourceName,
-                                          String         originatorMetadataCollectionId,
-                                          String         originatorServerName,
-                                          String         originatorServerType,
-                                          String         originatorOrganizationName,
-                                          TypeDefSummary originalTypeDefSummary,
-                                          EntityDetail   entity)
-    {
-        if (repositoryValidator.validEntity(sourceName, entity))
-        {
-            if (exchangeRule.processInstanceEvent(entity))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processReTypedEntityEvent(sourceName,
-                                                       originatorMetadataCollectionId,
-                                                       originatorServerName,
-                                                       originatorServerType,
-                                                       originatorOrganizationName,
-                                                       originalTypeDefSummary,
-                                                       entity);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * An existing entity has changed home repository.  This action is taken for example, if a repository
-     * becomes permanently unavailable, or if the user community updating this entity move to working
-     * from a different repository in the open metadata repository cluster.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalHomeMetadataCollectionId - unique identifier for the original home metadata collection/repository.
-     * @param entity - new values for this entity, including the new home information.
-     */
-    public void processReHomedEntityEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          String       originalHomeMetadataCollectionId,
-                                          EntityDetail entity)
-    {
-        if (repositoryValidator.validEntity(sourceName, entity))
-        {
-            if (exchangeRule.processInstanceEvent(entity))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processReHomedEntityEvent(sourceName,
-                                                       originatorMetadataCollectionId,
-                                                       originatorServerName,
-                                                       originatorServerType,
-                                                       originatorOrganizationName,
-                                                       originalHomeMetadataCollectionId,
-                                                       entity);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * The guid of an existing entity has been changed to a new value.  This is used if two different
-     * entities are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalEntityGUID - the existing identifier for the entity.
-     * @param entity - new values for this entity, including the new guid.
-     */
-    public void processReIdentifiedEntityEvent(String       sourceName,
-                                               String       originatorMetadataCollectionId,
-                                               String       originatorServerName,
-                                               String       originatorServerType,
-                                               String       originatorOrganizationName,
-                                               String       originalEntityGUID,
-                                               EntityDetail entity)
-    {
-        if (repositoryValidator.validEntity(sourceName, entity))
-        {
-            if (exchangeRule.processInstanceEvent(entity))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processReIdentifiedEntityEvent(sourceName,
-                                                            originatorMetadataCollectionId,
-                                                            originatorServerName,
-                                                            originatorServerType,
-                                                            originatorOrganizationName,
-                                                            originalEntityGUID,
-                                                            entity);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * The local repository is requesting that an entity from another repository's metadata collection is
-     * refreshed so the local repository can create a reference copy.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - - unique identifier for this entity's TypeDef
-     * @param typeDefName - name of this entity's TypeDef
-     * @param instanceGUID - unique identifier for the entity
-     * @param homeMetadataCollectionId - metadata collection id for the home of this instance.
-     */
-    public void processRefreshEntityRequested(String       sourceName,
-                                              String       originatorMetadataCollectionId,
-                                              String       originatorServerName,
-                                              String       originatorServerType,
-                                              String       originatorOrganizationName,
-                                              String       typeDefGUID,
-                                              String       typeDefName,
-                                              String       instanceGUID,
-                                              String       homeMetadataCollectionId)
-    {
-        if (repositoryValidator.validInstanceId(sourceName, typeDefGUID, typeDefName, TypeDefCategory.ENTITY_DEF, instanceGUID))
-        {
-            if (exchangeRule.processInstanceEvent(typeDefGUID, typeDefName))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processRefreshEntityRequested(sourceName,
-                                                           originatorMetadataCollectionId,
-                                                           originatorServerName,
-                                                           originatorServerType,
-                                                           originatorOrganizationName,
-                                                           typeDefGUID,
-                                                           typeDefName,
-                                                           instanceGUID,
-                                                           homeMetadataCollectionId);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * A remote repository in the cohort has sent entity details in response to a refresh request.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the requested entity
-     */
-    public void processRefreshEntityEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          EntityDetail entity)
-    {
-        if (repositoryValidator.validEntity(sourceName, entity))
-        {
-            if (exchangeRule.processInstanceEvent(entity))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processRefreshEntityEvent(sourceName,
-                                                       originatorMetadataCollectionId,
-                                                       originatorServerName,
-                                                       originatorServerType,
-                                                       originatorOrganizationName,
-                                                       entity);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * A new relationship has been created.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - details of the new relationship
-     */
-    public void processNewRelationshipEvent(String       sourceName,
-                                            String       originatorMetadataCollectionId,
-                                            String       originatorServerName,
-                                            String       originatorServerType,
-                                            String       originatorOrganizationName,
-                                            Relationship relationship)
-    {
-        if (repositoryValidator.validRelationship(sourceName, relationship))
-        {
-            if (exchangeRule.processInstanceEvent(relationship))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processNewRelationshipEvent(sourceName,
-                                                         originatorMetadataCollectionId,
-                                                         originatorServerName,
-                                                         originatorServerType,
-                                                         originatorOrganizationName,
-                                                         relationship);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * An existing relationship has been updated.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - details of the new version of the relationship.
-     */
-    public void processUpdatedRelationshipEvent(String       sourceName,
-                                                String       originatorMetadataCollectionId,
-                                                String       originatorServerName,
-                                                String       originatorServerType,
-                                                String       originatorOrganizationName,
-                                                Relationship relationship)
-    {
-        if (repositoryValidator.validRelationship(sourceName, relationship))
-        {
-            if (exchangeRule.processInstanceEvent(relationship))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processUpdatedRelationshipEvent(sourceName,
-                                                             originatorMetadataCollectionId,
-                                                             originatorServerName,
-                                                             originatorServerType,
-                                                             originatorOrganizationName,
-                                                             relationship);
-                }
-            }
-        }
-    }
-
-    /**
-     * An update to a relationship has been undone.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - details of the version of the relationship that has been restored.
-     */
-    public void processUndoneRelationshipEvent(String       sourceName,
-                                               String       originatorMetadataCollectionId,
-                                               String       originatorServerName,
-                                               String       originatorServerType,
-                                               String       originatorOrganizationName,
-                                               Relationship relationship)
-    {
-        if (repositoryValidator.validRelationship(sourceName, relationship))
-        {
-            if (exchangeRule.processInstanceEvent(relationship))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processUndoneRelationshipEvent(sourceName,
-                                                            originatorMetadataCollectionId,
-                                                            originatorServerName,
-                                                            originatorServerType,
-                                                            originatorOrganizationName,
-                                                            relationship);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * An existing relationship has been deleted.  This is a soft delete. This means it is still in the repository
-     * but it is no longer returned on queries.
-     *
-     * Details of the TypeDef are included with the relationship's unique id (guid) to ensure the right
-     * relationship is deleted in the remote repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - deleted relationship
-     */
-    public void processDeletedRelationshipEvent(String       sourceName,
-                                                String       originatorMetadataCollectionId,
-                                                String       originatorServerName,
-                                                String       originatorServerType,
-                                                String       originatorOrganizationName,
-                                                Relationship relationship)
-    {
-        if (repositoryValidator.validRelationship(sourceName, relationship))
-        {
-            if (exchangeRule.processInstanceEvent(relationship))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processDeletedRelationshipEvent(sourceName,
-                                                             originatorMetadataCollectionId,
-                                                             originatorServerName,
-                                                             originatorServerType,
-                                                             originatorOrganizationName,
-                                                             relationship);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * A deleted relationship has been permanently removed from the repository.  This request can not be undone.
-     *
-     * Details of the TypeDef are included with the relationship's unique id (guid) to ensure the right
-     * relationship is purged in the remote repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - unique identifier for this relationship's TypeDef.
-     * @param typeDefName - name of this relationship's TypeDef.
-     * @param instanceGUID - unique identifier for the relationship.
-     */
-    public void processPurgedRelationshipEvent(String       sourceName,
-                                               String       originatorMetadataCollectionId,
-                                               String       originatorServerName,
-                                               String       originatorServerType,
-                                               String       originatorOrganizationName,
-                                               String       typeDefGUID,
-                                               String       typeDefName,
-                                               String       instanceGUID)
-    {
-        if (repositoryValidator.validInstanceId(sourceName, typeDefGUID, typeDefName, TypeDefCategory.RELATIONSHIP_DEF, instanceGUID))
-        {
-            if (exchangeRule.processInstanceEvent(typeDefGUID, typeDefName))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processPurgedRelationshipEvent(sourceName,
-                                                            originatorMetadataCollectionId,
-                                                            originatorServerName,
-                                                            originatorServerType,
-                                                            originatorOrganizationName,
-                                                            typeDefGUID,
-                                                            typeDefName,
-                                                            instanceGUID);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * A deleted relationship has been restored to the state it was before it was deleted.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - details of the version of the relationship that has been restored.
-     */
-    public void processRestoredRelationshipEvent(String       sourceName,
-                                                 String       originatorMetadataCollectionId,
-                                                 String       originatorServerName,
-                                                 String       originatorServerType,
-                                                 String       originatorOrganizationName,
-                                                 Relationship relationship)
-    {
-        if (repositoryValidator.validRelationship(sourceName, relationship))
-        {
-            if (exchangeRule.processInstanceEvent(relationship))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processRestoredRelationshipEvent(sourceName,
-                                                              originatorMetadataCollectionId,
-                                                              originatorServerName,
-                                                              originatorServerType,
-                                                              originatorOrganizationName,
-                                                              relationship);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * An existing relationship has had its type changed.  Typically this action is taken to move a relationship's
-     * type to either a super type (so the subtype can be deleted) or a new subtype (so additional properties can be
-     * added.)  However, the type can be changed to any compatible type.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalTypeDefSummary - original details for this relationship's TypeDef.
-     * @param relationship - new values for this relationship, including the new type information.
-     */
-    public void processReTypedRelationshipEvent(String         sourceName,
-                                                String         originatorMetadataCollectionId,
-                                                String         originatorServerName,
-                                                String         originatorServerType,
-                                                String         originatorOrganizationName,
-                                                TypeDefSummary originalTypeDefSummary,
-                                                Relationship   relationship)
-    {
-        if (repositoryValidator.validRelationship(sourceName, relationship))
-        {
-            if (exchangeRule.processInstanceEvent(relationship))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processReTypedRelationshipEvent(sourceName,
-                                                             originatorMetadataCollectionId,
-                                                             originatorServerName,
-                                                             originatorServerType,
-                                                             originatorOrganizationName,
-                                                             originalTypeDefSummary,
-                                                             relationship);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * An existing relationship has changed home repository.  This action is taken for example, if a repository
-     * becomes permanently unavailable, or if the user community updating this relationship move to working
-     * from a different repository in the open metadata repository cluster.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalHomeMetadataCollection - unique identifier for the original home repository.
-     * @param relationship - new values for this relationship, including the new home information.
-     */
-    public void processReHomedRelationshipEvent(String       sourceName,
-                                                String       originatorMetadataCollectionId,
-                                                String       originatorServerName,
-                                                String       originatorServerType,
-                                                String       originatorOrganizationName,
-                                                String       originalHomeMetadataCollection,
-                                                Relationship relationship)
-    {
-        if (repositoryValidator.validRelationship(sourceName, relationship))
-        {
-            if (exchangeRule.processInstanceEvent(relationship))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processReHomedRelationshipEvent(sourceName,
-                                                             originatorMetadataCollectionId,
-                                                             originatorServerName,
-                                                             originatorServerType,
-                                                             originatorOrganizationName,
-                                                             originalHomeMetadataCollection,
-                                                             relationship);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * The guid of an existing relationship has changed.  This is used if two different
-     * relationships are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalRelationshipGUID - the existing identifier for the relationship.
-     * @param relationship - new values for this relationship, including the new guid.
-     */
-    public void processReIdentifiedRelationshipEvent(String       sourceName,
-                                                     String       originatorMetadataCollectionId,
-                                                     String       originatorServerName,
-                                                     String       originatorServerType,
-                                                     String       originatorOrganizationName,
-                                                     String       originalRelationshipGUID,
-                                                     Relationship relationship)
-    {
-        if (repositoryValidator.validRelationship(sourceName, relationship))
-        {
-            if (exchangeRule.processInstanceEvent(relationship))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processReIdentifiedRelationshipEvent(sourceName,
-                                                                  originatorMetadataCollectionId,
-                                                                  originatorServerName,
-                                                                  originatorServerType,
-                                                                  originatorOrganizationName,
-                                                                  originalRelationshipGUID,
-                                                                  relationship);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * A repository has requested the home repository of a relationship send details of the relationship so
-     * its local metadata collection can create a reference copy of the instance.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - unique identifier for this instance's TypeDef
-     * @param typeDefName - name of this relationship's TypeDef
-     * @param instanceGUID - unique identifier for the instance
-     * @param homeMetadataCollectionId - metadata collection id for the home of this instance.
-     */
-    public void processRefreshRelationshipRequest(String       sourceName,
-                                                  String       originatorMetadataCollectionId,
-                                                  String       originatorServerName,
-                                                  String       originatorServerType,
-                                                  String       originatorOrganizationName,
-                                                  String       typeDefGUID,
-                                                  String       typeDefName,
-                                                  String       instanceGUID,
-                                                  String       homeMetadataCollectionId)
-    {
-        if (repositoryValidator.validInstanceId(sourceName, typeDefGUID, typeDefName, TypeDefCategory.RELATIONSHIP_DEF, instanceGUID))
-        {
-            if (exchangeRule.processInstanceEvent(typeDefGUID, typeDefName))
-            {
-                for (OMRSInstanceEventProcessor consumer: instanceEventConsumers)
-                {
-                    consumer.processRefreshRelationshipRequest(sourceName,
-                                                               originatorMetadataCollectionId,
-                                                               originatorServerName,
-                                                               originatorServerType,
-                                                               originatorOrganizationName,
-                                                               typeDefGUID,
-                                                               typeDefName,
-                                                               instanceGUID,
-                                                               homeMetadataCollectionId);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * The local repository is refreshing the information about a relationship for the other
-     * repositories in the cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - relationship details
-     */
-    public void processRefreshRelationshipEvent(String       sourceName,
-                                                String       originatorMetadataCollectionId,
-                                                String       originatorServerName,
-                                                String       originatorServerType,
-                                                String       originatorOrganizationName,
-                          

<TRUNCATED>

[36/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ConnectedAssetInterface.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ConnectedAssetInterface.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ConnectedAssetInterface.java
deleted file mode 100644
index a87740c..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ConnectedAssetInterface.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.omas.connectedasset;
-
-import org.apache.atlas.omas.connectedasset.ffdc.exceptions.InvalidParameterException;
-import org.apache.atlas.omas.connectedasset.ffdc.exceptions.PropertyServerException;
-import org.apache.atlas.omas.connectedasset.ffdc.exceptions.UnrecognizedConnectionGUIDException;
-import org.apache.atlas.omas.connectedasset.ffdc.exceptions.UserNotAuthorizedException;
-import org.apache.atlas.omas.connectedasset.properties.AssetUniverse;
-
-/**
- * ConnectedAssetInterface is the OMAS client interface of the Connected Asset OMAS.
- *
- */
-public interface ConnectedAssetInterface
-{
-    /**
-     * Returns a comprehensive collection of properties about the requested asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for asset.
-     *
-     * @return AssetUniverse - a comprehensive collection of properties about the asset.
-
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem retrieving the asset properties from
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    AssetUniverse getAssetProperties(String   userId,
-                                     String   assetGUID) throws InvalidParameterException,
-                                                                PropertyServerException,
-                                                                UserNotAuthorizedException;
-
-
-    /**
-     * Returns a comprehensive collection of properties about the asset linked to the supplied connection.
-     *
-     * @param userId - identifier for calling user
-     * @param connectionGUID - uniqueId for the connection.
-     * @return AssetUniverse - a comprehensive collection of properties about the connected asset.
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem retrieving the connected asset properties from
-     *                                   the property server.
-     * @throws UnrecognizedConnectionGUIDException - the supplied GUID is not recognized by the property server.
-     */
-    AssetUniverse  getAssetPropertiesByConnection(String   userId,
-                                                  String   connectionGUID) throws InvalidParameterException,
-                                                                                  UnrecognizedConnectionGUIDException,
-                                                                                  PropertyServerException;
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/admin/ConnectedAssetAdmin.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/admin/ConnectedAssetAdmin.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/admin/ConnectedAssetAdmin.java
deleted file mode 100644
index 4d467a6..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/admin/ConnectedAssetAdmin.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.admin;
-
-
-import org.apache.atlas.omag.configuration.properties.AccessServiceConfig;
-import org.apache.atlas.omag.configuration.registration.AccessServiceAdmin;
-import org.apache.atlas.omag.ffdc.exception.OMAGConfigurationErrorException;
-import org.apache.atlas.omrs.auditlog.OMRSAuditLog;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-import org.apache.atlas.omrs.topicconnectors.OMRSTopicConnector;
-
-public class ConnectedAssetAdmin implements AccessServiceAdmin
-{
-    private OMRSRepositoryConnector repositoryConnector = null;
-    private OMRSTopicConnector      omrsTopicConnector  = null;
-    private AccessServiceConfig     accessServiceConfig = null;
-    private OMRSAuditLog            auditLog            = null;
-    private String                  serverUserName      = null;
-
-
-    /**
-     * Default constructor
-     */
-    public ConnectedAssetAdmin()
-    {
-    }
-
-    /**
-     * Initialize the access service.
-     *
-     * @param accessServiceConfigurationProperties - specific configuration properties for this access service.
-     * @param enterpriseOMRSTopicConnector - connector for receiving OMRS Events from the cohorts
-     * @param enterpriseOMRSRepositoryConnector - connector for querying the cohort repositories
-     * @param auditLog - audit log component for logging messages.
-     * @param serverUserName - user id to use on OMRS calls where there is no end user.
-     * @throws OMAGConfigurationErrorException - invalid parameters in the configuration properties.
-     */
-    public void initialize(AccessServiceConfig     accessServiceConfigurationProperties,
-                           OMRSTopicConnector      enterpriseOMRSTopicConnector,
-                           OMRSRepositoryConnector enterpriseOMRSRepositoryConnector,
-                           OMRSAuditLog            auditLog,
-                           String                  serverUserName) throws OMAGConfigurationErrorException
-    {
-        this.accessServiceConfig = accessServiceConfigurationProperties;
-        this.omrsTopicConnector = enterpriseOMRSTopicConnector;
-
-        this.repositoryConnector = enterpriseOMRSRepositoryConnector;
-
-        this.auditLog = auditLog;
-        this.serverUserName = serverUserName;
-
-    }
-
-
-    /**
-     * Shutdown the access service.
-     */
-    public void shutdown()
-    {
-        /*
-         * Nothing to do until set up out topic.
-         */
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/client/ConnectedAsset.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/client/ConnectedAsset.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/client/ConnectedAsset.java
deleted file mode 100644
index b2f3010..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/client/ConnectedAsset.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.omas.connectedasset.client;
-
-import org.apache.atlas.omas.connectedasset.ffdc.exceptions.InvalidParameterException;
-import org.apache.atlas.omas.connectedasset.ffdc.exceptions.PropertyServerException;
-import org.apache.atlas.omas.connectedasset.ffdc.exceptions.UnrecognizedConnectionGUIDException;
-import org.apache.atlas.omas.connectedasset.ffdc.exceptions.UserNotAuthorizedException;
-import org.apache.atlas.omas.connectedasset.properties.AssetUniverse;
-import org.apache.atlas.omas.connectedasset.ConnectedAssetInterface;
-
-
-/**
- * ConnectedAsset is the OMAS client library implementation of the ConnectedAsset OMAS.
- * ConnectedAsset provides the metadata for the ConnectedAssetProperties API that is
- * supported by all Open Connector Framework (OCF)
- * connectors.   It provides access to the metadata about the Asset that the connector is linked to.
- */
-public class ConnectedAsset implements ConnectedAssetInterface
-{
-    /*
-     * The URL of the server where OMAS is active
-     */
-    private String                    omasServerURL = null;
-
-
-    /**
-     * Default Constructor used once a connector is created.
-     *
-     * @param omasServerURL - unique id for the connector instance
-     */
-    public ConnectedAsset(String   omasServerURL)
-    {
-        /*
-         * Save OMAS Server URL
-         */
-        this.omasServerURL = omasServerURL;
-    }
-
-
-
-    /**
-     * Returns a comprehensive collection of properties about the requested asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for asset.
-     *
-     * @return AssetUniverse - a comprehensive collection of properties about the asset.
-
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem retrieving the asset properties from
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public AssetUniverse getAssetProperties(String   userId,
-                                            String   assetGUID) throws InvalidParameterException,
-                                                                       PropertyServerException,
-                                                                       UserNotAuthorizedException
-    {
-        return null;
-    }
-
-
-    /**
-     * Returns a comprehensive collection of properties about the asset linked to the supplied connection.
-     *
-     * @param connectionGUID - unique identifier for the connection
-     * @return AssetUniverse - a comprehensive collection of properties about the connected asset
-     * @throws PropertyServerException - There is a problem retrieving the connected asset properties from
-     *                                   the metadata repository.
-     */
-    public AssetUniverse  getAssetPropertiesByConnection(String   connectionGUID) throws PropertyServerException
-    {
-        AssetUniverse   extractedAssetProperties = null;
-
-        /*
-         * Set up the OMAS URL in the asset universe
-         */
-
-        return extractedAssetProperties;
-    }
-
-
-    /**
-     * Returns a comprehensive collection of properties about the asset linked to the supplied connection.
-     *
-     * @param connectionGUID - uniqueId for the connection.
-     * @return AssetUniverse - a comprehensive collection of properties about the connected asset.
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem retrieving the connected asset properties from
-     *                                   the property server.
-     * @throws UnrecognizedConnectionGUIDException - the supplied GUID is not recognized by the property server.
-     */
-    public AssetUniverse  getAssetPropertiesByConnection(String   userId,
-                                                         String   connectionGUID) throws InvalidParameterException,
-                                                                                         UnrecognizedConnectionGUIDException,
-                                                                                         PropertyServerException
-    {
-        return null;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/client/ConnectedAssetProperties.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/client/ConnectedAssetProperties.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/client/ConnectedAssetProperties.java
deleted file mode 100644
index a1d8590..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/client/ConnectedAssetProperties.java
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.client;
-
-import org.apache.atlas.ocf.ffdc.PropertyServerException;
-import org.apache.atlas.ocf.properties.Classifications;
-import org.apache.atlas.ocf.properties.ElementType;
-import org.apache.atlas.ocf.properties.Connection;
-
-import org.apache.atlas.omas.connectedasset.properties.AssetUniverse;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * ConnectedAssetProperties is associated with a Connector.  Connectors provide access to
- * assets.   ConnectedAssetProperties returns properties (metadata) about the connector's asset.
- *
- * It is a generic interface for all types of open metadata assets.  However, it assumes the asset's metadata model
- * inherits from <b>Asset</b> (see model 0010 in Area 0).
- *
- * The ConnectedAssetProperties returns metadata about the asset at three levels of detail:
- * <ul>
- *     <li><b>assetSummary</b> - used for displaying details of the asset in summary lists or hover text</li>
- *     <li><b>assetDetail</b> - used to display all of the information known about the asset with summaries
- *     of the relationships to other metadata entities</li>
- *     <li><b>assetUniverse</b> - used to define the broader context for the asset</li>
- * </ul>
- *
- * ConnectedAssetProperties is a base class for the connector's metadata API that returns null,
- * for the asset's properties.  Metadata repository implementations extend this class to add their
- * implementation of the refresh() method that calls to the metadata repository to populate the metadata properties.
- */
-public class ConnectedAssetProperties extends org.apache.atlas.ocf.properties.ConnectedAssetProperties
-{
-    private String        omasServerURL;
-    private String        connectorInstanceId;
-    private Connection    connection;
-    private String        userId;
-
-    private ConnectedAsset connectedAsset;
-
-    private static final Logger log = LoggerFactory.getLogger(ConnectedAssetProperties.class);
-
-    /**
-     * Typical constructor.
-     *
-     * @param userId - identifier of calling user
-     * @param omasServerURL - url of server
-     * @param connectorInstanceId - unique identifier of connector.
-     * @param connection - connection information for connector.
-     */
-    public ConnectedAssetProperties(String      userId,
-                                    String      omasServerURL,
-                                    String      connectorInstanceId,
-                                    Connection  connection)
-    {
-        super();
-
-        this.userId = userId;
-        this.omasServerURL = omasServerURL;
-        this.connectorInstanceId = connectorInstanceId;
-        this.connection = connection;
-
-        this.connectedAsset = new ConnectedAsset(omasServerURL);
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateProperties - template to copy.
-     */
-    public ConnectedAssetProperties(ConnectedAssetProperties   templateProperties)
-    {
-        super(templateProperties);
-
-        this.connection = templateProperties.connection;
-        this.connectorInstanceId = templateProperties.connectorInstanceId;
-        this.omasServerURL = templateProperties.omasServerURL;
-        this.userId = templateProperties.userId;
-
-        this.connectedAsset = new ConnectedAsset(omasServerURL);
-    }
-
-
-    /**
-     * Request the values in the ConnectedAssetProperties are refreshed with the current values from the
-     * metadata repository.
-     *
-     * @throws PropertyServerException - there is a problem connecting to the server to retrieve metadata.
-     */
-
-    public void refresh() throws PropertyServerException
-    {
-        AssetUniverse  assetUniverse = null;
-
-        try
-        {
-            assetUniverse = connectedAsset.getAssetPropertiesByConnection(connection.getGUID());
-        }
-        catch (Throwable  error)
-        {
-            /*
-             * Construct PropertyErrorException
-             */
-        }
-
-        if (assetUniverse == null)
-        {
-            super.assetProperties = null;
-            return;
-        }
-
-        ElementType       elementType = null;
-        Classifications   classifications = null;
-
-
-        if (assetUniverse.getType() != null)
-        {
-            elementType = new ElementType(assetUniverse.getType().getElementTypeId(),
-                                          assetUniverse.getType().getElementTypeName(),
-                                          assetUniverse.getType().getElementTypeVersion(),
-                                          assetUniverse.getType().getElementTypeDescription(),
-                                          assetUniverse.getType().getElementAccessServiceURL(),
-                                          assetUniverse.getType().getElementOrigin(),
-                                          assetUniverse.getType().getElementHomeMetadataCollectionId());
-        }
-
-
-        if (assetUniverse.getClassifications() != null)
-        {
-
-        }
-        super.assetProperties = new org.apache.atlas.ocf.properties.AssetUniverse(elementType,
-                                                                                  assetUniverse.getGUID(),
-                                                                                  assetUniverse.getURL(),
-                                                                                  assetUniverse.getQualifiedName(),
-                                                                                  assetUniverse.getDisplayName(),
-                                                                                  assetUniverse.getShortDescription(),
-                                                                                  assetUniverse.getDescription(),
-                                                                                  assetUniverse.getOwner(),
-                                                                                  classifications,
-                                                                                  null,
-                                                                                  null,
-                                                                                  null,
-                                                                                  null,
-                                                                                  null,
-                                                                                  null,
-                                                                                  null,
-                                                                                  null,
-                                                                                  null,
-                                                                                  null,
-                                                                                  null,
-                                                                                  null,
-                                                                                  null,
-                                                                                  null,
-                                                                                  null);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/ConnectedAssetErrorCode.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/ConnectedAssetErrorCode.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/ConnectedAssetErrorCode.java
deleted file mode 100644
index 84bf572..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/ConnectedAssetErrorCode.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.ffdc;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.text.MessageFormat;
-import java.util.Arrays;
-
-/**
- * The ConnectedAssetErrorCode is used to define first failure data capture (FFDC) for errors that occur when
- * working with
- * OCF Connectors.
- * It is used in conjunction with all Connected Asset OMAS Exceptions, both Checked and Runtime (unchecked).
- *
- * The 5 fields in the enum are:
- * <ul>
- *     <li>HTTP Error Code - for translating between REST and JAVA - Typically the numbers used are:</li>
- *     <li><ul>
- *         <li>500 - internal error</li>
- *         <li>400 - invalid parameters</li>
- *         <li>404 - not found</li>
- *         <li>409 - data conflict errors - eg item already defined</li>
- *     </ul></li>
- *     <li>Error Message Id - to uniquely identify the message</li>
- *     <li>Error Message Text - includes placeholder to allow additional values to be captured</li>
- *     <li>SystemAction - describes the result of the error</li>
- *     <li>UserAction - describes how a user should correct the error</li>
- * </ul>
- */
-public enum ConnectedAssetErrorCode
-{
-    SERVER_URL_NOT_SPECIFIED(400, "OMAS-CONNECTEDASSET-400-001",
-            "The OMAS Server URL is null",
-            "The system is unable to connect to the OMAS Server to populate the ConnectedAssetProperties object.",
-            "Retry the request when the OMAS Service is available."),
-    SERVER_URL_MALFORMED(400, "OMAS-CONNECTEDASSET-400-002",
-            "The OMAS Server URL {0} is not in a recognized format",
-            "The system is unable to connect to the OMAS Server to populate the ConnectedAssetProperties object.",
-            "Retry the request when the OMAS Service is available."),
-    NULL_CONNECTION(400, "OMAS-CONNECTEDASSET-400-003",
-            "The connection passed to OMASConnectedAssetProperties for connector {0} is null.",
-            "The system is unable to populate the ConnectedAssetProperties object because it needs the connection to identify the asset.",
-            "Look for other error messages to identify what caused this error.  When the issue is resolved, retry the request."),
-    NULL_CONNECTION_ID(400, "OMAS-CONNECTEDASSET-400-004",
-            "The connection \'{0}\' passed to OMASConnectedAssetProperties has a null GUID inside it.",
-            "The system is unable to populate the ConnectedAssetProperties object because it needs the connection to identify the asset.",
-            "Look for other error messages to identify what caused this error.  When the issue is resolved, retry the request."),
-    NULL_RELATED_ASSET(400, "OMAS-CONNECTEDASSET-400-005",
-            "The related asset is null.",
-            "The system is unable to populate the RelatedAssetProperties object because it needs the URL to identify the asset.",
-            "Look for other error messages to identify what caused this error.  When the issue is resolved, retry the request."),
-    NULL_PROPERTY_NAME(400, "OMAS-CONNECTEDASSET-400-006 ",
-            "Null property name passed to operation {0} of type {1}",
-            "A request to set an additional property failed because the property name passed was null",
-            "Recode the call to the property object with a valid property name and retry."),
-    NULL_CLASSIFICATION_NAME(400, "OMAS-CONNECTEDASSET-400-007 ",
-            "No classification name for entity {0} of type {1}",
-            "A classification with a null name is assigned to an entity.   This value should come from a metadata repository, and always be filled in.",
-            "Look for other error messages to identify the source of the problem.  Identify the metadata repository where the asset came from.  Correct the cause of the error and then retry."),
-    NULL_TAG_NAME(400, "OMAS-CONNECTEDASSET-400-008 ",
-            "Null tag name passed to operation {0} of type {1}",
-            "A request to set the name of an informal tag property failed because the name passed was null",
-            "Recode the call to the property object with a valid name and retry."),
-    SERVER_NOT_AVAILABLE(404, "OMAS-CONNECTEDASSET-404-001",
-            "The OMAS Server is not available",
-            "The system is unable to populate the ConnectedAssetProperties object.",
-            "Retry the request when the OMAS Service is available.")
-    ;
-
-    private int    httpErrorCode;
-    private String errorMessageId;
-    private String errorMessage;
-    private String systemAction;
-    private String userAction;
-
-    private static final Logger log = LoggerFactory.getLogger(ConnectedAssetErrorCode.class);
-
-
-    /**
-     * The constructor for ConnectedAssetErrorCode expects to be passed one of the enumeration rows defined in
-     * ConnectedAssetErrorCode above.   For example:
-     *
-     *     ConnectedAssetErrorCode   errorCode = ConnectedAssetErrorCode.SERVER_NOT_AVAILABLE;
-     *
-     * This will expand out to the 5 parameters shown below.
-     *
-     * @param newHTTPErrorCode - error code to use over REST calls
-     * @param newErrorMessageId - unique Id for the message
-     * @param newErrorMessage - text for the message
-     * @param newSystemAction - description of the action taken by the system when the error condition happened
-     * @param newUserAction - instructions for resolving the error
-     */
-    ConnectedAssetErrorCode(int  newHTTPErrorCode, String newErrorMessageId, String newErrorMessage, String newSystemAction, String newUserAction)
-    {
-        this.httpErrorCode = newHTTPErrorCode;
-        this.errorMessageId = newErrorMessageId;
-        this.errorMessage = newErrorMessage;
-        this.systemAction = newSystemAction;
-        this.userAction = newUserAction;
-    }
-
-
-    public int getHTTPErrorCode()
-    {
-        return httpErrorCode;
-    }
-
-
-    /**
-     * Returns the unique identifier for the error message.
-     *
-     * @return errorMessageId
-     */
-    public String getErrorMessageId()
-    {
-        return errorMessageId;
-    }
-
-
-    /**
-     * Returns the error message with placeholders for specific details.
-     *
-     * @return errorMessage (unformatted)
-     */
-    public String getUnformattedErrorMessage()
-    {
-        return errorMessage;
-    }
-
-
-    /**
-     * Returns the error message with the placeholders filled out with the supplied parameters.
-     *
-     * @param params - strings that plug into the placeholders in the errorMessage
-     * @return errorMessage (formatted with supplied parameters)
-     */
-    public String getFormattedErrorMessage(String... params)
-    {
-        if (log.isDebugEnabled())
-        {
-            log.debug(String.format("<== OCFErrorCode.getMessage(%s)", Arrays.toString(params)));
-        }
-
-        MessageFormat mf = new MessageFormat(errorMessage);
-        String result = mf.format(params);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(String.format("==> OCFErrorCode.getMessage(%s): %s", Arrays.toString(params), result));
-        }
-
-        return result;
-    }
-
-
-    /**
-     * Returns a description of the action taken by the system when the condition that caused this exception was
-     * detected.
-     *
-     * @return systemAction
-     */
-    public String getSystemAction()
-    {
-        return systemAction;
-    }
-
-
-    /**
-     * Returns instructions of how to resolve the issue reported in this exception.
-     *
-     * @return userAction
-     */
-    public String getUserAction()
-    {
-        return userAction;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/README.md
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/README.md b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/README.md
deleted file mode 100644
index 02e6a7f..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/README.md
+++ /dev/null
@@ -1,46 +0,0 @@
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-# ConnectedAsset OMAS FFDC
-
-Package org.apache.atlas.omas.connectedasset.ffdc provides the
-first failure data capture support for the ConnectedAsset OMAS module.
-This includes an error code enum,
-a runtime exception, a base class for checked exceptions plus
-implementation of each specific checked exception.
-
-The error code enum (ConnectedAssetErrorCode) has an entry for each unique situation
-where an exception is returned.  Each entry defines:
-
-* A unique id for the error
-* An HTTP error code for rest calls
-* A unique message Id
-* Message text with place holders for specific values
-* A description of the cause of the error and system action as a result.
-* A description of how to correct the error (if known)
-
-Each exception (whether a checked or runtime exception) has two constructors.
-
-* The first constructor is used when a new error has been detected.
-
-* The second constructor is used when another exception has been caught.
-This caught exception is passed on the constructor so it is effectively
-embedded in the ConnectedAsset OMAS exception.
-
-Both constructors take the values from the ConnectedAssetErrorCode
-enum to define the cause and resolution.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/ConnectedAssetCheckedExceptionBase.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/ConnectedAssetCheckedExceptionBase.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/ConnectedAssetCheckedExceptionBase.java
deleted file mode 100644
index 7ebb080..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/ConnectedAssetCheckedExceptionBase.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.ffdc.exceptions;
-
-/**
- * ConnectedAssetCheckedExceptionBase provides a checked exception for reporting errors found when using
- * the Connected Asset OMAS services.
- *
- * Typically these errors are either configuration or operational errors that can be fixed by an administrator.
- * However, there may be the odd bug that surfaces here.
- * The ConnectedAssetErrorCode can be used with
- * this exception to populate it with standard messages.  The aim is to be able to uniquely identify the cause
- * and remedy for the error.
- */
-public class ConnectedAssetCheckedExceptionBase extends Exception
-{
-    /*
-     * These default values are only seen if this exception is initialized using one of its superclass constructors.
-     */
-    private int       reportedHTTPCode;
-    private String    reportingClassName;
-    private String    reportingActionDescription;
-    private String    reportedErrorMessage;
-    private String    reportedSystemAction;
-    private String    reportedUserAction;
-    private Throwable reportedCaughtException = null;
-
-
-    /**
-     * This is the typical constructor used for creating a ConnectedAssetCheckedExceptionBase.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public ConnectedAssetCheckedExceptionBase(int    httpCode,
-                                              String className,
-                                              String actionDescription,
-                                              String errorMessage,
-                                              String systemAction,
-                                              String userAction)
-    {
-        super(errorMessage);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-    }
-
-
-    /**
-     * This is the  constructor used for creating a ConnectedAssetCheckedExceptionBase
-     * that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     */
-    public ConnectedAssetCheckedExceptionBase(int       httpCode,
-                                              String    className,
-                                              String    actionDescription,
-                                              String    errorMessage,
-                                              String    systemAction,
-                                              String    userAction,
-                                              Throwable caughtError)
-    {
-        super(errorMessage, caughtError);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtException = caughtError;
-    }
-
-
-    /**
-     * Return the HTTP response code to use with this exception.
-     *
-     * @return reportedHTTPCode
-     */
-    public int getReportedHTTPCode()
-    {
-        return reportedHTTPCode;
-    }
-
-    /**
-     * The class that created this exception.
-     *
-     * @return reportingClassName
-     */
-    public String getReportingClassName()
-    {
-        return reportingClassName;
-    }
-
-
-    /**
-     * The type of request that the class was performing when the condition occurred that resulted in this
-     * exception.
-     *
-     * @return reportingActionDescription
-     */
-    public String getReportingActionDescription()
-    {
-        return reportingActionDescription;
-    }
-
-
-    /**
-     * A formatted short description of the cause of the condition that resulted in this exception.
-     *
-     * @return reportedErrorMessage
-     */
-    public String getErrorMessage()
-    {
-        return reportedErrorMessage;
-    }
-
-
-    /**
-     * A description of the action that the system took as a result of the error condition.
-     *
-     * @return reportedSystemAction
-     */
-    public String getReportedSystemAction()
-    {
-        return reportedSystemAction;
-    }
-
-
-    /**
-     * A description of the action necessary to correct the error.
-     *
-     * @return reportedUserAction
-     */
-    public String getReportedUserAction()
-    {
-        return reportedUserAction;
-    }
-
-
-    /**
-     * An exception that was caught and wrapped by this exception.  If a null is returned, then this exception is
-     * newly created and not the result of a previous exception.
-     *
-     * @return reportedCaughtException
-     */
-    public Throwable getReportedCaughtException() { return reportedCaughtException; }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/ConnectedAssetRuntimeException.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/ConnectedAssetRuntimeException.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/ConnectedAssetRuntimeException.java
deleted file mode 100644
index a48f746..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/ConnectedAssetRuntimeException.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.ffdc.exceptions;
-
-/**
- * ConnectedAssetRuntimeException is used for all runtime exceptions generated by the connected asset OMAS.
- * It is used in conjunction with the ConnectedAssetErrorCode to provide first failure data capture for these errors.
- */
-public class ConnectedAssetRuntimeException extends RuntimeException
-{
-    /*
-     * These default values are only seen if this exception is initialized using one of its superclass constructors.
-     */
-    private int       reportedHTTPCode = 500;
-    private String    reportingClassName = "<Unknown>";
-    private String    reportingActionDescription = "<Unknown>";
-    private String    reportedErrorMessage = "<Unknown>";
-    private String    reportedSystemAction = "<Unknown>";
-    private String    reportedUserAction = "<Unknown>";
-    private Throwable reportedCaughtException = null;
-
-
-    /**
-     * This is the typical constructor used for creating an ConnectedAssetRuntimeException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public ConnectedAssetRuntimeException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(errorMessage);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-    }
-
-
-    /**
-     * This is the constructor used for creating a ConnectedAssetRuntimeException that is the result of
-     * another error being thrown.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - previous error causing this exception
-     */
-    public ConnectedAssetRuntimeException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(errorMessage, caughtError);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtException = caughtError;
-    }
-
-
-    /**
-     * Return the HTTP response code to use with this exception.
-     *
-     * @return reportedHTTPCode
-     */
-    public int getReportedHTTPCode()
-    {
-        return reportedHTTPCode;
-    }
-
-    /**
-     * The class that created this exception.
-     *
-     * @return reportingClassName
-     */
-    public String getReportingClassName()
-    {
-        return reportingClassName;
-    }
-
-
-    /**
-     * The type of request that the class was performing when the condition occurred that resulted in this
-     * exception.
-     *
-     * @return reportingActionDescription
-     */
-    public String getReportingActionDescription()
-    {
-        return reportingActionDescription;
-    }
-
-
-    /**
-     * A formatted short description of the cause of the condition that resulted in this exception.
-     *
-     * @return reportedErrorMessage
-     */
-    public String getErrorMessage()
-    {
-        return reportedErrorMessage;
-    }
-
-
-    /**
-     * A description of the action that the system took as a result of the error condition.
-     *
-     * @return reportedSystemAction
-     */
-    public String getReportedSystemAction()
-    {
-        return reportedSystemAction;
-    }
-
-
-    /**
-     * A description of the action necessary to correct the error.
-     *
-     * @return reportedUserAction
-     */
-    public String getReportedUserAction()
-    {
-        return reportedUserAction;
-    }
-
-
-    /**
-     * An exception that was caught and wrapped by this exception.  If a null is returned, then this exception is
-     * newly created and not the result of a previous exception.
-     *
-     * @return reportedCaughtException
-     */
-    public Throwable getReportedCaughtException() { return reportedCaughtException; }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/InvalidParameterException.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/InvalidParameterException.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/InvalidParameterException.java
deleted file mode 100644
index d8b16bc..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/InvalidParameterException.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.ffdc.exceptions;
-
-
-/**
- * The InvalidParameterException is thrown by theConnectedAsset OMAS when a parameters is null or an invalid
- * value.
- */
-public class InvalidParameterException extends ConnectedAssetCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a InvalidParameterException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public InvalidParameterException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a InvalidParameterException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public InvalidParameterException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/PropertyServerException.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/PropertyServerException.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/PropertyServerException.java
deleted file mode 100644
index 7e71368..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/PropertyServerException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.ffdc.exceptions;
-
-/**
- * The PropertyServerException is thrown by the Connected OMAS when it is not able to communicate with the
- * property server.
- */
-public class PropertyServerException extends ConnectedAssetCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a PropertyServerException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public PropertyServerException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a PropertyServerException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public PropertyServerException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/UnrecognizedConnectionGUIDException.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/UnrecognizedConnectionGUIDException.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/UnrecognizedConnectionGUIDException.java
deleted file mode 100644
index 2e3a351..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/UnrecognizedConnectionGUIDException.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.ffdc.exceptions;
-
-
-/**
- * The UnrecognizedConnectionGUIDException is thrown by the Connected Asset OMAS when the unique identifier (guid)
- * used to request a connection object from the property server is either unrecognized, or is the identifier
- * for a different type of object.
- */
-public class UnrecognizedConnectionGUIDException extends ConnectedAssetCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a UnrecognizedConnectionGUIDException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public UnrecognizedConnectionGUIDException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a UnrecognizedConnectionGUIDException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     */
-    public UnrecognizedConnectionGUIDException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/UserNotAuthorizedException.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/UserNotAuthorizedException.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/UserNotAuthorizedException.java
deleted file mode 100644
index 2cf5476..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/ffdc/exceptions/UserNotAuthorizedException.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.ffdc.exceptions;
-
-
-/**
- * The UserNotAuthorizedException is thrown by the Connected Asset OMAS when a userId passed on a request is not
- * authorized to perform the requested action.
- */
-public class UserNotAuthorizedException extends ConnectedAssetCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a UserNotAuthorizedException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public UserNotAuthorizedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a UserNotAuthorizedException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public UserNotAuthorizedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AdditionalProperties.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AdditionalProperties.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AdditionalProperties.java
deleted file mode 100644
index 689cda0..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AdditionalProperties.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.omas.connectedasset.ffdc.ConnectedAssetErrorCode;
-import org.apache.atlas.omas.connectedasset.ffdc.exceptions.ConnectedAssetRuntimeException;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-
-/**
- * The AdditionalProperties class provides support for arbitrary properties to be added to a properties object.
- * It wraps a java.util.Map map object built around HashMap.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class AdditionalProperties extends PropertyBase
-{
-    private Map<String,Object>  additionalProperties = new HashMap<>();
-
-    /**
-     * Constructor for a new set of additional properties that are connected either directly or indirectly to an asset.
-     */
-    public AdditionalProperties()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone Constructor for additional properties that are connected to an asset.
-     *
-     * @param templateProperties - template object to copy.
-     */
-    public AdditionalProperties(AdditionalProperties templateProperties)
-    {
-        super(templateProperties);
-
-        /*
-         * An empty properties object is created in the private variable declaration so nothing to do.
-         */
-        if (templateProperties != null)
-        {
-            /*
-             * Process templateProperties if they are not null
-             */
-            Iterator<String> propertyNames = templateProperties.getPropertyNames();
-
-            if (propertyNames != null)
-            {
-                while (propertyNames.hasNext())
-                {
-                    String newPropertyName = propertyNames.next();
-                    Object newPropertyValue = templateProperties.getProperty(newPropertyName);
-
-                    additionalProperties.put(newPropertyName, newPropertyValue);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * Returns a list of the additional stored properties for the element.
-     * If no stored properties are present then null is returned.
-     *
-     * @return list of additional properties
-     */
-    public Iterator<String> getPropertyNames()
-    {
-        return additionalProperties.keySet().iterator();
-    }
-
-
-    /**
-     * Returns the requested additional stored property for the element.
-     * If no stored property with that name is present then null is returned.
-     *
-     * @param name - String name of the property to return.
-     * @return requested property value.
-     */
-    public Object getProperty(String name)
-    {
-        return additionalProperties.get(name);
-    }
-
-
-    /**
-     * Adds or updates an additional property.
-     * If a null is supplied for the property name, an OCF runtime exception is thrown.
-     * If a null is supplied for the property value, the property is removed.
-     *
-     * @param  newPropertyName - name
-     * @param  newPropertyValue - value
-     */
-    public void setProperty(String newPropertyName, Object newPropertyValue)
-    {
-        final String   methodName = "setProperty";
-
-        if (newPropertyName == null)
-        {
-            /*
-             * Build and throw exception.
-             */
-            ConnectedAssetErrorCode errorCode = ConnectedAssetErrorCode.NULL_PROPERTY_NAME;
-            String       errorMessage = errorCode.getErrorMessageId()
-                                      + errorCode.getFormattedErrorMessage(methodName, this.getClass().getName());
-
-            throw new ConnectedAssetRuntimeException(errorCode.getHTTPErrorCode(),
-                                                     this.getClass().getName(),
-                                                     methodName,
-                                                     errorMessage,
-                                                     errorCode.getSystemAction(),
-                                                     errorCode.getUserAction());
-        }
-        else if (newPropertyValue == null)
-        {
-            additionalProperties.remove(newPropertyName);
-        }
-        else
-        {
-            additionalProperties.put(newPropertyName, newPropertyValue);
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Analysis.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Analysis.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Analysis.java
deleted file mode 100644
index e400d7f..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Analysis.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * Analysis returns the Annotations for the connected asset.
- * Annotations are created by Open Discovery Framework (ODF) discovery services.  Each Annotation
- * contains the results of a particular type of analysis.
- *
- * The Analysis class holds a full list of all of the Annotation and offers methods for retrieving
- * different subsets of the Annotations.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Analysis extends PropertyBase
-{
-    private List<Annotation> allAnnotations = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public Analysis()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the analysis clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param templateAnalysis - template for setting up the properties.
-     */
-    public Analysis(Analysis  templateAnalysis)
-    {
-        super(templateAnalysis);
-
-        /*
-         * Only create a child object if the template is not null.
-         */
-        if (templateAnalysis != null)
-        {
-            List<Annotation> templateAllAnnotations = templateAnalysis.getAnnotations();
-
-            if (templateAllAnnotations != null)
-            {
-                /*
-                 * Copy over the annotations ensuring the parent asset is this object's parent, not the template's parent.
-                 */
-                allAnnotations = new ArrayList<>(templateAnalysis.getAnnotations());
-            }
-        }
-    }
-
-
-    /**
-     * Return an iterator containing all of the annotations for this asset.
-     *
-     * @return Annotations - list of annotations
-     */
-    public List<Annotation> getAnnotations()
-    {
-        return new ArrayList<>(allAnnotations);
-    }
-
-
-    /**
-     * Initialize Analysis with a new set of annotations.  This overrides any annotations previously held
-     * by Analysis.
-     *
-     * @param newAnnotations - new annotations
-     */
-    public void setAnnotations(List<Annotation>   newAnnotations)
-    {
-        /*
-         * A copy of the annotations is taken to be sure the pointers are all at the start.
-         */
-        allAnnotations = new ArrayList<>(newAnnotations);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Annotation.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Annotation.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Annotation.java
deleted file mode 100644
index 174ef33..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Annotation.java
+++ /dev/null
@@ -1,472 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.Date;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * An annotation describes the results of an analysis undertaken by an Open Discovery Framework (ODF) discovery service.
- * It describes when the analysis happened, the type of analysis and the results.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Annotation extends ElementHeader
-{
-    /*
-     * Details from the AnnotationReport entity
-     */
-    private String               reportName = null;
-    private String               reportDescription = null;
-    private Date                 creationDate = null;
-    private AdditionalProperties analysisParameters = null;
-
-    /*
-     * Details from the Annotation entity itself
-     */
-    private String            annotationType = null;
-    private String            summary = null;
-    private int               confidenceLevel = 0;
-    private String            expression = null;
-    private String            explanation = null;
-    private String            analysisStep = null;
-    private String            jsonProperties = null;
-    private AnnotationStatus  annotationStatus = null;
-
-    /*
-     * Details from the latest AnnotationReview entity.
-     */
-    private Date         reviewDate = null;
-    private String       steward = null;
-    private String       reviewComment = null;
-
-    /*
-     * Additional properties added directly to the Annotation entity and supported by
-     * the sub-types of Annotation.
-     */
-    private   AdditionalProperties   additionalProperties = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public Annotation()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone Constructor
-     *
-     * @param templateAnnotation - template object to copy.
-     */
-    public Annotation(Annotation   templateAnnotation)
-    {
-        /*
-         * Remember the parent
-         */
-        super(templateAnnotation);
-
-        if (templateAnnotation != null)
-        {
-            /*
-             * Copy the properties from the template into this annotation.
-             */
-            this.reportName = templateAnnotation.getReportName();
-            this.reportDescription = templateAnnotation.getReportDescription();
-            this.creationDate = templateAnnotation.getCreationDate();
-            this.analysisParameters = templateAnnotation.getAnalysisParameters();
-            this.annotationType = templateAnnotation.getAnnotationType();
-            this.summary = templateAnnotation.getSummary();
-            this.confidenceLevel = templateAnnotation.getConfidenceLevel();
-            this.expression = templateAnnotation.getExpression();
-            this.explanation = templateAnnotation.getExplanation();
-            this.analysisStep = templateAnnotation.getAnalysisStep();
-            this.jsonProperties = templateAnnotation.getJsonProperties();
-            this.annotationStatus = templateAnnotation.getAnnotationStatus();
-            this.reviewDate = templateAnnotation.getReviewDate();
-            this.steward = templateAnnotation.getSteward();
-            this.reviewComment = templateAnnotation.getReviewComment();
-            this.additionalProperties = new AdditionalProperties(templateAnnotation.getAdditionalProperties());
-        }
-    }
-
-
-    /**
-     * Return the name of the discovery analysis report that created this annotation.
-     *
-     * @return String - report name
-     */
-    public String getReportName()
-    {
-        return reportName;
-    }
-
-
-    /**
-     * Set up the discovery analysis report name.
-     *
-     * @param reportName - report name string.
-     */
-    public void setReportName(String reportName)
-    {
-        this.reportName = reportName;
-    }
-
-    /**
-     * Return the discovery analysis report description that this annotation is a part of.
-     *
-     * @return String - report description
-     */
-    public String getReportDescription()
-    {
-        return reportDescription;
-    }
-
-
-    /**
-     * Annotations are created as part of a DiscoveryAnalysisReport.  This property contains the overall
-     * report description associated with this annotation.
-     *
-     * @param reportDescription - String for the report description
-     */
-    public void setReportDescription(String reportDescription)
-    {
-        this.reportDescription = reportDescription;
-    }
-
-
-    /**
-     * Return the creation date for the annotation.  If this date is not known then null is returned.
-     *
-     * @return Date that the annotation was created.
-     */
-    public Date getCreationDate() {
-        return creationDate;
-    }
-
-
-    /**
-     * Set up the creation date for the annotation.  This value should be available.  It is supplied on the
-     * DiscoveryAnalysisReport entity.  However, if no creation data is available, this property is stored as null.
-     *
-     * @param creationDate - Date that annotation was created.
-     */
-    public void setCreationDate(Date creationDate)
-    {
-        this.creationDate = creationDate;
-    }
-
-
-    /**
-     * Return the properties that hold the parameters used to drive the discovery service's analysis.
-     *
-     * @return AdditionalProperties - object storing the analysis parameters
-     */
-    public AdditionalProperties getAnalysisParameters()
-    {
-        return analysisParameters;
-    }
-
-
-    /**
-     * Set up the properties that hold the parameters used to drive the discovery service's analysis.
-     *
-     * @param analysisParameters - Properties for the analysis parameters
-     */
-    public void setAnalysisParameters(AdditionalProperties analysisParameters)
-    {
-        this.analysisParameters = analysisParameters;
-    }
-
-
-    /**
-     * Return the informal name for the type of annotation.
-     *
-     * @return String - annotation type
-     */
-    public String getAnnotationType()
-    {
-        return annotationType;
-    }
-
-
-    /**
-     * Set up the informal name for the type of annotation.  The formal name in the model is given in the
-     * ElementType.
-     *
-     * @param annotationType - String for annotation type
-     */
-    public void setAnnotationType(String annotationType)
-    {
-        this.annotationType = annotationType;
-    }
-
-
-    /**
-     * Return the summary description for the annotation.
-     *
-     * @return String - summary of annotation
-     */
-    public String getSummary()
-    {
-        return summary;
-    }
-
-
-    /**
-     * Set up the summary description of the annotation.
-     *
-     * @param summary - String for summary
-     */
-    public void setSummary(String summary)
-    {
-        this.summary = summary;
-    }
-
-
-    /**
-     * Return the confidence level of the discovery service that the annotation is correct.
-     *
-     * @return int - confidence level
-     */
-    public int getConfidenceLevel()
-    {
-        return confidenceLevel;
-    }
-
-
-    /**
-     * Set up the confidence level of the discovery service that the annotation is correct.
-     *
-     * @param confidenceLevel - int for confidence level
-     */
-    public void setConfidence(int confidenceLevel)
-    {
-        this.confidenceLevel = confidenceLevel;
-    }
-
-
-    /**
-     * Return the expression that represent the relationship between the annotation and the asset.
-     *
-     * @return String - expression
-     */
-    public String getExpression()
-    {
-        return expression;
-    }
-
-
-    /**
-     * Set up the expression that represent the relationship between the annotation and the asset.
-     *
-     * @param expression - string for expression
-     */
-    public void setExpression(String expression)
-    {
-        this.expression = expression;
-    }
-
-
-    /**
-     * Return the explanation for the annotation.
-     *
-     * @return String - explanation
-     */
-    public String getExplanation() {
-        return explanation;
-    }
-
-
-    /**
-     * Set up the explanation for the annotation.
-     *
-     * @param explanation - String for the explanation
-     */
-    public void setExplanation(String explanation)
-    {
-        this.explanation = explanation;
-    }
-
-
-    /**
-     * Return a description of the analysis step that the discovery service was in when it created the annotation.
-     *
-     * @return String - analysis step
-     */
-    public String getAnalysisStep()
-    {
-        return analysisStep;
-    }
-
-
-    /**
-     * Set up the description of the analysis step that the discovery service was in when it created the annotation.
-     *
-     * @param analysisStep - String describing the analysis step
-     */
-    public void setAnalysisStep(String analysisStep)
-    {
-        this.analysisStep = analysisStep;
-    }
-
-
-    /**
-     * Return the JSON properties associated with the annotation.
-     *
-     * @return String - JSON properties of annotation
-     */
-    public String getJsonProperties()
-    {
-        return jsonProperties;
-    }
-
-
-    /**
-     * Set up the JSON properties associated with the annotation.
-     *
-     * @param jsonProperties String - JSON properties of annotation
-     */
-    public void setJsonProperties(String jsonProperties)
-    {
-        this.jsonProperties = jsonProperties;
-    }
-
-
-    /**
-     * Return the current status of the annotation.
-     *
-     * @return AnnotationStatus - current status of annotation
-     */
-    public AnnotationStatus getAnnotationStatus()
-    {
-        return annotationStatus;
-    }
-
-    /**
-     * Set up the current status of the annotation.
-     *
-     * @param annotationStatus - AnnotationStatus enum
-     */
-    public void setAnnotationStatus(AnnotationStatus annotationStatus)
-    {
-        this.annotationStatus = annotationStatus;
-    }
-
-
-    /**
-     * Return the date that this annotation was reviewed.  If no review has taken place then this property is null.
-     *
-     * @return Date - review date
-     */
-    public Date getReviewDate()
-    {
-        return reviewDate;
-    }
-
-
-    /**
-     * Set up the date that this annotation was reviewed.  If no review has taken place then this property is null.
-     *
-     * @param reviewDate - date review conducted
-     */
-    public void setReviewDate(Date reviewDate)
-    {
-        this.reviewDate = reviewDate;
-    }
-
-
-    /**
-     * Return the name of the steward that reviewed the annotation.
-     *
-     * @return String - steward's name.
-     */
-    public String getSteward()
-    {
-        return steward;
-    }
-
-
-    /**
-     * Set up the name of the steward that reviewed the annotation.
-     *
-     * @param steward String name of steward that reviewed the annotation.
-     */
-    public void setSteward(String steward)
-    {
-        this.steward = steward;
-    }
-
-
-    /**
-     * Return any comments made by the steward during the review.
-     *
-     * @return String - review comment
-     */
-    public String getReviewComment()
-    {
-        return reviewComment;
-    }
-
-
-    /**
-     * Set the comment made by the steward as part of the review of the annotation. The comment covers the
-     * whole review which may have looked at multiple annotations so the comment may not necessarily
-     * refer to this annotation.
-     *
-     * @param reviewComment - string comment
-     */
-    public void setReviewComment(String reviewComment)
-    {
-        this.reviewComment = reviewComment;
-    }
-
-
-    /**
-     * Return the additional properties for the Annotation.
-     *
-     * @return AdditionalProperties - additional properties object
-     */
-    public AdditionalProperties getAdditionalProperties()
-    {
-        return additionalProperties;
-    }
-
-
-    /**
-     * Set up the additional properties for the annotation.  These are a combination of the additional
-     * properties from the Annotation entity and any properties introduced by the subtypes of annotation.
-     * The naming convention for subtype property names is entityName.attributeName.value.  If the property
-     * is a map then the map contents are named entityName.attributeName.propertyName.propertyValue.
-     *
-     * @param additionalProperties - additional properties object for annotation.
-     */
-    public void setAdditionalProperties(AdditionalProperties additionalProperties)
-    {
-        this.additionalProperties = additionalProperties;
-    }
-}
\ No newline at end of file


[27/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/OpenMetadataExchangeRule.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/OpenMetadataExchangeRule.java b/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/OpenMetadataExchangeRule.java
deleted file mode 100644
index c49e5fc..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/OpenMetadataExchangeRule.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.admin.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OpenMetadataExchangeRule controls the sending/receiving of metadata instances on the metadata highway.
- * <ul>
- *     <li>
- *         REGISTRATION_ONLY means do not send/receive reference metadata - just perform the minimal registration
- *         exchanges.
- *     </li>
- *     <li>
- *         JUST_TYPEDEFS - means only send/receive/validate type definitions (TypeDefs).
- *     </li>
- *     <li>
- *         SELECTED_TYPES means that in addition to TypeDefs events, only metadata instances of the types
- *         supplied in the related list of TypeDefs (see typesToSend, typesToSave and typesToFederate) should be processed.
- *     </li>
- *     <li>
- *         LEARNED_TYPES means that the local repository requests reference copies of metadata based on the requests of
- *         the local user community.
- *     </li>
- *     <li>
- *         ALL means send/receive all types of metadata that are supported by the local repository.
- *     </li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum OpenMetadataExchangeRule
-{
-    REGISTRATION_ONLY (0,  "Registration Only", "Only registration exchange; no TypeDefs or metadata instances."),
-    JUST_TYPEDEFS     (1,  "Just TypeDefs",     "Only registration and type definitions (TypeDefs) exchange."),
-    SELECTED_TYPES    (2,  "Selected Types",    "Registration plus all type definitions (TypeDefs) and metadata " +
-                                                "instances (Entities and Relationships) of selected types."),
-    LEARNED_TYPES     (3,  "Learned Types",     "Registration plus all type definitions (TypeDefs) and metadata " +
-                                                "instances (Entities and Relationships) of types " +
-                                                "requested by local users to this server."),
-    ALL               (99, "All",               "Registration plus all type definitions (TypeDefs) and metadata " +
-                                                "instances (Entities and Relationships).");
-
-    private  int     replicationRuleCode;
-    private  String  replicationRuleName;
-    private  String  replicationRuleDescription;
-
-    /**
-     * Constructor for the metadata instance replication rule.
-     *
-     * @param replicationRuleCode - the code number of this metadata instance replication rule.
-     * @param replicationRuleName - the name of this metadata instance replication rule.
-     * @param replicationRuleDescription - the description of this metadata instance replication rule.
-     */
-    OpenMetadataExchangeRule(int replicationRuleCode, String replicationRuleName, String replicationRuleDescription)
-    {
-        this.replicationRuleCode = replicationRuleCode;
-        this.replicationRuleName = replicationRuleName;
-        this.replicationRuleDescription = replicationRuleDescription;
-    }
-
-
-    /**
-     * Return the code number of this metadata instance replication rule.
-     *
-     * @return int replication rule code number
-     */
-    public int getReplicationRuleCode()
-    {
-        return replicationRuleCode;
-    }
-
-
-    /**
-     * Return the name of this metadata instance replication rule.
-     *
-     * @return String replication rule name
-     */
-    public String getReplicationRuleName()
-    {
-        return replicationRuleName;
-    }
-
-
-    /**
-     * Return the description of this metadata instance replication rule.
-     *
-     * @return String replication rule description
-     */
-    public String getReplicationRuleDescription()
-    {
-        return replicationRuleDescription;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/RepositoryServicesConfig.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/RepositoryServicesConfig.java b/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/RepositoryServicesConfig.java
deleted file mode 100644
index 3b68afd..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/RepositoryServicesConfig.java
+++ /dev/null
@@ -1,261 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.admin.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-import org.apache.atlas.ocf.properties.beans.Connection;
-
-import java.util.ArrayList;
-import java.util.List;
-
-
-/**
- * RepositoryServicesConfig provides the configuration properties that are needed by the OMRS components
- * to manage access to the metadata repositories that are members of the open metadata repository clusters that
- * this server connects to.
- * <ul>
- *     <li>
- *         auditLogConnection is a connection describing the connector to the AuditLog that the OMRS
- *         component should use.
- *     </li>
- *     <li>
- *         openMetadataArchiveConnections is a list of Open Metadata Archive Connections.
- *         An open metadata archive connection provides properties needed to create a connector to manage
- *         an open metadata archive.  This contains pre-built TypeDefs and metadata instance.
- *         The archives are managed by the OMRSArchiveManager.
- *     </li>
- *     <li>
- *         localRepositoryConfig describes the properties used to manage the local metadata repository for this server.
- *     </li>
- *     <li>
- *         enterpriseAccessConfig describes the properties that control the cluster federation services that the
- *         OMRS provides to the Open Metadata AccessServices (OMASs).
- *     </li>
- *     <li>
- *         cohortConfigList provides details of each open metadata repository cluster that the local server is
- *         connected to.
- *     </li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class RepositoryServicesConfig
-{
-    private ArrayList<Connection>   auditLogConnections            = new ArrayList<>();
-    private ArrayList<Connection>   openMetadataArchiveConnections = new ArrayList<>();
-    private LocalRepositoryConfig   localRepositoryConfig          = null;
-    private EnterpriseAccessConfig  enterpriseAccessConfig         = null;
-    private ArrayList<CohortConfig> cohortConfigList               = new ArrayList<>();
-
-
-    /**
-     * Default constructor does nothing
-     */
-    public RepositoryServicesConfig()
-    {
-    }
-
-
-    /**
-     * Constructor to set all properties.
-     *
-     * @param auditLogConnections - connections to copies of the audit log.
-     * @param openMetadataArchiveConnections - list of open metadata archive files to load.
-     * @param localRepositoryConfig - properties to configure the behavior of the local repository.
-     * @param enterpriseAccessConfig - properties to configure the behavior of the federation services provided
-     *                                to the Open Metadata Access Services (OMASs).
-     * @param cohortConfigList - properties about the open metadata repository clusters that this server connects to.
-     */
-    public RepositoryServicesConfig(List<Connection>         auditLogConnections,
-                                    List<Connection>         openMetadataArchiveConnections,
-                                    LocalRepositoryConfig    localRepositoryConfig,
-                                    EnterpriseAccessConfig   enterpriseAccessConfig,
-                                    List<CohortConfig>       cohortConfigList)
-    {
-        this.setAuditLogConnections(auditLogConnections);
-        this.setOpenMetadataArchiveConnections(openMetadataArchiveConnections);
-        this.setLocalRepositoryConfig(localRepositoryConfig);
-        this.setEnterpriseAccessConfig(enterpriseAccessConfig);
-        this.setCohortConfigList(cohortConfigList);
-    }
-
-
-    /**
-     * Return the Connection properties used to create an OCF Connector to the AuditLog.
-     *
-     * @return Connection object
-     */
-    public List<Connection> getAuditLogConnections()
-    {
-        if (auditLogConnections == null)
-        {
-            return null;
-        }
-        else
-        {
-            return auditLogConnections;
-        }
-    }
-
-
-    /**
-     * Set up the Connection properties used to create an OCF Connector to the AuditLog.
-     *
-     * @param auditLogConnections - list of Connection objects
-     */
-    public void setAuditLogConnections(List<Connection> auditLogConnections)
-    {
-        if (auditLogConnections == null)
-        {
-            this.auditLogConnections = null;
-        }
-        else
-        {
-            this.auditLogConnections = new ArrayList<>(auditLogConnections);
-        }
-    }
-
-
-    /**
-     * Return the list of Connection object, each of which is used to create the Connector to an Open Metadata
-     * Archive.  Open Metadata Archive contains pre-built metadata types and instances.
-     *
-     * @return list of Connection objects
-     */
-    public List<Connection> getOpenMetadataArchiveConnections()
-    {
-        if (openMetadataArchiveConnections == null)
-        {
-            return null;
-        }
-        else
-        {
-            return openMetadataArchiveConnections;
-        }
-    }
-
-
-    /**
-     * Set up the list of Connection object, each of which is used to create the Connector to an Open Metadata
-     * Archive.  Open Metadata Archive contains pre-built metadata types and instances.
-     *
-     * @param openMetadataArchiveConnections - list of Connection objects
-     */
-    public void setOpenMetadataArchiveConnections(List<Connection> openMetadataArchiveConnections)
-    {
-        if (openMetadataArchiveConnections == null)
-        {
-            this.openMetadataArchiveConnections = null;
-        }
-        else
-        {
-            this.openMetadataArchiveConnections = new ArrayList<>(openMetadataArchiveConnections);
-        }
-    }
-
-
-    /**
-     * Return the configuration properties for the local repository.
-     *
-     * @return configuration properties
-     */
-    public LocalRepositoryConfig getLocalRepositoryConfig()
-    {
-        return localRepositoryConfig;
-    }
-
-
-    /**
-     * Set up the configuration properties for the local repository.
-     *
-     * @param localRepositoryConfig - configuration properties
-     */
-    public void setLocalRepositoryConfig(LocalRepositoryConfig localRepositoryConfig)
-    {
-        this.localRepositoryConfig = localRepositoryConfig;
-    }
-
-
-    /**
-     * Return the configuration for the federation services provided by OMRS to the Open Metadata Access
-     * Services (OMASs).
-     *
-     * @return configuration properties
-     */
-    public EnterpriseAccessConfig getEnterpriseAccessConfig()
-    {
-        return enterpriseAccessConfig;
-    }
-
-
-    /**
-     * Set up the configuration for the federation services provided by OMRS to the Open Metadata Access
-     * Services (OMASs).
-     *
-     * @param enterpriseAccessConfig configuration properties
-     */
-    public void setEnterpriseAccessConfig(EnterpriseAccessConfig enterpriseAccessConfig)
-    {
-        this.enterpriseAccessConfig = enterpriseAccessConfig;
-    }
-
-
-    /**
-     * Return the configuration properties for each open metadata repository cluster that this local server
-     * connects to.
-     *
-     * @return list of cluster configuration properties
-     */
-    public List<CohortConfig> getCohortConfigList()
-    {
-        if (cohortConfigList == null)
-        {
-            return null;
-        }
-        else
-        {
-            return cohortConfigList;
-        }
-    }
-
-
-    /**
-     * Set up the configuration properties for each open metadata repository cluster that this local server
-     * connects to.
-     *
-     * @param cohortConfigList - list of cluster configuration properties
-     */
-    public void setCohortConfigList(List<CohortConfig> cohortConfigList)
-    {
-        if (cohortConfigList == null)
-        {
-            this.cohortConfigList = null;
-        }
-        else
-        {
-            this.cohortConfigList = new ArrayList<>(cohortConfigList);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveBuilder.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveBuilder.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveBuilder.java
deleted file mode 100644
index e44fd1f..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveBuilder.java
+++ /dev/null
@@ -1,1279 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omrs.archivemanager;
-
-import org.apache.atlas.omrs.archivemanager.properties.*;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.OMRSLogicErrorException;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityDetail;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.Relationship;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.*;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.*;
-
-/**
- * OMRSArchiveBuilder creates an in-memory copy of an open metadata archive that can be saved to disk or processed
- * by a server.
- */
-public class OMRSArchiveBuilder
-{
-    /*
-     * Archive properties supplied on the constructor
-     */
-    private OpenMetadataArchiveProperties archiveProperties = null;
-
-    /*
-     * Hash maps for accumulating TypeDefs and instances as the content of the archive is built up.
-     */
-    private Map<String, PrimitiveDef>      primitiveDefMap       = new HashMap<>();
-    private ArrayList<PrimitiveDef>        primitiveDefList      = new ArrayList<>();
-    private Map<String, EnumDef>           enumDefMap            = new HashMap<>();
-    private ArrayList<EnumDef>             enumDefList           = new ArrayList<>();
-    private Map<String, CollectionDef>     collectionDefMap      = new HashMap<>();
-    private ArrayList<CollectionDef>       collectionDefList     = new ArrayList<>();
-    private Map<String, ClassificationDef> classificationDefMap  = new HashMap<>();
-    private ArrayList<ClassificationDef>   classificationDefList = new ArrayList<>();
-    private Map<String, EntityDef>         entityDefMap          = new HashMap<>();
-    private ArrayList<EntityDef>           entityDefList         = new ArrayList<>();
-    private Map<String, RelationshipDef>   relationshipDefMap    = new HashMap<>();
-    private ArrayList<RelationshipDef>     relationshipDefList   = new ArrayList<>();
-    private Map<String, TypeDefPatch>      typeDefPatchMap       = new HashMap<>();
-    private ArrayList<TypeDefPatch>        typeDefPatchList      = new ArrayList<>();
-    private Map<String, EntityDetail>      entityDetailMap       = new HashMap<>();
-    private ArrayList<EntityDetail>        entityDetailList      = new ArrayList<>();
-    private Map<String, Relationship>      relationshipMap       = new HashMap<>();
-    private ArrayList<Relationship>        relationshipList      = new ArrayList<>();
-    private Map<String, Object>            guidMap               = new HashMap<>();
-    private Map<String, Object>            nameMap               = new HashMap<>();
-    /*
-     * map to keep track of all the AttributeDef names including relationship end names per EntityDef name.
-     */
-    private Map<String,Set<String>> entityAttributeMap = new HashMap();
-
-
-    private static final Logger log = LoggerFactory.getLogger(OMRSArchiveBuilder.class);
-
-
-    /**
-     * Typical constructor passes parameters used to build the open metadata archive's property header.
-     *
-     * @param archiveGUID - unique identifier for this open metadata archive.
-     * @param archiveName - name of the open metadata archive.
-     * @param archiveDescription - description of the open metadata archive.
-     * @param archiveType - enum describing the type of archive this is.
-     * @param originatorName - name of the originator (person or organization) of the archive.
-     * @param creationDate - data that this archive was created.
-     * @param dependsOnArchives - list of GUIDs for archives that this archive depends on (null for no dependencies).
-     */
-    public OMRSArchiveBuilder(String                  archiveGUID,
-                              String                  archiveName,
-                              String                  archiveDescription,
-                              OpenMetadataArchiveType archiveType,
-                              String                  originatorName,
-                              Date                    creationDate,
-                              ArrayList<String>       dependsOnArchives)
-    {
-        this.archiveProperties = new OpenMetadataArchiveProperties();
-
-        this.archiveProperties.setArchiveGUID(archiveGUID);
-        this.archiveProperties.setArchiveName(archiveName);
-        this.archiveProperties.setArchiveDescription(archiveDescription);
-        this.archiveProperties.setArchiveType(archiveType);
-        this.archiveProperties.setOriginatorName(originatorName);
-        this.archiveProperties.setCreationDate(creationDate);
-        this.archiveProperties.setDependsOnArchives(dependsOnArchives);
-    }
-
-
-    /**
-     * Add a new PrimitiveDef to the archive.
-     *
-     * @param primitiveDef - type to add - nulls are ignored
-     */
-    public void addPrimitiveDef(PrimitiveDef   primitiveDef)
-    {
-        final String methodName = "addPrimitiveDef()";
-
-        if (primitiveDef != null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Adding PrimitiveDef: " + primitiveDef.toString());
-            }
-            this.checkForBlanksInTypeName(primitiveDef.getName());
-
-            PrimitiveDef duplicateElement = primitiveDefMap.put(primitiveDef.getName(), primitiveDef);
-
-            if (duplicateElement != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_TYPE_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(primitiveDef.getName(),
-                                                                                AttributeTypeDefCategory.PRIMITIVE.getTypeName(),
-                                                                                duplicateElement.toString(),
-                                                                                primitiveDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateGUID = guidMap.put(primitiveDef.getGUID(), primitiveDef);
-
-            if (duplicateGUID != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_GUID_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(primitiveDef.getGUID(),
-                                                                                duplicateGUID.toString(),
-                                                                                primitiveDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateName = nameMap.put(primitiveDef.getName(), primitiveDef);
-
-            if (duplicateName != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_TYPENAME_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(primitiveDef.getGUID(),
-                                                                                duplicateName.toString(),
-                                                                                primitiveDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            primitiveDefList.add(primitiveDef);
-        }
-    }
-
-
-    /**
-     * Retrieve a PrimitiveDef from the archive.
-     *
-     * @param primitiveDefName - primitive to retrieve
-     * @return PrimitiveDef type
-     */
-    public PrimitiveDef getPrimitiveDef(String   primitiveDefName)
-    {
-        final String methodName = "getPrimitiveDef()";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Retrieving PrimitiveDef: " + primitiveDefName);
-        }
-
-        if (primitiveDefName != null)
-        {
-            PrimitiveDef   primitiveDef  = primitiveDefMap.get(primitiveDefName);
-
-            if (primitiveDef == null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.MISSING_TYPE_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(primitiveDefName,
-                                                                                AttributeTypeDefCategory.PRIMITIVE.getTypeName());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            return primitiveDef;
-        }
-        else
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.MISSING_NAME_FOR_ARCHIVE;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(AttributeTypeDefCategory.PRIMITIVE.getTypeName());
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Add a new CollectionDef to the archive.
-     *
-     * @param collectionDef - type to add
-     */
-    public void addCollectionDef(CollectionDef  collectionDef)
-    {
-        final String methodName = "addCollectionDef()";
-
-        if (collectionDef != null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Adding CollectionDef: " + collectionDef.toString());
-            }
-            this.checkForBlanksInTypeName(collectionDef.getName());
-
-            CollectionDef duplicateElement = collectionDefMap.put(collectionDef.getName(), collectionDef);
-
-            if (duplicateElement != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_TYPE_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(collectionDef.getName(),
-                                                                                AttributeTypeDefCategory.COLLECTION.getTypeName(),
-                                                                                duplicateElement.toString(),
-                                                                                collectionDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateGUID = guidMap.put(collectionDef.getGUID(), collectionDef);
-
-            if (duplicateGUID != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_GUID_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(collectionDef.getGUID(),
-                                                                                duplicateGUID.toString(),
-                                                                                collectionDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateName = nameMap.put(collectionDef.getName(), collectionDef);
-
-            if (duplicateName != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_TYPENAME_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(collectionDef.getGUID(),
-                                                                                duplicateName.toString(),
-                                                                                collectionDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            collectionDefList.add(collectionDef);
-        }
-    }
-
-
-    /**
-     * Retrieve a CollectionDef from the archive.
-     *
-     * @param collectionDefName - type to retrieve
-     * @return CollectionDef type
-     */
-    public CollectionDef getCollectionDef(String  collectionDefName)
-    {
-        final String methodName = "getCollectionDef()";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Retrieving CollectionDef: " + collectionDefName);
-        }
-
-        if (collectionDefName != null)
-        {
-            CollectionDef  collectionDef = collectionDefMap.get(collectionDefName);
-
-            if (collectionDef == null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.MISSING_TYPE_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(collectionDefName,
-                                                                                AttributeTypeDefCategory.COLLECTION.getTypeName());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            return collectionDef;
-        }
-        else
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.MISSING_NAME_FOR_ARCHIVE;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(AttributeTypeDefCategory.COLLECTION.getTypeName());
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Add a new EnumDef to the archive.
-     *
-     * @param enumDef - type to add
-     */
-    public void addEnumDef(EnumDef    enumDef)
-    {
-        final String methodName = "addEnumDef()";
-
-        if (enumDef != null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Adding EnumDef: " + enumDef.toString());
-            }
-            this.checkForBlanksInTypeName(enumDef.getName());
-
-            EnumDef duplicateElement = enumDefMap.put(enumDef.getName(), enumDef);
-
-            if (duplicateElement != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_TYPE_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(enumDef.getName(),
-                                                                                AttributeTypeDefCategory.ENUM_DEF.getTypeName(),
-                                                                                duplicateElement.toString(),
-                                                                                enumDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateGUID = guidMap.put(enumDef.getGUID(), enumDef);
-
-            if (duplicateGUID != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_GUID_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(enumDef.getGUID(),
-                                                                                duplicateGUID.toString(),
-                                                                                enumDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateName = nameMap.put(enumDef.getName(), enumDef);
-
-            if (duplicateName != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_TYPENAME_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(enumDef.getGUID(),
-                                                                                duplicateName.toString(),
-                                                                                enumDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            enumDefList.add(enumDef);
-        }
-    }
-
-
-    /**
-     * Get an existing EnumDef from the archive.
-     *
-     * @param enumDefName - type to retrieve
-     * @return EnumDef object
-     */
-    public EnumDef getEnumDef(String    enumDefName)
-    {
-        final String methodName = "getEnumDef()";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Retrieving EnumDef: " + enumDefName);
-        }
-
-        if (enumDefName != null)
-        {
-            EnumDef enumDef = enumDefMap.get(enumDefName);
-
-            if (enumDef == null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.MISSING_TYPE_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(enumDefName,
-                                                                                AttributeTypeDefCategory.ENUM_DEF.getTypeName());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            return enumDef;
-        }
-        else
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.MISSING_NAME_FOR_ARCHIVE;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(AttributeTypeDefCategory.ENUM_DEF.getTypeName());
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Add a new ClassificationDef to the archive.
-     *
-     * @param classificationDef - type to add
-     */
-    public void addClassificationDef(ClassificationDef   classificationDef)
-    {
-        final String methodName = "addClassificationDef()";
-
-        if (classificationDef != null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Adding ClassificationDef: " + classificationDef.toString());
-            }
-            this.checkForBlanksInTypeName(classificationDef.getName());
-
-            ClassificationDef duplicateElement = classificationDefMap.put(classificationDef.getName(), classificationDef);
-
-            if (duplicateElement != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_TYPE_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(classificationDef.getName(),
-                                                                                TypeDefCategory.CLASSIFICATION_DEF.getTypeName(),
-                                                                                duplicateElement.toString(),
-                                                                                classificationDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateGUID = guidMap.put(classificationDef.getGUID(), classificationDef);
-
-            if (duplicateGUID != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_GUID_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(classificationDef.getGUID(),
-                                                                                duplicateGUID.toString(),
-                                                                                classificationDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateName = nameMap.put(classificationDef.getName(), classificationDef);
-
-            if (duplicateName != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_TYPENAME_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(classificationDef.getName(),
-                                                                                duplicateName.toString(),
-                                                                                classificationDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-            if (classificationDef.getPropertiesDefinition()!=null)
-            {
-                Set<String> attrSet = new HashSet();
-
-                for (TypeDefAttribute typeDefAttr :classificationDef.getPropertiesDefinition())
-                {
-                    String duplicateAttributeName = typeDefAttr.getAttributeName();
-                    if (attrSet.contains(duplicateAttributeName))
-                    {
-                        // relationship duplicate attribute name
-                        OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_CLASSIFICATION_ATTR_IN_ARCHIVE;
-                        String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage(
-                                duplicateAttributeName,
-                                classificationDef.getName()
-                        );
-
-                        throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                this.getClass().getName(),
-                                methodName,
-                                errorMessage,
-                                errorCode.getSystemAction(),
-                                errorCode.getUserAction());
-                    }
-                    attrSet.add(duplicateAttributeName);
-                }
-            }
-
-            classificationDefList.add(classificationDef);
-        }
-    }
-
-
-    /**
-     * Add a new EntityDef to the archive.
-     *
-     * @param entityDef - type to add
-     */
-    public void addEntityDef(EntityDef    entityDef)
-    {
-        final String methodName = "addEntityDef()";
-
-        if (entityDef != null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Adding EntityDef: " + entityDef.toString());
-            }
-            this.checkForBlanksInTypeName(entityDef.getName());
-
-            EntityDef duplicateElement = entityDefMap.put(entityDef.getName(), entityDef);
-
-            if (duplicateElement != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_TYPE_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(entityDef.getName(),
-                                                                                TypeDefCategory.ENTITY_DEF.getTypeName(),
-                                                                                duplicateElement.toString(),
-                                                                                entityDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateGUID = guidMap.put(entityDef.getGUID(), entityDef);
-
-            if (duplicateGUID != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_GUID_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(entityDef.getGUID(),
-                                                                                duplicateGUID.toString(),
-                                                                                entityDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateName = nameMap.put(entityDef.getName(), entityDef);
-
-            if (duplicateName != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_TYPENAME_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(entityDef.getName(),
-                                                                                duplicateName.toString(),
-                                                                                entityDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-            if (entityDef.getPropertiesDefinition()!=null)
-            {
-                Set<String> attrSet = new HashSet();
-
-                for (TypeDefAttribute typeDefAttr :entityDef.getPropertiesDefinition())
-                {
-                    String duplicateAttributeName = typeDefAttr.getAttributeName();
-                    if (attrSet.contains(duplicateAttributeName))
-                    {
-                        // relationship duplicate attribute name
-                        OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_ENTITY_ATTR_IN_ARCHIVE;
-                        String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage(
-                                duplicateAttributeName,
-                                entityDef.getName()
-                        );
-
-                        throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                this.getClass().getName(),
-                                methodName,
-                                errorMessage,
-                                errorCode.getSystemAction(),
-                                errorCode.getUserAction());
-                    }
-                    attrSet.add(duplicateAttributeName);
-                }
-            }
-            entityDefList.add(entityDef);
-        }
-    }
-
-
-    /**
-     * Retrieve the entityDef - or null if it is not defined.
-     *
-     * @param entityDefName - name of the entity
-     * @return the retrieved Entity def
-     */
-    public EntityDef  getEntityDef(String   entityDefName)
-    {
-        final String methodName = "getEntityDef()";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Retrieving EntityDef: " + entityDefName);
-        }
-
-        if (entityDefName != null)
-        {
-            EntityDef retrievedEntityDef = entityDefMap.get(entityDefName);
-
-            if (retrievedEntityDef == null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.MISSING_TYPE_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(entityDefName,
-                                                                                TypeDefCategory.ENTITY_DEF.getTypeName());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            return retrievedEntityDef;
-        }
-        else
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.MISSING_NAME_FOR_ARCHIVE;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(TypeDefCategory.ENTITY_DEF.getTypeName());
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Add a new RelationshipDef to the archive.
-     *
-     * @param relationshipDef - type to add
-     */
-    public void addRelationshipDef(RelationshipDef   relationshipDef)
-    {
-        final String methodName = "addRelationshipDef()";
-
-        if (relationshipDef != null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Adding RelationshipDef: " + relationshipDef.toString());
-            }
-            this.checkForBlanksInTypeName(relationshipDef.getName());
-            RelationshipDef duplicateElement = relationshipDefMap.put(relationshipDef.getName(), relationshipDef);
-
-            if (duplicateElement != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_TYPE_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(relationshipDef.getName(),
-                                                                                TypeDefCategory.RELATIONSHIP_DEF.getTypeName(),
-                                                                                duplicateElement.toString(),
-                                                                                relationshipDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateGUID = guidMap.put(relationshipDef.getGUID(), relationshipDef);
-
-            if (duplicateGUID != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_GUID_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(relationshipDef.getGUID(),
-                                                                                duplicateGUID.toString(),
-                                                                                relationshipDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateName = nameMap.put(relationshipDef.getName(), relationshipDef);
-
-            if (duplicateName != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_TYPENAME_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                        + errorCode.getFormattedErrorMessage(relationshipDef.getName(),
-                        duplicateName.toString(),
-                        relationshipDef.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                        this.getClass().getName(),
-                        methodName,
-                        errorMessage,
-                        errorCode.getSystemAction(),
-                        errorCode.getUserAction());
-            }
-            this.checkRelationshipDefDuplicateAttributes(relationshipDef);
-
-            if (relationshipDef.getPropertiesDefinition()!=null)
-            {
-                Set<String> attrSet = new HashSet();
-                for (TypeDefAttribute typeDefAttr :relationshipDef.getPropertiesDefinition())
-                {
-                    String duplicateAttributeName = typeDefAttr.getAttributeName();
-                    if (attrSet.contains(duplicateAttributeName))
-                    {
-                        // relationship duplicate attribute name
-                        OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_RELATIONSHIP_ATTR_IN_ARCHIVE;
-                        String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage(
-                                duplicateAttributeName,
-                                relationshipDef.getName()
-                        );
-
-                        throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                this.getClass().getName(),
-                                methodName,
-                                errorMessage,
-                                errorCode.getSystemAction(),
-                                errorCode.getUserAction());
-                    }
-                    attrSet.add(duplicateAttributeName);
-                }
-            }
-            relationshipDefList.add(relationshipDef);
-        }
-    }
-
-    /**
-     * Check whether the relationshipDef supplies any attributes that already exist.
-     * @param relationshipDef
-     * @throws OMRSLogicErrorException
-     */
-    protected void checkRelationshipDefDuplicateAttributes(RelationshipDef relationshipDef) throws OMRSLogicErrorException
-    {
-        final String methodName = "checkRelationshipDefDuplicateAttributes()";
-        // check whether the end2 type already has an attribute called end1name already exists locally or in any of its relationships
-        String relationshipName = relationshipDef.getName();
-
-        RelationshipEndDef end1 = relationshipDef.getEndDef1();
-        RelationshipEndDef end2 = relationshipDef.getEndDef2();
-
-        String end1Name = end1.getAttributeName();
-        String end1Type = end1.getEntityType().getName();
-
-        String end2Name = end2.getAttributeName();
-        String end2Type = end2.getEntityType().getName();
-
-        if (end1Name.equals(end2Name) && end1Type.equals(end2Type))
-        {
-
-            if (entityAttributeMap.get(end1Type) == null)
-            {
-                // we have not seen this entity before
-                Set<String> attrSet = new HashSet();
-                attrSet.add(end1Name);
-                entityAttributeMap.put(end1Type, attrSet);
-            } else {
-                Set<String> attrset = entityAttributeMap.get(end1Type);
-                // this attribute name should not already be defined for this entity
-
-                if (attrset.contains(end2Name))
-                {
-                    OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_ENDDEF2_NAME_IN_ARCHIVE;
-                    String errorMessage = errorCode.getErrorMessageId()
-                            + errorCode.getFormattedErrorMessage(
-                            end1Type,
-                            end2Name,
-                            relationshipDef.getName()
-                    );
-
-                    throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                            this.getClass().getName(),
-                            methodName,
-                            errorMessage,
-                            errorCode.getSystemAction(),
-                            errorCode.getUserAction());
-                }
-                attrset.add(end1Name);
-            }
-        } else
-        {
-            if (entityAttributeMap.get(end1Type) == null)
-            {
-                // we have not seen this entity before
-                Set<String> attrSet = new HashSet();
-                attrSet.add(end2Name);
-                entityAttributeMap.put(end1Type, attrSet);
-            } else
-            {
-                Set<String> attrset = entityAttributeMap.get(end1Type);
-                // this attribute name should not already be defined for this entity
-                if (attrset.contains(end2Name)){
-                    OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_ENDDEF2_NAME_IN_ARCHIVE;
-                    String errorMessage = errorCode.getErrorMessageId()
-                            + errorCode.getFormattedErrorMessage(
-                            end1Type,
-                            end2Name,
-                            relationshipDef.getName()
-                    );
-
-                    throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                            this.getClass().getName(),
-                            methodName,
-                            errorMessage,
-                            errorCode.getSystemAction(),
-                            errorCode.getUserAction());
-                }
-                attrset.add(end2Name);
-            }
-
-            if (entityAttributeMap.get(end2Type) == null)
-            {
-                // we have not seen this entity before
-                Set<String> attrSet = new HashSet();
-                attrSet.add(end1Name);
-                entityAttributeMap.put(end2Type, attrSet);
-            } else
-                {
-                Set<String> attrset = entityAttributeMap.get(end2Type);
-                // this attribute name should not already be defined for this entity
-                if (attrset.contains(end1Name))
-                {
-                    OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_ENDDEF1_NAME_IN_ARCHIVE;
-                    String errorMessage = errorCode.getErrorMessageId()
-                            + errorCode.getFormattedErrorMessage(
-                            end2Type,
-                            end1Name,
-                            relationshipDef.getName()
-                    );
-
-                    throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                            this.getClass().getName(),
-                            methodName,
-                            errorMessage,
-                            errorCode.getSystemAction(),
-                            errorCode.getUserAction());
-                }
-                attrset.add(end1Name);
-            }
-        }
-        // check whether end1 has a local attribute name that clashes with a relationship end
-        EntityDef entityDef1 = entityDefMap.get(end1Type);
-
-        if (entityDef1.getPropertiesDefinition()!=null)
-        {
-            Set<String> attrset = entityAttributeMap.get(end1Type);
-            for (TypeDefAttribute typeDefAttr : entityDef1.getPropertiesDefinition())
-            {
-                String localAttributeName = typeDefAttr.getAttributeName();
-                // this attribute name should not already be defined for this entity
-
-                if (localAttributeName.equals(end2Name))
-                {
-                    OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_ENDDEF2_NAME_IN_ARCHIVE;
-                    String errorMessage = errorCode.getErrorMessageId()
-                            + errorCode.getFormattedErrorMessage(
-                            end1Type,
-                            end2Name,
-                            relationshipDef.getName()
-                    );
-
-                    throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                            this.getClass().getName(),
-                            methodName,
-                            errorMessage,
-                            errorCode.getSystemAction(),
-                            errorCode.getUserAction());
-                }
-                attrset.add(end2Name);
-            }
-        }
-        EntityDef entityDef2 = entityDefMap.get(end2Type);
-        if (entityDef2.getPropertiesDefinition()!=null)
-        {
-            Set<String> attrset = entityAttributeMap.get(end2Type);
-            for (TypeDefAttribute typeDefAttr : entityDef2.getPropertiesDefinition())
-            {
-                String localAttributeName = typeDefAttr.getAttributeName();
-                // this attribute name should not already be defined for this entity
-
-                if (localAttributeName.equals(end1Name))
-                {
-                    OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_ENDDEF1_NAME_IN_ARCHIVE;
-                    String errorMessage = errorCode.getErrorMessageId()
-                            + errorCode.getFormattedErrorMessage(
-                            end2Type,
-                            end1Name,
-                            relationshipDef.getName()
-                    );
-
-                    throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                            this.getClass().getName(),
-                            methodName,
-                            errorMessage,
-                            errorCode.getSystemAction(),
-                            errorCode.getUserAction());
-                }
-                attrset.add(end1Name);
-            }
-        }
-    }
-
-
-    /**
-     * Add a new entity to the archive.
-     *
-     * @param entity - instance to add
-     */
-    public void addEntity(EntityDetail   entity)
-    {
-        final String methodName = "addEntity()";
-
-        if (entity != null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Adding Entity: " + entity.toString());
-            }
-
-            EntityDetail   duplicateElement = entityDetailMap.put(entity.getGUID(), entity);
-
-            if (duplicateElement != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_INSTANCE_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(TypeDefCategory.ENTITY_DEF.getTypeName(),
-                                                                                entity.getGUID(),
-                                                                                duplicateElement.toString(),
-                                                                                entity.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateGUID = guidMap.put(entity.getGUID(), entity);
-
-            if (duplicateGUID != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_GUID_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(entity.getGUID(),
-                                                                                duplicateGUID.toString(),
-                                                                                entity.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            entityDetailList.add(entity);
-        }
-    }
-
-
-    /**
-     * Add a new relationship to the archive.
-     *
-     * @param relationship - instance to add
-     */
-    public void addRelationship(Relationship  relationship)
-    {
-        final String methodName = "addRelationship()";
-
-        if (relationship != null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Adding Relationship: " + relationship.toString());
-            }
-
-            Relationship   duplicateElement = relationshipMap.put(relationship.getGUID(), relationship);
-
-            if (duplicateElement != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_INSTANCE_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(TypeDefCategory.ENTITY_DEF.getTypeName(),
-                                                                                relationship.getGUID(),
-                                                                                duplicateElement.toString(),
-                                                                                relationship.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            Object  duplicateGUID = guidMap.put(relationship.getGUID(), relationship);
-
-            if (duplicateGUID != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.DUPLICATE_GUID_IN_ARCHIVE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                        + errorCode.getFormattedErrorMessage(relationship.getGUID(),
-                                                             duplicateGUID.toString(),
-                                                             relationship.toString());
-
-                throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  methodName,
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction());
-            }
-
-            relationshipList.add(relationship);
-        }
-    }
-
-
-    /**
-     * Once the content of the archive has been added to the archive builder, an archive object can be retrieved.
-     *
-     * @return open metadata archive object with all of the supplied content in it.
-     */
-    public OpenMetadataArchive  getOpenMetadataArchive()
-    {
-        final String methodName = "getOpenMetadataArchive()";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Retrieving Open Metadata Archive: " + archiveProperties.getArchiveName());
-        }
-
-        OpenMetadataArchive    archive = new OpenMetadataArchive();
-
-        /*
-         * Set up the archive properties
-         */
-        archive.setArchiveProperties(this.archiveProperties);
-
-        /*
-         * Set up the TypeStore.  The types are added in a strict order to ensure that the dependencies are resolved.
-         */
-        ArrayList<AttributeTypeDef>  attributeTypeDefs = new ArrayList<>();
-        ArrayList<TypeDef>           typeDefs = new ArrayList<>();
-        ArrayList<TypeDefPatch>      typeDefPatches = new ArrayList<>();
-
-        if (! primitiveDefList.isEmpty())
-        {
-            attributeTypeDefs.addAll(primitiveDefList);
-        }
-        if (! collectionDefList.isEmpty())
-        {
-            attributeTypeDefs.addAll(collectionDefList);
-        }
-        if (! enumDefList.isEmpty())
-        {
-            attributeTypeDefs.addAll(enumDefList);
-        }
-        if (! entityDefList.isEmpty())
-        {
-            typeDefs.addAll(entityDefList);
-        }
-        if (! classificationDefList.isEmpty())
-        {
-            typeDefs.addAll(classificationDefList);
-        }
-        if (! relationshipDefList.isEmpty())
-        {
-            typeDefs.addAll(relationshipDefList);
-        }
-
-        if (! typeDefPatchList.isEmpty())
-        {
-            typeDefPatches.addAll(typeDefPatchList);
-        }
-
-        if ((! typeDefs.isEmpty()) || (! typeDefPatches.isEmpty()) || (! attributeTypeDefs.isEmpty()))
-        {
-            OpenMetadataArchiveTypeStore   typeStore = new OpenMetadataArchiveTypeStore();
-
-            if (! attributeTypeDefs.isEmpty())
-            {
-                typeStore.setAttributeTypeDefs(attributeTypeDefs);
-            }
-
-            if (! typeDefs.isEmpty())
-            {
-                typeStore.setNewTypeDefs(typeDefs);
-            }
-
-            if (! typeDefPatches.isEmpty())
-            {
-                typeStore.setTypeDefPatches(typeDefPatches);
-            }
-
-            archive.setArchiveTypeStore(typeStore);
-        }
-
-
-        /*
-         * Finally set up the instance store
-         */
-        ArrayList<EntityDetail>  entities      = new ArrayList<>();
-        ArrayList<Relationship>  relationships = new ArrayList<>();
-
-        if (! entityDetailList.isEmpty())
-        {
-            entities.addAll(entityDetailList);
-        }
-        if (! relationshipList.isEmpty())
-        {
-            relationships.addAll(relationshipList);
-        }
-
-        if ((! entities.isEmpty()) || (! relationships.isEmpty()))
-        {
-            OpenMetadataArchiveInstanceStore   instanceStore = new OpenMetadataArchiveInstanceStore();
-
-            if (! entities.isEmpty())
-            {
-                instanceStore.setEntities(entities);
-            }
-
-            if (! relationships.isEmpty())
-            {
-                instanceStore.setRelationships(relationships);
-            }
-
-            archive.setArchiveInstanceStore(instanceStore);
-        }
-
-        return archive;
-    }
-    private void checkForBlanksInTypeName(String typeName)
-    {
-        final String methodName = "checkForBlanksInTypeName()";
-        if (typeName.contains(" "))
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.BLANK_TYPENAME_IN_ARCHIVE;
-            String        errorMessage = errorCode.getErrorMessageId()
-                    + errorCode.getFormattedErrorMessage(typeName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                    this.getClass().getName(),
-                    methodName,
-                    errorMessage,
-                    errorCode.getSystemAction(),
-                    errorCode.getUserAction());
-        }
-
-    }
-}


[39/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/README.md
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/README.md b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/README.md
deleted file mode 100644
index ae9feac..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/README.md
+++ /dev/null
@@ -1,46 +0,0 @@
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-# AssetConsumer OMAS FFDC
-
-Package org.apache.atlas.omas.assetconsumer.ffdc provides the
-first failure data capture support for the AssetConsumer OMAS module.
-This includes an error code enum,
-a runtime exception, a base class for checked exceptions plus
-implementation of each specific checked exception.
-
-The error code enum (AssetConsumerErrorCode) has an entry for each unique situation
-where an exception is returned.  Each entry defines:
-
-* A unique id for the error
-* An HTTP error code for rest calls
-* A unique message Id
-* Message text with place holders for specific values
-* A description of the cause of the error and system action as a result.
-* A description of how to correct the error (if known)
-
-Each exception (whether a checked or runtime exception) has two constructors.
-
-* The first constructor is used when a new error has been detected.
-
-* The second constructor is used when another exception has been caught.
-This caught exception is passed on the constructor so it is effectively
-embedded in the AssetConsumer OMAS exception.
-
-Both constructors take the values from the AssetConsumerErrorCode
-enum to define the cause and resolution.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/AmbiguousConnectionNameException.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/AmbiguousConnectionNameException.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/AmbiguousConnectionNameException.java
deleted file mode 100644
index 1215eda..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/AmbiguousConnectionNameException.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.ffdc.exceptions;
-
-
-/**
- * The AmbiguousConnectionNameException is thrown by the Asset Consumer OMAS when a connection name used (typically the
- * displayName) to request a connector instance is not unique and so the Asset Consumer OMAS is not able to determine
- * which connection to use.
- */
-public class AmbiguousConnectionNameException extends AssetConsumerCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a AmbiguousConnectionNameException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public AmbiguousConnectionNameException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a AmbiguousConnectionNameException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public AmbiguousConnectionNameException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/AssetConsumerCheckedExceptionBase.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/AssetConsumerCheckedExceptionBase.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/AssetConsumerCheckedExceptionBase.java
deleted file mode 100644
index 4e22fb8..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/AssetConsumerCheckedExceptionBase.java
+++ /dev/null
@@ -1,173 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.ffdc.exceptions;
-
-/**
- * AssetConsumerCheckedExceptionBase provides a checked exception for reporting errors found when using
- * the Asset Consumer OMAS services.
- *
- * Typically these errors are either configuration or operational errors that can be fixed by an administrator
- * or power AssetConsumerInterface.  However, there may be the odd bug that surfaces here. The AssetConsumerErrorCode can be used with
- * this exception to populate it with standard messages.  The aim is to be able to uniquely identify the cause
- * and remedy for the error.
- */
-public class AssetConsumerCheckedExceptionBase extends Exception
-{
-    /*
-     * These default values are only seen if this exception is initialized using one of its superclass constructors.
-     */
-    private int       reportedHTTPCode;
-    private String    reportingClassName;
-    private String    reportingActionDescription;
-    private String    reportedErrorMessage;
-    private String    reportedSystemAction;
-    private String    reportedUserAction;
-    private Throwable reportedCaughtException = null;
-
-
-    /**
-     * This is the typical constructor used for creating a ConnectionCheckedException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public AssetConsumerCheckedExceptionBase(int    httpCode,
-                                             String className,
-                                             String actionDescription,
-                                             String errorMessage,
-                                             String systemAction,
-                                             String userAction)
-    {
-        super(errorMessage);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-    }
-
-
-    /**
-     * This is the  constructor used for creating a ConnectionCheckedException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     */
-    public AssetConsumerCheckedExceptionBase(int       httpCode,
-                                             String    className,
-                                             String    actionDescription,
-                                             String    errorMessage,
-                                             String    systemAction,
-                                             String    userAction,
-                                             Throwable caughtError)
-    {
-        super(errorMessage, caughtError);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtException = caughtError;
-    }
-
-
-    /**
-     * Return the HTTP response code to use with this exception.
-     *
-     * @return reportedHTTPCode
-     */
-    public int getReportedHTTPCode()
-    {
-        return reportedHTTPCode;
-    }
-
-    /**
-     * The class that created this exception.
-     *
-     * @return reportingClassName
-     */
-    public String getReportingClassName()
-    {
-        return reportingClassName;
-    }
-
-
-    /**
-     * The type of request that the class was performing when the condition occurred that resulted in this
-     * exception.
-     *
-     * @return reportingActionDescription
-     */
-    public String getReportingActionDescription()
-    {
-        return reportingActionDescription;
-    }
-
-
-    /**
-     * A formatted short description of the cause of the condition that resulted in this exception.
-     *
-     * @return reportedErrorMessage
-     */
-    public String getErrorMessage()
-    {
-        return reportedErrorMessage;
-    }
-
-
-    /**
-     * A description of the action that the system took as a result of the error condition.
-     *
-     * @return reportedSystemAction
-     */
-    public String getReportedSystemAction()
-    {
-        return reportedSystemAction;
-    }
-
-
-    /**
-     * A description of the action necessary to correct the error.
-     *
-     * @return reportedUserAction
-     */
-    public String getReportedUserAction()
-    {
-        return reportedUserAction;
-    }
-
-
-    /**
-     * An exception that was caught and wrapped by this exception.  If a null is returned, then this exception is
-     * newly created and not the result of a previous exception.
-     *
-     * @return reportedCaughtException
-     */
-    public Throwable getReportedCaughtException() { return reportedCaughtException; }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/AssetConsumerRuntimeException.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/AssetConsumerRuntimeException.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/AssetConsumerRuntimeException.java
deleted file mode 100644
index d8444b4..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/AssetConsumerRuntimeException.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.ffdc.exceptions;
-
-/**
- * AssetConsumerRuntimeException is used for all runtime exceptions generated by the connected asset OMAS.
- * It is used in conjunction with the AssetConsumerErrorCode to provide first failure data capture for these errors.
- */
-public class AssetConsumerRuntimeException extends RuntimeException
-{
-    /*
-     * These default values are only seen if this exception is initialized using one of its superclass constructors.
-     */
-    private int       reportedHTTPCode = 500;
-    private String    reportingClassName = "<Unknown>";
-    private String    reportingActionDescription = "<Unknown>";
-    private String    reportedErrorMessage = "<Unknown>";
-    private String    reportedSystemAction = "<Unknown>";
-    private String    reportedUserAction = "<Unknown>";
-    private Throwable reportedCaughtException = null;
-
-
-    /**
-     * This is the typical constructor used for creating an AssetConsumerRuntimeException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public AssetConsumerRuntimeException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(errorMessage);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-    }
-
-
-    /**
-     * This is the constructor used for creating a AssetConsumerRuntimeException when an unexpected error has been
-     * caught.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - previous error causing this exception
-     */
-    public AssetConsumerRuntimeException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(errorMessage, caughtError);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtException = caughtError;
-    }
-
-
-    /**
-     * Return the HTTP response code to use with this exception.
-     *
-     * @return reportedHTTPCode
-     */
-    public int getReportedHTTPCode()
-    {
-        return reportedHTTPCode;
-    }
-
-    /**
-     * The class that created this exception.
-     *
-     * @return reportingClassName
-     */
-    public String getReportingClassName()
-    {
-        return reportingClassName;
-    }
-
-
-    /**
-     * The type of request that the class was performing when the condition occurred that resulted in this
-     * exception.
-     *
-     * @return reportingActionDescription
-     */
-    public String getReportingActionDescription()
-    {
-        return reportingActionDescription;
-    }
-
-
-    /**
-     * A formatted short description of the cause of the condition that resulted in this exception.
-     *
-     * @return reportedErrorMessage
-     */
-    public String getErrorMessage()
-    {
-        return reportedErrorMessage;
-    }
-
-
-    /**
-     * A description of the action that the system took as a result of the error condition.
-     *
-     * @return reportedSystemAction
-     */
-    public String getReportedSystemAction()
-    {
-        return reportedSystemAction;
-    }
-
-
-    /**
-     * A description of the action necessary to correct the error.
-     *
-     * @return reportedUserAction
-     */
-    public String getReportedUserAction()
-    {
-        return reportedUserAction;
-    }
-
-
-    /**
-     * An exception that was caught and wrapped by this exception.  If a null is returned, then this exception is
-     * newly created and not the result of a previous exception.
-     *
-     * @return reportedCaughtException
-     */
-    public Throwable getReportedCaughtException() { return reportedCaughtException; }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/InvalidParameterException.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/InvalidParameterException.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/InvalidParameterException.java
deleted file mode 100644
index 084fb8b..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/InvalidParameterException.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.ffdc.exceptions;
-
-
-/**
- * The InvalidParameterException is thrown by the Asset Consumer OMAS when a parameters is null or an invalid
- * value.
- */
-public class InvalidParameterException extends AssetConsumerCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a InvalidParameterException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public InvalidParameterException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a InvalidParameterException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public InvalidParameterException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/PropertyServerException.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/PropertyServerException.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/PropertyServerException.java
deleted file mode 100644
index fc74608..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/PropertyServerException.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.ffdc.exceptions;
-
-
-/**
- * The PropertyServerException is thrown by the Asset Consumer OMAS when it is not able to communicate with the
- * property server.
- */
-public class PropertyServerException extends AssetConsumerCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a PropertyServerException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public PropertyServerException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a PropertyServerException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public PropertyServerException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UnrecognizedConnectionGUIDException.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UnrecognizedConnectionGUIDException.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UnrecognizedConnectionGUIDException.java
deleted file mode 100644
index 3af8474..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UnrecognizedConnectionGUIDException.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.ffdc.exceptions;
-
-
-/**
- * The UnrecognizedConnectionGUIDException is thrown by the Asset Consumer OMAS when the unique identifier (guid)
- * used to request a connection object from the property server is either unrecognized, or is the identifier
- * for a different type of object.
- */
-public class UnrecognizedConnectionGUIDException extends AssetConsumerCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a UnrecognizedConnectionGUIDException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public UnrecognizedConnectionGUIDException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a UnrecognizedConnectionGUIDException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     */
-    public UnrecognizedConnectionGUIDException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UnrecognizedConnectionNameException.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UnrecognizedConnectionNameException.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UnrecognizedConnectionNameException.java
deleted file mode 100644
index 3e29fa5..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UnrecognizedConnectionNameException.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.ffdc.exceptions;
-
-/**
- * The UnrecognizedConnectionNameException is thrown by the Asset Consumer OMAS when a connection name used
- * to request a Connection or Connector is not recognized and so the Asset Consumer OMAS is not able to determine
- * which connection to use.
- */
-public class UnrecognizedConnectionNameException extends AssetConsumerCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a UnrecognizedConnectionNameException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public UnrecognizedConnectionNameException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a UnrecognizedConnectionNameException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     */
-    public UnrecognizedConnectionNameException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UnrecognizedConnectionURLException.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UnrecognizedConnectionURLException.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UnrecognizedConnectionURLException.java
deleted file mode 100644
index 668e28c..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UnrecognizedConnectionURLException.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.ffdc.exceptions;
-
-/**
- * The UnrecognizedConnectionURLException is thrown by the Asset Consumer OMAS when a connection URL used
- * to request a Connection or Connector is not recognized and so the Asset Consumer OMAS is not able to determine
- * which connection to use.
- */
-public class UnrecognizedConnectionURLException extends AssetConsumerCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a UnrecognizedConnectionURLException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public UnrecognizedConnectionURLException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a UnrecognizedConnectionURLException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     */
-    public UnrecognizedConnectionURLException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UserNotAuthorizedException.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UserNotAuthorizedException.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UserNotAuthorizedException.java
deleted file mode 100644
index 9441940..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/exceptions/UserNotAuthorizedException.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.ffdc.exceptions;
-
-
-/**
- * The UserNotAuthorizedException is thrown by the Asset Consumer OMAS when a userId passed on a request is not
- * authorized to perform the requested action.
- */
-public class UserNotAuthorizedException extends AssetConsumerCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a UserNotAuthorizedException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public UserNotAuthorizedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a UserNotAuthorizedException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public UserNotAuthorizedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/listener/AssetConsumerOMRSTopicListener.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/listener/AssetConsumerOMRSTopicListener.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/listener/AssetConsumerOMRSTopicListener.java
deleted file mode 100644
index 3eb4cad..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/listener/AssetConsumerOMRSTopicListener.java
+++ /dev/null
@@ -1,249 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.listener;
-
-import org.apache.atlas.ocf.properties.Connection;
-import org.apache.atlas.omas.assetconsumer.publisher.AssetConsumerPublisher;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSEventOriginator;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSInstanceEvent;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSInstanceEventType;
-import org.apache.atlas.omrs.eventmanagement.events.v1.OMRSEventV1;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.topicconnectors.OMRSTopicListener;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class AssetConsumerOMRSTopicListener implements OMRSTopicListener
-{
-    private static final Logger log = LoggerFactory.getLogger(AssetConsumerOMRSTopicListener.class);
-
-    private AssetConsumerPublisher   publisher;
-
-
-    /**
-     * The constructor is given the connection to the out topic for Asset Consumer OMAS
-     * along with classes for testing and manipulating instances.
-     *
-     * @param assetConsumerOutTopic - connection to the out topic
-     * @param repositoryHelper - provides methods for working with metadata instances
-     * @param repositoryValidator - provides validation of metadata instance
-     * @param componentName - name of component
-     */
-    public AssetConsumerOMRSTopicListener(Connection              assetConsumerOutTopic,
-                                          OMRSRepositoryHelper    repositoryHelper,
-                                          OMRSRepositoryValidator repositoryValidator,
-                                          String                  componentName)
-    {
-        publisher = new AssetConsumerPublisher(assetConsumerOutTopic,
-                                               repositoryHelper,
-                                               repositoryValidator,
-                                               componentName);
-    }
-
-
-    /**
-     * Method to pass an event received on topic.
-     *
-     * @param event - inbound event
-     */
-    public void processEvent(OMRSEventV1 event)
-    {
-        /*
-         * The event should not be null but worth checking.
-         */
-        if (event != null)
-        {
-            /*
-             * Determine the category of event to process.
-             */
-            switch (event.getEventCategory())
-            {
-                case REGISTRY:
-                    if (log.isDebugEnabled())
-                    {
-                        log.debug("Ignoring registry event: " + event.toString());
-                    }
-                    break;
-
-                case TYPEDEF:
-                    if (log.isDebugEnabled())
-                    {
-                        log.debug("Ignoring type event: " + event.toString());
-                    }
-                    break;
-
-                case INSTANCE:
-                    this.processInstanceEvent(new OMRSInstanceEvent(event));
-                    break;
-
-                default:
-                    if (log.isDebugEnabled())
-                    {
-                        log.debug("Unknown event received :|");
-                    }
-            }
-        }
-        else
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Null OMRS Event received :(");
-            }
-        }
-    }
-
-
-    /**
-     * Unpack and deliver an instance event to the InstanceEventProcessor
-     *
-     * @param instanceEvent - event to unpack
-     */
-    private void processInstanceEvent(OMRSInstanceEvent  instanceEvent)
-    {
-        if (log.isDebugEnabled())
-        {
-            log.debug("Processing instance event", instanceEvent);
-        }
-
-        if (instanceEvent == null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Null instance event - ignoring event");
-            }
-        }
-        else
-        {
-            OMRSInstanceEventType instanceEventType       = instanceEvent.getInstanceEventType();
-            OMRSEventOriginator   instanceEventOriginator = instanceEvent.getEventOriginator();
-
-            if ((instanceEventType != null) && (instanceEventOriginator != null))
-            {
-                switch (instanceEventType)
-                {
-                    case NEW_ENTITY_EVENT:
-                        publisher.processNewEntity(instanceEvent.getEntity());
-                        break;
-
-                    case UPDATED_ENTITY_EVENT:
-                        publisher.processUpdatedEntity(instanceEvent.getEntity());
-                        break;
-
-                    case CLASSIFIED_ENTITY_EVENT:
-                        publisher.processUpdatedEntity(instanceEvent.getEntity());
-                        break;
-
-                    case RECLASSIFIED_ENTITY_EVENT:
-                        publisher.processUpdatedEntity(instanceEvent.getEntity());
-                        break;
-
-                    case DECLASSIFIED_ENTITY_EVENT:
-                        publisher.processUpdatedEntity(instanceEvent.getEntity());
-                        break;
-
-                    case DELETED_ENTITY_EVENT:
-                        publisher.processDeletedEntity(instanceEvent.getEntity());
-                        break;
-
-                    case PURGED_ENTITY_EVENT:
-                        if (log.isDebugEnabled())
-                        {
-                            log.debug("Ignoring entity purge events");
-                        }
-                        break;
-
-                    case UNDONE_ENTITY_EVENT:
-                        publisher.processUpdatedEntity(instanceEvent.getEntity());
-                        break;
-
-                    case RESTORED_ENTITY_EVENT:
-                        publisher.processRestoredEntity(instanceEvent.getEntity());
-                        break;
-
-                    case REFRESH_ENTITY_REQUEST:
-                    case REFRESHED_ENTITY_EVENT:
-                    case RE_HOMED_ENTITY_EVENT:
-                    case RETYPED_ENTITY_EVENT:
-                    case RE_IDENTIFIED_ENTITY_EVENT:
-                        if (log.isDebugEnabled())
-                        {
-                            log.debug("Ignoring entity repository maintenance events");
-                        }
-                        break;
-
-                    case NEW_RELATIONSHIP_EVENT:
-                        publisher.processNewRelationship(instanceEvent.getRelationship());
-                        break;
-
-                    case UPDATED_RELATIONSHIP_EVENT:
-                        publisher.processUpdatedRelationship(instanceEvent.getRelationship());
-                        break;
-
-                    case UNDONE_RELATIONSHIP_EVENT:
-                        publisher.processUpdatedRelationship(instanceEvent.getRelationship());
-                        break;
-
-                    case DELETED_RELATIONSHIP_EVENT:
-                        publisher.processDeletedRelationship(instanceEvent.getRelationship());
-
-                        break;
-
-                    case PURGED_RELATIONSHIP_EVENT:
-                        if (log.isDebugEnabled())
-                        {
-                            log.debug("Ignoring relationship purge events");
-                        }
-                        break;
-
-                    case RESTORED_RELATIONSHIP_EVENT:
-                        publisher.processRestoredRelationship(instanceEvent.getRelationship());
-
-                        break;
-
-                    case REFRESH_RELATIONSHIP_REQUEST:
-                    case REFRESHED_RELATIONSHIP_EVENT:
-                    case RE_IDENTIFIED_RELATIONSHIP_EVENT:
-                    case RE_HOMED_RELATIONSHIP_EVENT:
-                    case RETYPED_RELATIONSHIP_EVENT:
-
-                        if (log.isDebugEnabled())
-                        {
-                            log.debug("Ignoring relationship repository maintenance events");
-                        }
-                        break;
-
-                    case INSTANCE_ERROR_EVENT:
-
-                        if (log.isDebugEnabled())
-                        {
-                            log.debug("Ignoring instance error events");
-                        }
-                        break;
-                }
-            }
-            else
-            {
-                if (log.isDebugEnabled())
-                {
-                    log.debug("Ignored instance event - null type");
-                }
-            }
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/properties/Asset.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/properties/Asset.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/properties/Asset.java
deleted file mode 100644
index 7a69604..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/properties/Asset.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * Asset describes the basic properties of an Asset
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Asset
-{
-    /*
-     * URL where the metadata about the asset is located.  It remains null if no repository is known.
-     */
-
-    /*
-     * Unique id for the asset.
-     */
-    protected String url              = null;
-    protected String guid             = null;
-    protected String typeId           = null;
-    protected String typeName         = null;
-    protected long   typeVersion      = 0;
-    protected String typeDescription  = null;
-    protected String qualifiedName    = null;
-    protected String displayName      = null;
-    protected String description      = null;
-    protected String owner            = null;
-
-    /**
-     * Default constructor
-     */
-    public Asset()
-    {
-    }
-
-    public String getURL()
-    {
-        return url;
-    }
-
-    public void setURL(String url)
-    {
-        this.url = url;
-    }
-
-    public String getGUID()
-    {
-        return guid;
-    }
-
-    public void setGUID(String guid)
-    {
-        this.guid = guid;
-    }
-
-    public String getTypeId()
-    {
-        return typeId;
-    }
-
-    public void setTypeId(String typeId)
-    {
-        this.typeId = typeId;
-    }
-
-    public String getTypeName()
-    {
-        return typeName;
-    }
-
-    public void setTypeName(String typeName)
-    {
-        this.typeName = typeName;
-    }
-
-    public long getTypeVersion()
-    {
-        return typeVersion;
-    }
-
-    public void setTypeVersion(long typeVersion)
-    {
-        this.typeVersion = typeVersion;
-    }
-
-    public String getTypeDescription()
-    {
-        return typeDescription;
-    }
-
-    public void setTypeDescription(String typeDescription)
-    {
-        this.typeDescription = typeDescription;
-    }
-
-    public String getQualifiedName()
-    {
-        return qualifiedName;
-    }
-
-    public void setQualifiedName(String qualifiedName)
-    {
-        this.qualifiedName = qualifiedName;
-    }
-
-    public String getDisplayName()
-    {
-        return displayName;
-    }
-
-    public void setDisplayName(String displayName)
-    {
-        this.displayName = displayName;
-    }
-
-    public String getDescription()
-    {
-        return description;
-    }
-
-    public void setDescription(String description)
-    {
-        this.description = description;
-    }
-
-    public String getOwner()
-    {
-        return owner;
-    }
-
-    public void setOwner(String owner)
-    {
-        this.owner = owner;
-    }
-
-
-    @Override
-    public String toString()
-    {
-        return "Asset{" +
-                "url='" + url + '\'' +
-                ", guid='" + guid + '\'' +
-                ", typeId='" + typeId + '\'' +
-                ", typeName='" + typeName + '\'' +
-                ", typeVersion=" + typeVersion +
-                ", typeDescription='" + typeDescription + '\'' +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", displayName='" + displayName + '\'' +
-                ", description='" + description + '\'' +
-                ", owner='" + owner + '\'' +
-                ", URL='" + getURL() + '\'' +
-                ", GUID='" + getGUID() + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/publisher/AssetConsumerPublisher.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/publisher/AssetConsumerPublisher.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/publisher/AssetConsumerPublisher.java
deleted file mode 100644
index d14fd1d..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/publisher/AssetConsumerPublisher.java
+++ /dev/null
@@ -1,319 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.publisher;
-
-
-import org.apache.atlas.ocf.properties.Connection;
-import org.apache.atlas.omas.assetconsumer.properties.Asset;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.*;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefLink;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.List;
-
-/**
- * AssetConsumerPublisher is responsible for publishing events about assets.  It is called
- * when an interesting OMRS Event is added to the Enterprise OMRS Topic.  It adds events to the Asset Consumer OMAS
- * out topic.
- */
-public class AssetConsumerPublisher
-{
-    private static final String assetTypeName                  = "Asset";
-    private static final String assetPropertyNameQualifiedName = "qualifiedName";
-    private static final String assetPropertyNameDisplayName   = "name";
-    private static final String assetPropertyNameOwner         = "owner";
-    private static final String assetPropertyNameDescription   = "description";
-
-    private static final Logger log = LoggerFactory.getLogger(AssetConsumerPublisher.class);
-
-    private Connection              assetConsumerOutTopic;
-    private OMRSRepositoryHelper    repositoryHelper;
-    private OMRSRepositoryValidator repositoryValidator;
-    private String                  componentName;
-
-
-    /**
-     * The constructor is given the connection to the out topic for Asset Consumer OMAS
-     * along with classes for testing and manipulating instances.
-     *
-     * @param assetConsumerOutTopic - connection to the out topic
-     * @param repositoryHelper - provides methods for working with metadata instances
-     * @param repositoryValidator - provides validation of metadata instance
-     * @param componentName - name of component
-     */
-    public AssetConsumerPublisher(Connection              assetConsumerOutTopic,
-                                  OMRSRepositoryHelper    repositoryHelper,
-                                  OMRSRepositoryValidator repositoryValidator,
-                                  String                  componentName)
-    {
-        this.assetConsumerOutTopic = assetConsumerOutTopic;
-        this.repositoryHelper = repositoryHelper;
-        this.repositoryValidator = repositoryValidator;
-        this.componentName = componentName;
-    }
-
-
-    /**
-     * Determine whether a new entity is an Asset.  If it is then publish an Asset Consumer Event about it.
-     *
-     * @param entity - entity object that has just been created.
-     */
-    public void processNewEntity(EntityDetail   entity)
-    {
-        String assetType = getAssetType(entity);
-
-        if (assetType != null)
-        {
-            this.processNewAsset(this.getAsset(entity));
-        }
-    }
-
-
-    /**
-     * Determine whether an updated entity is an Asset.  If it is then publish an Asset Consumer Event about it.
-     *
-     * @param entity - entity object that has just been updated.
-     */
-    public void processUpdatedEntity(EntityDetail   entity)
-    {
-        String assetType = getAssetType(entity);
-
-        if (assetType != null)
-        {
-            this.processUpdatedAsset(this.getAsset(entity));
-        }
-    }
-
-
-    /**
-     * Determine whether a deleted entity is an Asset.  If it is then publish an Asset Consumer Event about it.
-     *
-     * @param entity - entity object that has just been deleted.
-     */
-    public void processDeletedEntity(EntityDetail   entity)
-    {
-        String assetType = getAssetType(entity);
-
-        if (assetType != null)
-        {
-            this.processDeletedAsset(this.getAsset(entity));
-        }
-    }
-
-
-    /**
-     * Determine whether a restored entity is an Asset.  If it is then publish an Asset Consumer Event about it.
-     *
-     * @param entity - entity object that has just been restored.
-     */
-    public void processRestoredEntity(EntityDetail   entity)
-    {
-        String assetType = getAssetType(entity);
-
-        if (assetType != null)
-        {
-            this.processRestoredAsset(this.getAsset(entity));
-        }
-    }
-
-
-    /**
-     * Determine whether a new relationship is related to an Asset.
-     * If it is then publish an Asset Consumer Event about it.
-     *
-     * @param relationship - relationship object that has just been created.
-     */
-    public void processNewRelationship(Relationship   relationship)
-    {
-        // todo
-    }
-
-
-    /**
-     * Determine whether an updated relationship is related to an Asset.
-     * If it is then publish an Asset Consumer Event about it.
-     *
-     * @param relationship - relationship object that has just been updated.
-     */
-    public void processUpdatedRelationship(Relationship   relationship)
-    {
-        // todo
-    }
-
-
-    /**
-     * Determine whether a deleted relationship is related to an Asset.
-     * If it is then publish an Asset Consumer Event about it.
-     *
-     * @param relationship - relationship object that has just been deleted.
-     */
-    public void processDeletedRelationship(Relationship   relationship)
-    {
-        // todo
-    }
-
-
-    /**
-     * Determine whether a restored relationship is related to an Asset.
-     * If it is then publish an Asset Consumer Event about it.
-     *
-     * @param relationship - relationship object that has just been restored.
-     */
-    public void processRestoredRelationship(Relationship   relationship)
-    {
-        // todo
-    }
-
-
-    /**
-     * Return the name of the Asset type if this entity has a type that inherits from Asset.
-     *
-     * @param entity - entity to test
-     * @return String containing Asset type name, or null if not an Asset.
-     */
-    private String getAssetType(EntityDetail  entity)
-    {
-        final   String   methodName = "getAssetType";
-
-        if (repositoryValidator.isATypeOf(componentName, entity, assetTypeName, methodName))
-        {
-            InstanceType   entityType = entity.getType();
-
-            if (entityType != null)
-            {
-                return entityType.getTypeDefName();
-            }
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Return an Asset object extracted from the supplied entity object
-     * @param entity - entity describing the asset
-     * @return Asset object
-     */
-    private Asset getAsset(EntityDetail   entity)
-    {
-        Asset   asset = new Asset();
-
-        if (entity != null)
-        {
-            asset.setURL(entity.getInstanceURL());
-            asset.setGUID(entity.getGUID());
-
-            InstanceType  instanceType = entity.getType();
-            if (instanceType != null)
-            {
-                asset.setTypeId(instanceType.getTypeDefGUID());
-                asset.setTypeName(instanceType.getTypeDefName());
-                asset.setTypeVersion(instanceType.getTypeDefVersion());
-                asset.setTypeDescription(instanceType.getTypeDefDescription());
-            }
-
-            InstanceProperties instanceProperties = entity.getProperties();
-
-            if (instanceProperties != null)
-            {
-                InstancePropertyValue  instancePropertyValue;
-
-                instancePropertyValue = instanceProperties.getPropertyValue(assetPropertyNameQualifiedName);
-
-                if (instancePropertyValue != null)
-                {
-                    PrimitivePropertyValue  primitivePropertyValue = (PrimitivePropertyValue)instancePropertyValue;
-                    asset.setQualifiedName(primitivePropertyValue.toString());
-                }
-
-                instancePropertyValue = instanceProperties.getPropertyValue(assetPropertyNameDisplayName);
-
-                if (instancePropertyValue != null)
-                {
-                    PrimitivePropertyValue  primitivePropertyValue = (PrimitivePropertyValue)instancePropertyValue;
-                    asset.setDisplayName(primitivePropertyValue.toString());
-                }
-
-                instancePropertyValue = instanceProperties.getPropertyValue(assetPropertyNameOwner);
-
-                if (instancePropertyValue != null)
-                {
-                    PrimitivePropertyValue  primitivePropertyValue = (PrimitivePropertyValue)instancePropertyValue;
-                    asset.setOwner(primitivePropertyValue.toString());
-                }
-
-                instancePropertyValue = instanceProperties.getPropertyValue(assetPropertyNameDescription);
-
-                if (instancePropertyValue != null)
-                {
-                    PrimitivePropertyValue  primitivePropertyValue = (PrimitivePropertyValue)instancePropertyValue;
-                    asset.setDescription(primitivePropertyValue.toString());
-                }
-            }
-        }
-
-        return asset;
-    }
-
-
-    /**
-     * Publish event about a new asset.
-     *
-     * @param asset - asset to report on.
-     */
-    private void processNewAsset(Asset   asset)
-    {
-        log.info("Asset Consumer Event => New Asset: " + asset.toString());
-    }
-
-
-    /**
-     * Publish event about an updated asset.
-     *
-     * @param asset - asset to report on.
-     */
-    private void processUpdatedAsset(Asset   asset)
-    {
-        log.info("Asset Consumer Event => Updated Asset: " + asset.toString());
-    }
-
-
-    /**
-     * Publish event about a deleted asset.
-     *
-     * @param asset - asset to report on.
-     */
-    private void processDeletedAsset(Asset   asset)
-    {
-        log.info("Asset Consumer Event => Deleted Asset: " + asset.toString());
-    }
-
-
-    /**
-     * Publish event about a restored asset.
-     *
-     * @param asset - asset to report on.
-     */
-    private void processRestoredAsset(Asset   asset)
-    {
-        log.info("Asset Consumer Event => Restored Asset: " + asset.toString());
-    }
-}


[34/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ConnectorType.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ConnectorType.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ConnectorType.java
deleted file mode 100644
index 3c0e8c2..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ConnectorType.java
+++ /dev/null
@@ -1,173 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The ConnectorType describe the implementation details of a particular type of OCF connector.
- * The properties for a connector type are defined in model 0201.
- * They include:
- *
- * <ul>
- *     <li>
- *         guid - Globally unique identifier for the connector type.
- *     </li>
- *     <li>
- *         url - External link address for the connector type properties in the metadata repository.  This URL can be
- *         stored as a property in another entity to create an explicit link to this connector type.
- *     </li>
- *     <li>
- *         qualifiedName - The official (unique) name for the connector type. This is often defined by the IT
- *         systems management organization and should be used (when available) on audit logs and error messages.
- *     </li>
- *     <li>
- *         displayName - A consumable name for the connector type.   Often a shortened form of the qualifiedName for use
- *         on user interfaces and messages.  The displayName should be only be used for audit logs and error messages
- *         if the qualifiedName is not set.
- *     </li>
- *     <li>
- *         description - A full description of the connector type covering details of the assets it connects to
- *         along with usage and versioning information.
- *     </li>
- *     <li>
- *         connectorProviderClassName - The connector provider is the factory for a particular type of connector.
- *         This property defines the class name for the connector provider that the Connector Broker should use to request
- *         new connector instances.
- *     </li>
- *     <li>
- *         additionalProperties - Any additional properties that the connector provider needs to know in order to
- *         create connector instances.
- *     </li>
- * </ul>
- *
- * The connectorTypeProperties class is simply used to cache the properties for an connector type.
- * It is used by other classes to exchange this information between a metadata repository and a consumer.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class ConnectorType extends Referenceable
-{
-    /*
-     * Attributes of a connector type
-     */
-    private   String                 displayName = null;
-    private   String                 description = null;
-    private   String                 connectorProviderClassName = null;
-
-    /**
-     * Default Constructor - this is used when Connector Type is used inside a connection object which is itself
-     * not yet connected to an asset.  In this case the ParentAsset is null.
-     */
-    public ConnectorType()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor for a connectorType that is connected to an asset (either directly or indirectly).
-     *
-     * @param templateConnectorType - template object to copy.
-     */
-    public ConnectorType(ConnectorType templateConnectorType)
-    {
-        super(templateConnectorType);
-
-        /*
-         * All properties are initialised as null so only change their default setting if the template is
-         * not null
-         */
-        if (templateConnectorType != null)
-        {
-            displayName = templateConnectorType.getDisplayName();
-            description = templateConnectorType.getDescription();
-            connectorProviderClassName = templateConnectorType.getConnectorProviderClassName();
-        }
-    }
-
-
-    /**
-     * Returns the stored display name property for the connector type.
-     * If no display name is available then null is returned.
-     *
-     * @return displayName
-     */
-    public String getDisplayName()
-    {
-        return displayName;
-    }
-
-
-    /**
-     * Updates the display name property stored for the connector type.
-     * If a null is supplied it means no display name is available.
-     *
-     * @param  newDisplayName - consumable name
-     */
-    public void setDisplayName(String  newDisplayName) { displayName = newDisplayName; }
-
-
-    /**
-     * Returns the stored description property for the connector type.
-     * If no description is available then null is returned.
-     *
-     * @return description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Updates the description property stored for the connector type.
-     * If a null is supplied it means no description is available.
-     *
-     * @param  newDescription - description
-     */
-    public void setDescription(String  newDescription) { description = newDescription; }
-
-
-    /**
-     * Returns the stored connectorProviderClassName property for the connector type.
-     * If no connectorProviderClassName is available then null is returned.
-     *
-     * @return connectorProviderClassName
-     */
-    public String getConnectorProviderClassName()
-    {
-        return connectorProviderClassName;
-    }
-
-
-    /**
-     * Updates the connectorProviderClassName property stored for the connector type.
-     * If a null is supplied it means no class name is available.
-     *
-     * @param  newClassName - class name (including package name)
-     */
-    public void setConnectorProviderClassName(String  newClassName) { connectorProviderClassName = newClassName; }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/DerivedSchemaElement.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/DerivedSchemaElement.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/DerivedSchemaElement.java
deleted file mode 100644
index 8789fb8..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/DerivedSchemaElement.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * Derived schema elements are used in views to define elements that are calculated using data from other sources.
- * It contains a list of queries and a formula to combine the resulting values.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class DerivedSchemaElement extends PrimitiveSchemaElement
-{
-    private String                          formula = null;
-    private List<SchemaImplementationQuery> queries = null;
-
-    /**
-     * Default constructor
-     */
-    public DerivedSchemaElement()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone Constructor - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the definitions clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param templateSchemaElement - template object to copy.
-     */
-    public DerivedSchemaElement(DerivedSchemaElement templateSchemaElement)
-    {
-        super(templateSchemaElement);
-
-        if (templateSchemaElement != null)
-        {
-            List<SchemaImplementationQuery>   templateQueries = templateSchemaElement.getQueries();
-
-            formula = templateSchemaElement.getFormula();
-            queries = new ArrayList<>(templateQueries);
-        }
-    }
-
-
-    /**
-     * Return the formula used to combine the values of the queries.  Each query is numbers 0, 1, ... and the
-     * formula has placeholders in it to show how the query results are combined.
-     *
-     * @return String formula
-     */
-    public String getFormula() { return formula; }
-
-
-    /**
-     * Set up the formula used to combine the values of the queries.  Each query is numbers 0, 1, ... and the
-     * formula has placeholders in it to show how the query results are combined.
-     *
-     * @param formula String formula
-     */
-    public void setFormula(String formula) { this.formula = formula; }
-
-
-    /**
-     * Return the list of queries that are used to create the derived schema element.
-     *
-     * @return SchemaImplementationQueries - list of queries
-     */
-    public List<SchemaImplementationQuery> getQueries()
-    {
-        if (queries == null)
-        {
-            return queries;
-        }
-        else
-        {
-            return new ArrayList<>(queries);
-        }
-    }
-
-
-    /**
-     * Set up the list of queries that are used to create the derived schema element.
-     *
-     * @param queries - SchemaImplementationQueries - list of queries
-     */
-    public void setQueries(List<SchemaImplementationQuery> queries)
-    {
-        this.queries = queries;
-    }
-
-
-    /**
-     * Returns a clone of this object as the abstract SchemaElement class.
-     *
-     * @return PrimitiveSchemaElement object
-     */
-    @Override
-    public SchemaElement cloneSchemaElement()
-    {
-        return new DerivedSchemaElement(this);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ElementHeader.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ElementHeader.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ElementHeader.java
deleted file mode 100644
index 60c43ad..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ElementHeader.java
+++ /dev/null
@@ -1,208 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * ElementHeader provides the common identifier and type information for all properties objects
- * that link off of the asset and have a guid associated with them.  This typically means it is
- * represented by an entity in the metadata repository.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public abstract class ElementHeader extends PropertyBase
-{
-    /*
-     * Common header for first class elements from a metadata repository
-     */
-    protected ElementType               type = null;
-    protected String                    guid = null;
-    protected String                    url = null;
-
-    /*
-     * Attached classifications
-     */
-    private List<Classification> classifications = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public ElementHeader()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateHeader - element to copy
-     */
-    public ElementHeader(ElementHeader templateHeader)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(templateHeader);
-
-        if (templateHeader != null)
-        {
-            /*
-             * Copy the values from the supplied like.
-             */
-            type = templateHeader.getType();
-            guid = templateHeader.getGUID();
-            url = templateHeader.getURL();
-        }
-    }
-
-
-    /**
-     * Return the element type properties for this properties object.  These values are set up by the metadata repository
-     * and define details to the metadata entity used to represent this element.
-     *
-     * @return ElementType - type information.
-     */
-    public ElementType getType() {
-        return type;
-    }
-
-
-    /**
-     * Set up the type for this properties object.  Null means the type information is unknown.
-     *
-     * @param type - details of the metadata type for this properties object
-     */
-    public void setType(ElementType type)
-    {
-        if (type == null)
-        {
-            this.type = null;
-        }
-        else
-        {
-            this.type = type;
-        }
-    }
-
-
-    /**
-     * Return the unique id for the properties object.  Null means no guid is assigned.
-     *
-     * @return String - unique id
-     */
-    public String getGUID() {
-        return guid;
-    }
-
-
-    /**
-     * Set up the unique id for the properties object.  Null means no guid is assigned.
-     *
-     * @param guid - String - unique id
-     */
-    public void setGUID(String guid) { this.guid = guid; }
-
-
-    /**
-     * Returns the URL to access the properties object in the metadata repository.
-     * If no url is available then null is returned.
-     *
-     * @return String - URL
-     */
-    public String getURL() {
-        return url;
-    }
-
-
-    /**
-     * Set up the the URL for the properties object in the metadata repository.  Null means
-     * no url is available.
-     *
-     * @param url - String - URL
-     */
-    public void setURL(String url) {
-        this.url = url;
-    }
-
-
-    /**
-     * Return the list of classifications associated with the asset.   This is an enumeration and the
-     * pointers are set to the start of the list of classifications
-     *
-     * @return Classifications - list of classifications
-     */
-    public List<Classification> getClassifications()
-    {
-        if (classifications == null)
-        {
-            return classifications;
-        }
-        else
-        {
-            return new ArrayList<>(classifications);
-        }
-    }
-
-
-    /**
-     * Set up the list of classifications for this asset.
-     *
-     * @param classifications - list of classifications
-     */
-    public void setClassifications(List<Classification> classifications)
-    {
-        if (classifications == null)
-        {
-            this.classifications = classifications;
-        }
-        else
-        {
-            this.classifications = new ArrayList<>(classifications);
-        }
-    }
-
-    /**
-     * Provide a common implementation of hashCode for all OCF properties objects that have a guid.
-     * The guid is unique and is randomly assigned and so its hashCode is as good as anything to
-     * describe the hash code of the properties object.  If the guid is null then use the superclass implementation.
-     */
-    public int hashCode()
-    {
-        if (guid == null)
-        {
-            return super.hashCode();
-        }
-        else
-        {
-            return guid.hashCode();
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ElementType.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ElementType.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ElementType.java
deleted file mode 100644
index a7d6c37..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ElementType.java
+++ /dev/null
@@ -1,237 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.ocf.properties.ElementOrigin;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The ElementType provide details of the type information associated with the element.  Most consumers
- * of the properties do not need this information.  It is provided to asset consumers primarily as diagnostic
- * information.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class ElementType extends PropertyBase
-{
-    protected String        elementTypeId                   = null;
-    protected String        elementTypeName                 = null;
-    protected long          elementTypeVersion              = 0;
-    protected String        elementTypeDescription          = null;
-    protected String        elementAccessServiceURL         = null;
-    protected ElementOrigin elementOrigin                   = null;
-    protected String        elementHomeMetadataCollectionId = null;
-
-
-
-    /**
-     * Typical Constructor
-     */
-    public ElementType()
-    {
-        super();
-
-        /*
-         * Nothing to do - all local variables initialized in the declaration
-         */
-    }
-
-
-    /**
-     * Copy/clone constructor
-     *
-     * @param templateType - type to clone
-     */
-    public ElementType(ElementType templateType)
-    {
-        super(templateType);
-
-        /*
-         * Copy the properties from the supplied template
-         */
-        this.elementTypeId = templateType.getElementTypeId();
-        this.elementTypeName = templateType.getElementTypeName();
-        this.elementTypeVersion = templateType.getElementTypeVersion();
-        this.elementTypeDescription = templateType.getElementTypeDescription();
-        this.elementAccessServiceURL = templateType.getElementAccessServiceURL();
-        this.elementHomeMetadataCollectionId = templateType.getElementHomeMetadataCollectionId();
-    }
-
-    /**
-     * Return unique identifier for the element's type.
-     *
-     * @return element type id
-     */
-    public String getElementTypeId()
-    {
-        return elementTypeId;
-    }
-
-
-    /**
-     * Set the unique identifier of the element's type.
-     *
-     * @param elementTypeId - new identifier for the element's type
-     */
-    public void setElementTypeId(String elementTypeId)
-    {
-        this.elementTypeId = elementTypeId;
-    }
-
-
-    /**
-     * Return name of element's type.
-     *
-     * @return - elementTypeName
-     */
-    public String getElementTypeName()
-    {
-        return elementTypeName;
-    }
-
-
-    /**
-     * Set name of element's type.
-     *
-     * @param elementTypeName - element type name
-     */
-    public void setElementTypeName(String elementTypeName)
-    {
-        this.elementTypeName = elementTypeName;
-    }
-
-
-    /**
-     * Return the version number for the element type.
-     *
-     * @return elementTypeVersion - version number for the element type.
-     */
-    public long getElementTypeVersion()
-    {
-        return elementTypeVersion;
-    }
-
-
-    /**
-     * Set up a new version number for the element type.
-     *
-     * @param elementTypeVersion version number for the element type
-     */
-    public void setElementTypeVersion(long elementTypeVersion)
-    {
-        this.elementTypeVersion = elementTypeVersion;
-    }
-
-
-    /**
-     * Return the description for the element type.
-     *
-     * @return elementTypeDescription - description for the element type
-     */
-    public String getElementTypeDescription()
-    {
-        return elementTypeDescription;
-    }
-
-
-    /**
-     * Set up a new description for the element type.
-     *
-     * @param elementTypeDescription - description of element type
-     */
-    public void setElementTypeDescription(String elementTypeDescription)
-    {
-        this.elementTypeDescription = elementTypeDescription;
-    }
-
-
-    /**
-     * Return the URL of the server where the element was retrieved from.  Typically this is
-     * a server where the OMAS interfaces are activated.  If no URL is known for the server then null is returned.
-     *
-     * @return elementSourceServerURL - the url of the server where the element came from
-     */
-    public String getElementAccessServiceURL()
-    {
-        return elementAccessServiceURL;
-    }
-
-
-    /**
-     * Set up the name of the server where this metadata element was retrieved from. Typically this is
-     * a server where the OMAS interfaces are activated.  If no URL is known for the server then null is passed in the
-     * parameter.
-     *
-     * @param elementAccessServiceURL - url of the OMAS server
-     */
-    public void setElementAccessServiceURL(String    elementAccessServiceURL)
-    {
-        this.elementAccessServiceURL = elementAccessServiceURL;
-    }
-
-
-
-    /**
-     * Return the origin of the metadata element.
-     *
-     * @return ElementOrigin enum
-     */
-    public ElementOrigin getElementOrigin() { return elementOrigin; }
-
-
-    /**
-     * Set up the origin of the metadata element.
-     *
-     * @param elementOrigin - enum
-     */
-    public void setElementOrigin(ElementOrigin elementOrigin)
-    {
-        this.elementOrigin = elementOrigin;
-    }
-
-
-    /**
-     * Returns the unique identifier for the metadata collection that is managed by the repository
-     * where the element originates (its home repository).
-     *
-     * @return String metadata collection id
-     */
-    public String getElementHomeMetadataCollectionId()
-    {
-        return elementHomeMetadataCollectionId;
-    }
-
-
-    /**
-     * Set up the unique identifier for the metadata collection that is managed by the repository
-     * where the element originates (its home repository).
-     *
-     * @param elementHomeMetadataCollectionId - String guid
-     */
-    public void setElementHomeMetadataCollectionId(String elementHomeMetadataCollectionId)
-    {
-        this.elementHomeMetadataCollectionId = elementHomeMetadataCollectionId;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/EmbeddedConnection.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/EmbeddedConnection.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/EmbeddedConnection.java
deleted file mode 100644
index e2cc0f9..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/EmbeddedConnection.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The EmbeddedConnection is used within a VirtualConnection.  It contains a connection and additional properties
- * the VirtualConnection uses when working with the EmbeddedConnection.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class EmbeddedConnection extends PropertyBase
-{
-    /*
-     * Attributes of an embedded connection
-     */
-    private AdditionalProperties      embeddedConnectionProperties = null;
-    private Connection                embeddedConnection = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public EmbeddedConnection()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateEmbeddedConnection - element to copy
-     */
-    public EmbeddedConnection(EmbeddedConnection templateEmbeddedConnection)
-    {
-        super(templateEmbeddedConnection);
-
-        if (templateEmbeddedConnection != null)
-        {
-            AdditionalProperties  templateConnectionProperties = templateEmbeddedConnection.getEmbeddedConnectionProperties();
-            Connection            templateConnection           = templateEmbeddedConnection.getEmbeddedConnection();
-
-            if (templateConnectionProperties != null)
-            {
-                embeddedConnectionProperties = new AdditionalProperties(templateConnectionProperties);
-            }
-            if (templateConnection != null)
-            {
-                embeddedConnection = new Connection(templateConnection);
-            }
-        }
-    }
-
-
-    /**
-     * Return the properties for the embedded connection.
-     *
-     * @return AdditionalProperties
-     */
-    public AdditionalProperties getEmbeddedConnectionProperties()
-    {
-        if (embeddedConnectionProperties == null)
-        {
-            return embeddedConnectionProperties;
-        }
-        else
-        {
-            return new AdditionalProperties(embeddedConnectionProperties);
-        }
-    }
-
-
-    /**
-     * Set up the embedded connection's properties.
-     *
-     * @param embeddedConnectionProperties - Additional properties
-     */
-    public void setEmbeddedConnectionProperties(AdditionalProperties embeddedConnectionProperties)
-    {
-        this.embeddedConnectionProperties = embeddedConnectionProperties;
-    }
-
-
-    /**
-     * Return the embedded connection.
-     *
-     * @return Connection object.
-     */
-    public Connection getEmbeddedConnection()
-    {
-        if (embeddedConnection == null)
-        {
-            return embeddedConnection;
-        }
-        else
-        {
-            return new Connection(embeddedConnection);
-        }
-    }
-
-
-    /**
-     * Set up the embedded connection.
-     *
-     * @param embeddedConnection - Connection
-     */
-    public void setEmbeddedConnection(Connection embeddedConnection)
-    {
-        this.embeddedConnection = embeddedConnection;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Endpoint.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Endpoint.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Endpoint.java
deleted file mode 100644
index ff9f49b..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Endpoint.java
+++ /dev/null
@@ -1,236 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The Endpoint describes the network information necessary for a connector to connect to the server
- * where the Asset is accessible from.  The properties for an endpoint are defined in model 0040.
- * They include:
- * <ul>
- *     <li>
- *         type - definition of the specific metadata type for the endpoint.
- *     </li>
- *     <li>
- *         guid - Globally unique identifier for the endpoint.
- *     </li>
- *     <li>
- *         url - External link address for the endpoint properties in the metadata repository.
- *         This URL can be stored as a property in another entity to create an explicit link to this endpoint.
- *     </li>
- *     <li>
- *         qualifiedName - The official (unique) name for the endpoint. This is often defined by the IT systems management
- *         organization and should be used (when available) on audit logs and error messages.
- *     </li>
- *     <li>
- *         displayName - A consumable name for the endpoint.   Often a shortened form of the qualifiedName for use
- *         on user interfaces and messages.  The displayName should be only be used for audit logs and error messages
- *         if the qualifiedName is not set.
- *     </li>
- *     <li>
- *         description - A description for the endpoint.
- *     </li>
- *     <li>
- *         address - The location of the asset.  For network connected resources, this is typically the
- *         URL and port number (if needed) for the server where the asset is located
- *         (or at least accessible by the connector).  For file-based resources, this is typically the name of the file.
- *     </li>
- *     <li>
- *         protocol - The communication protocol that the connection should use to connect to the server.
- *     </li>
- *     <li>
- *         encryptionMethod - Describes the encryption method to use (if any).  This is an open value allowing
- *         information needed by the connector user to retrieve all of the information they need to work with
- *         the endpoint.
- *     </li>
- *     <li>
- *         additionalProperties - Any additional properties that the connector need to know in order to
- *         access the Asset.
- *     </li>
- * </ul>
- *
- * The Endpoint class is simply used to cache the properties for an endpoint.
- * It is used by other classes to exchange this information between a metadata repository and a consumer.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Endpoint extends Referenceable
-{
-    /*
-     * Properties of an Endpoint
-     */
-    private   String                 displayName      = null;
-    private   String                 description      = null;
-    private   String                 address          = null;
-    private   String                 protocol         = null;
-    private   String                 encryptionMethod = null;
-
-    /**
-     * Default Constructor - used when Endpoint is inside a Connection that is not part of the connected asset
-     * properties.  In this case there is no parent asset.
-     */
-    public Endpoint()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor for an Endpoint that is connected to an Asset (either directly or indirectly).
-     *
-     * @param templateEndpoint - template object to copy.
-     */
-    public Endpoint(Endpoint templateEndpoint)
-    {
-        super(templateEndpoint);
-
-        /*
-         * All properties are initialised as null so only change their default setting if the template is
-         * not null
-         */
-        if (templateEndpoint != null)
-        {
-            displayName      = templateEndpoint.getDisplayName();
-            address          = templateEndpoint.getAddress();
-            protocol         = templateEndpoint.getProtocol();
-            encryptionMethod = templateEndpoint.getEncryptionMethod();
-
-            AdditionalProperties   templateAdditionalProperties = templateEndpoint.getAdditionalProperties();
-
-            if (templateAdditionalProperties != null)
-            {
-                additionalProperties = new AdditionalProperties(templateAdditionalProperties);
-            }
-        }
-    }
-
-
-    /**
-     * Returns the stored display name property for the endpoint.
-     * If no display name is available then null is returned.
-     *
-     * @return displayName
-     */
-    public String getDisplayName()
-    {
-        return displayName;
-    }
-
-
-    /**
-     * Updates the display name property stored for the endpoint.
-     * If a null is supplied it means there is no display name for the endpoint.
-     *
-     * @param  newDisplayName - simple name for the endpoint
-     */
-    public void setDisplayName(String  newDisplayName) { displayName = newDisplayName; }
-
-
-    /**
-     * Return the description for the endpoint.
-     *
-     * @return String description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Set up the description for the endpoint.
-     *
-     * @param description - String description
-     */
-    public void setDescription(String description)
-    {
-        this.description = description;
-    }
-
-    /**
-     * Returns the stored address property for the endpoint.
-     * If no network address is available then null is returned.
-     *
-     * @return address
-     */
-    public String getAddress()
-    {
-        return address;
-    }
-
-
-    /**
-     * Updates the address property needed to get to the asset.
-     * If a null is supplied it means there is no address for this endpoint.
-     *
-     * @param  newAddress - network url for the server
-     */
-    public void setAddress(String  newAddress) { address = newAddress; }
-
-
-    /**
-     * Returns the stored protocol property for the endpoint.
-     * If no protocol is available then null is returned.
-     *
-     * @return protocol
-     */
-    public String getProtocol()
-    {
-        return protocol;
-    }
-
-
-    /**
-     * Updates the protocol property stored for the endpoint.
-     * If a null is supplied it is saved as an empty string.
-     *
-     * @param  newProtocol - endpoint protocol
-     */
-    public void setProtocol(String  newProtocol) { protocol = newProtocol; }
-
-
-    /**
-     * Returns the stored encryptionMethod property for the endpoint.  This is an open type allowing the information
-     * needed to work with a specific encryption mechanism used by the endpoint to be defined.
-     * If no encryptionMethod property is available (typically because this is an unencrypted endpoint)
-     * then null is returned.
-     *
-     * @return encryption method information
-     */
-    public String getEncryptionMethod()
-    {
-        return encryptionMethod;
-    }
-
-
-    /**
-     * Updates the encryptionMethod property stored for the endpoint.  If a null is supplied it means no
-     * encryption is being used.
-     *
-     * @param  newEncryptionMethod - encryption mechanism in use
-     */
-    public void setEncryptionMethod(String  newEncryptionMethod) { encryptionMethod = newEncryptionMethod; }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ExternalIdentifier.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ExternalIdentifier.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ExternalIdentifier.java
deleted file mode 100644
index ea1ef34..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ExternalIdentifier.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * ExternalIdentifier stores information about an identifier for the asset that is used in an external system.
- * This is used for correlating information about the asset across different systems.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class ExternalIdentifier extends Referenceable
-{
-    /*
-     * Attributes of an external identifier
-     */
-    private String            identifier = null;
-    private String            description = null;
-    private String            usage = null;
-    private String            source = null;
-    private KeyPattern        keyPattern = null;
-    private Referenceable     scope = null;
-    private String            scopeDescription = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public ExternalIdentifier()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateExternalIdentifier - element to copy
-     */
-    public ExternalIdentifier(ExternalIdentifier templateExternalIdentifier)
-    {
-        /*
-         * Initialize the super class.
-         */
-        super(templateExternalIdentifier);
-
-        if (templateExternalIdentifier != null)
-        {
-            /*
-             * Copy the values from the supplied template.
-             */
-            identifier = templateExternalIdentifier.getIdentifier();
-            description = templateExternalIdentifier.getDescription();
-            usage = templateExternalIdentifier.getUsage();
-            source = templateExternalIdentifier.getSource();
-            keyPattern = templateExternalIdentifier.getKeyPattern();
-
-            Referenceable  templateScope = templateExternalIdentifier.getScope();
-            if (templateScope != null)
-            {
-                /*
-                 * Ensure comment replies has this object's parent asset, not the template's.
-                 */
-                scope = new Referenceable(templateScope);
-            }
-
-            scopeDescription = templateExternalIdentifier.getScopeDescription();
-        }
-    }
-
-
-    /**
-     * Return the external identifier for this asset.
-     *
-     * @return String identifier
-     */
-    public String getIdentifier() { return identifier; }
-
-
-    /**
-     * Set up the external identifier for the asset.
-     * @param identifier - String
-     */
-    public void setIdentifier(String identifier) { this.identifier = identifier; }
-
-
-    /**
-     * Return the description of the external identifier.
-     *
-     * @return String description
-     */
-    public String getDescription() { return description; }
-
-
-    /**
-     * Set up the description of the external identifier.
-     *
-     * @param description - String
-     */
-    public void setDescription(String description) { this.description = description; }
-
-
-    /**
-     * Return details of how, where and when this external identifier is used.
-     *
-     * @return String usage
-     */
-    public String getUsage() { return usage; }
-
-
-    /**
-     * Setup the usage guidance for this external identifier.
-     *
-     * @param usage - String
-     */
-    public void setUsage(String usage) { this.usage = usage; }
-
-
-    /**
-     * Return details of the source system where this external identifier comes from.
-     *
-     * @return String server
-     */
-    public String getSource() { return source; }
-
-
-    /**
-     * Set up the source description for this external identifier.
-     *
-     * @param source - String
-     */
-    public void setSource(String source) { this.source = source; }
-
-
-    /**
-     * Return the key pattern that is used with this external identifier.
-     *
-     * @return KeyPattern enum
-     */
-    public KeyPattern getKeyPattern() { return keyPattern; }
-
-
-    /**
-     * Set up the name of the key pattern used for this external identifier.
-     *
-     * @param keyPattern enum
-     */
-    public void setKeyPattern(KeyPattern keyPattern) { this.keyPattern = keyPattern; }
-
-
-    /**
-     * Return the scope of this external identifier.  This depends on the key pattern.  It may be a server definition,
-     * a reference data set or glossary term.
-     *
-     * @return Referencable scope
-     */
-    public Referenceable getScope()
-    {
-        if (scope == null)
-        {
-            return scope;
-        }
-        else
-        {
-            return new Referenceable(scope);
-        }
-    }
-
-
-    /**
-     * Set up the scope description for this external identifier.
-     *
-     * @param scope - Referenceable
-     */
-    public void setScope(Referenceable scope) { this.scope = scope; }
-
-
-    /**
-     * Return the text description of the scope for this external identifier.
-     *
-     * @return String scope description
-     */
-    public String getScopeDescription() { return scopeDescription; }
-
-
-    /**
-     * Set up the description of the scope for this external identifier.
-     *
-     * @param scopeDescription - String
-     */
-    public void setScopeDescription(String scopeDescription) { this.scopeDescription = scopeDescription; }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ExternalReference.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ExternalReference.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ExternalReference.java
deleted file mode 100644
index 00fc51c..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/ExternalReference.java
+++ /dev/null
@@ -1,195 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * ExternalReference stores information about an link to an external resource that is relevant to this asset.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class ExternalReference extends Referenceable
-{
-    /*
-     * Attributes of an external reference
-     */
-    private String            referenceId = null;
-    private String            linkDescription = null;
-    private String            displayName = null;
-    private String            uri = null;
-    private String            resourceDescription = null;
-    private String            version = null;
-    private String            organization = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public ExternalReference()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateExternalReference - element to copy
-     */
-    public ExternalReference(ExternalReference templateExternalReference)
-    {
-        /*
-         * Initialize the super class.
-         */
-        super(templateExternalReference);
-
-        if (templateExternalReference != null)
-        {
-            /*
-             * Copy the values from the supplied template.
-             */
-            referenceId = templateExternalReference.getReferenceId();
-            linkDescription = templateExternalReference.getLinkDescription();
-            displayName = templateExternalReference.getDisplayName();
-            uri = templateExternalReference.getURI();
-            resourceDescription = templateExternalReference.getResourceDescription();
-            version = templateExternalReference.getVersion();
-            organization = templateExternalReference.getOrganization();
-        }
-    }
-
-
-    /**
-     * Return the identifier given to this reference (with respect to this asset).
-     *
-     * @return String referenceId
-     */
-    public String getReferenceId() { return referenceId; }
-
-
-    /**
-     * Set up the reference identifier for this asset's reference.
-     *
-     * @param referenceId String
-     */
-    public void setReferenceId(String referenceId) { this.referenceId = referenceId; }
-
-
-    /**
-     * Return the description of the reference (with respect to this asset).
-     *
-     * @return String link description.
-     */
-    public String getLinkDescription() { return linkDescription; }
-
-
-    /**
-     * Set up the description of the reference (with respect to this asset).
-     *
-     * @param linkDescription - String
-     */
-    public void setLinkDescription(String linkDescription) { this.linkDescription = linkDescription; }
-
-
-    /**
-     * Return the display name of this external reference.
-     *
-     * @return String display name.
-     */
-    public String getDisplayName() { return displayName; }
-
-
-    /**
-     * Set up the display name for this external reference.
-     *
-     * @param displayName - String
-     */
-    public void setDisplayName(String displayName) { this.displayName = displayName; }
-
-
-    /**
-     * Return the URI used to retrieve the resource that this external reference represents.
-     *
-     * @return String URI
-     */
-    public String getURI() { return uri; }
-
-
-    /**
-     * Set up the URI used to retrieve the resource that this external reference represents.
-     *
-     * @param uri - String
-     */
-    public void setURI(String uri) { this.uri = uri; }
-
-
-    /**
-     * Return the description of the resource that this external reference represents.
-     *
-     * @return String resource description
-     */
-    public String getResourceDescription() { return resourceDescription; }
-
-
-    /**
-     * Set up the description of the resource that this external reference represents.
-     *
-     * @param resourceDescription String
-     */
-    public void setResourceDescription(String resourceDescription) { this.resourceDescription = resourceDescription; }
-
-
-    /**
-     * Return the version of the resource that this external reference represents.
-     *
-     * @return String version
-     */
-    public String getVersion() { return version; }
-
-
-    /**
-     * Set up the version of the resource that this external reference represents.
-     *
-     * @param version - String
-     */
-    public void setVersion(String version) { this.version = version; }
-
-
-    /**
-     * Return the name of the organization that owns the resource that this external reference represents.
-     *
-     * @return String organization name
-     */
-    public String getOrganization() { return organization; }
-
-
-    /**
-     * Set up the name of the organization that owns the resource that this external reference represents.
-     *
-     * @param organization - String
-     */
-    public void setOrganization(String organization) { this.organization = organization; }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Feedback.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Feedback.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Feedback.java
deleted file mode 100644
index a05658e..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Feedback.java
+++ /dev/null
@@ -1,210 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * Feedback contains the comments, tags, ratings and likes that consumers of the asset have created.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Feedback extends PropertyBase
-{
-    /*
-     * Lists of objects that make up the feedback on the asset.
-     */
-    private List<InformalTag> informalTags = null;
-    private List<Like>        likes        = null;
-    private List<Rating>      ratings      = null;
-    private List<Comment>     comments     = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public Feedback()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the feedback clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param templateFeedback - template object to copy.
-     */
-    public Feedback(Feedback   templateFeedback)
-    {
-        super(templateFeedback);
-
-        /*
-         * Only create a child object if the template is not null.
-         */
-        if (templateFeedback != null)
-        {
-            List<InformalTag>      templateInformalTags = templateFeedback.getInformalTags();
-            List<Like>             templateLikes = templateFeedback.getLikes();
-            List<Rating>           templateRatings = templateFeedback.getRatings();
-            List<Comment>          templateComments = templateFeedback.getComments();
-
-            if (templateInformalTags != null)
-            {
-                this.informalTags = new ArrayList<>(templateInformalTags);
-            }
-
-            if (templateLikes != null)
-            {
-                this.likes = new ArrayList<>(templateLikes);
-            }
-
-            if (templateRatings != null)
-            {
-                this.ratings = new ArrayList<>(templateRatings);
-            }
-
-            if (templateComments != null)
-            {
-                this.comments = new ArrayList<>(templateComments);
-            }
-        }
-
-    }
-
-
-    /**
-     * Returns a copy of the information tags for the asset in an iterator.  This iterator can be used to step
-     * through the tags once.  Therefore call getInformalTags() for each scan of the asset's tags.
-     *
-     * @return InformalTags - tag list
-     */
-    public List<InformalTag> getInformalTags()
-    {
-        if (informalTags == null)
-        {
-            return informalTags;
-        }
-        else
-        {
-            return new ArrayList<>(informalTags);
-        }
-    }
-
-
-    /**
-     * Set up the informal tags for the asset.
-     *
-     * @param informalTags - list of tags.
-     */
-    public void setInformalTags(List<InformalTag> informalTags) { this.informalTags = informalTags; }
-
-
-    /**
-     * Returns a copy of the likes for the asset in an iterator.  This iterator can be used to step
-     * through the list of like once.  Therefore call getLikes() for each scan of the asset's like objects.
-     *
-     * @return Likes - like object list
-     */
-    public List<Like> getLikes()
-    {
-        if (likes == null)
-        {
-            return likes;
-        }
-        else
-        {
-            return new ArrayList<>(likes);
-        }
-    }
-
-
-    /**
-     * Set up the list of likes (one object per person liking the asset) for the asset.
-     *
-     * @param likes - list of likes
-     */
-    public void setLikes(List<Like> likes) { this.likes = likes; }
-
-
-    /**
-     * Returns a copy of the ratings for the asset in an iterator.  This iterator can be used to step
-     * through the ratings once.  Therefore call getRatings() for each scan of the asset's ratings.
-     *
-     * @return Ratings - rating list
-     */
-    public List<Rating> getRatings()
-    {
-        if (ratings == null)
-        {
-            return ratings;
-        }
-        else
-        {
-            return new ArrayList<>(ratings);
-        }
-    }
-
-
-    /**
-     * Set the list of ratings that people have given the asset.
-     *
-     * @param ratings - list of ratings - one Rating object for each person's rating.
-     */
-    public void setRatings(List<Rating> ratings) {
-        this.ratings = ratings;
-    }
-
-
-    /**
-     * Returns a copy of the comments for the asset in an iterator.  This iterator can be used to step
-     * through the comments once.  Therefore call getComments() for each scan of the asset's comments.
-     *
-     * @return Comments - comment list
-     */
-    public List<Comment> getComments()
-    {
-        if (comments == null)
-        {
-            return comments;
-        }
-        else
-        {
-            return new ArrayList<>(comments);
-        }
-    }
-
-
-    /**
-     * Adds the list of comments for the asset.
-     *
-     * @param comments - comments list.
-     */
-    public void setComments(List<Comment> comments) { this.comments = comments; }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/InformalTag.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/InformalTag.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/InformalTag.java
deleted file mode 100644
index 9a461e4..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/InformalTag.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.omas.connectedasset.ffdc.ConnectedAssetErrorCode;
-import org.apache.atlas.omas.connectedasset.ffdc.exceptions.ConnectedAssetRuntimeException;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * InformalTag stores information about a tag connected to an asset.
- * InformalTags provide informal classifications to assets
- * and can be added at any time.
- *
- * InformalTags have the userId of the person who added the tag, the name of the tag and its description.
- *
- * The content of the tag is a personal judgement (which is why the user's id is in the tag)
- * and there is no formal review of the tags.  However, they can be used as a basis for crowd-sourcing
- * Glossary terms.
- *
- * Private InformalTags are only returned to the user that created them.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class InformalTag extends ElementHeader
-{
-    /*
-     * Attributes of a InformalTag
-     */
-    private boolean isPrivateTag = false;
-
-    private String name = null;
-    private String description = null;
-    private String user = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public InformalTag()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateInformalTag - element to copy
-     */
-    public InformalTag(InformalTag templateInformalTag)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(templateInformalTag);
-
-        if (templateInformalTag != null)
-        {
-            /*
-             * Copy the values from the supplied tag.
-             */
-            isPrivateTag = templateInformalTag.isPrivateTag();
-            user = templateInformalTag.getUser();
-            name = templateInformalTag.getName();
-            description = templateInformalTag.getDescription();
-        }
-    }
-
-
-    /**
-     * Return boolean flag to say whether the tag is private or not.  A private tag is only seen by the
-     * person who set it up.  Public tags are visible to everyone how can sse the asset description.
-     *
-     * @return boolean - is private flag
-     */
-    public boolean isPrivateTag() {
-        return isPrivateTag;
-    }
-
-
-    /**
-     * Set up boolean flag to say whether the tag is private or not.  A private tag is only seen by the
-     * person who set it up.  Public tags are visible to everyone how can sse the asset description.
-     *
-     * @param privateTag - boolean - is private flag
-     */
-    public void setPrivateTag(boolean privateTag) {
-        isPrivateTag = privateTag;
-    }
-
-
-    /**
-     * Return the user id of the person who created the tag.  Null means the user id is not known.
-     *
-     * @return String - tagging user
-     */
-    public String getUser() {
-        return user;
-    }
-
-
-    /**
-     * Set up the user id of the person who created the tag. Null means the user id is not known.
-     *
-     * @param taggingUser - String - tagging user
-     */
-    public void setUser(String taggingUser) {
-        this.user = taggingUser;
-    }
-
-
-    /**
-     * Return the name of the tag.  It is not valid to have a tag with no name.  However, there is a point where
-     * the tag object is created and the tag name not set, so null is a possible response.
-     *
-     * @return String - tag name
-     */
-    public String getName() {
-        return name;
-    }
-
-
-    /**
-     * Set up the name of the tag.  It is not valid to have a tag with no name.
-     *
-     * @param tagName String - tag name
-     */
-    public void setName(String tagName)
-    {
-        final String  methodName = "setName";
-
-        if (tagName == null || tagName.equals(""))
-        {
-            /*
-             * Build and throw exception.  This should not happen - likely to be a problem in the
-             * repository connector.
-             */
-            ConnectedAssetErrorCode errorCode = ConnectedAssetErrorCode.NULL_TAG_NAME;
-            String       errorMessage = errorCode.getErrorMessageId()
-                                      + errorCode.getFormattedErrorMessage(methodName,
-                                                                           this.getClass().getName());
-
-            throw new ConnectedAssetRuntimeException(errorCode.getHTTPErrorCode(),
-                                                     this.getClass().getName(),
-                                                     methodName,
-                                                     errorMessage,
-                                                     errorCode.getSystemAction(),
-                                                     errorCode.getUserAction());
-        }
-        else
-        {
-            this.name = tagName;
-        }
-    }
-
-
-    /**
-     * Return the tag description - null means no description is available.
-     *
-     * @return String - tag description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Set up the tag description - null means no description is available.
-     *
-     * @param tagDescription - String - tag description
-     */
-    public void setDescription(String tagDescription) {
-        this.description = tagDescription;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/KeyPattern.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/KeyPattern.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/KeyPattern.java
deleted file mode 100644
index 78b16f5..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/KeyPattern.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * A KeyPattern defines the type of External Identifier in use of an asset, or the type of Primary Key used within an
- * asset.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum KeyPattern implements Serializable
-{
-    LOCAL_KEY(0, "Local Key", "Unique key allocated and used within the scope of a single system."),
-    RECYCLED_KEY(1, "Recycled Key", "Key allocated and used within the scope of a single system that is periodically reused for different records."),
-    NATURAL_KEY(2, "Natural Key", "Key derived from an attribute of the entity, such as email address, passport number."),
-    MIRROR_KEY(3, "Mirror Key", "Key value copied from another system."),
-    AGGREGATE_KEY(4, "Aggregate Key", "Key formed by combining keys from multiple systems."),
-    CALLERS_KEY(5, "Caller's Key", "Key from another system can bey used if system name provided."),
-    STABLE_KEY(6, "Stable Key", "Key value will remain active even if records are merged."),
-    OTHER(99, "Other", "Another key pattern.");
-
-    private static final long     serialVersionUID = 1L;
-
-    private int            keyPatternCode = 99;
-    private String         keyPatternName = "";
-    private String         keyPatternDescription = "";
-
-    /**
-     * Typical Constructor
-     */
-    KeyPattern(int     keyPatternCode, String   keyPatternName, String   keyPatternDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.keyPatternCode = keyPatternCode;
-        this.keyPatternName = keyPatternName;
-        this.keyPatternDescription = keyPatternDescription;
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - key pattern code
-     */
-    public int getKeyPatternCode()
-    {
-        return keyPatternCode;
-    }
-
-
-    /**
-     * Return the default name for this enum instance.
-     *
-     * @return String - default name
-     */
-    public String getKeyPatternName()
-    {
-        return keyPatternName;
-    }
-
-
-    /**
-     * Return the default description for the key pattern for this enum instance.
-     *
-     * @return String - default description
-     */
-    public String getKeyPatternDescription()
-    {
-        return keyPatternDescription;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/License.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/License.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/License.java
deleted file mode 100644
index dc65a88..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/License.java
+++ /dev/null
@@ -1,317 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.Date;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * <p>
- *     The data economy brings licensing to data and metadata.  Even open data typically has a license.
- *     License stores the license permission associated with the asset.
- * </p>
- * <p>
- *     The license will define the permitted uses and other requirements for using the asset.
- * </p>
- *
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class License extends Referenceable
-{
-    /*
-     * properties of a license
-     */
-    private  String                 licenseTypeGUID = null;
-    private  String                 licenseTypeName = null;
-    private  String                 licensee = null;
-    private  String                 summary = null;
-    private  ExternalReference      link = null;
-    private  Date                   startDate = null;
-    private  Date                   endDate = null;
-    private  String                 licenseConditions = null;
-    private  String                 createdBy = null;
-    private  String                 custodian = null;
-    private  String                 notes = null;
-
-
-    /**
-     * Default constructor.
-     */
-    public License()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateLicense - element to copy
-     */
-    public License(License    templateLicense)
-    {
-        super(templateLicense);
-
-        if (templateLicense != null)
-        {
-            licenseTypeGUID = templateLicense.getLicenseTypeGUID();
-            licenseTypeName = templateLicense.getLicenseName();
-            licensee = templateLicense.getLicensee();
-            summary = templateLicense.getSummary();
-
-            ExternalReference  templateLink = templateLicense.getLink();
-            if (templateLink != null)
-            {
-                link = new ExternalReference(templateLink);
-            }
-
-            Date               templateStartDate = templateLicense.getStartDate();
-            if (templateStartDate != null)
-            {
-                startDate = new Date(templateStartDate.getTime());
-            }
-
-            Date               templateEndDate = templateLicense.getEndDate();
-            if (templateEndDate != null)
-            {
-                endDate = new Date(templateStartDate.getTime());
-            }
-
-            licenseConditions = templateLicense.getLicenseConditions();
-            createdBy = templateLicense.getCreatedBy();
-            custodian = templateLicense.getCustodian();
-            notes = templateLicense.getNotes();
-        }
-    }
-
-
-    /**
-     * Return the unique id for the type of license.
-     *
-     * @return String license type GUID
-     */
-    public String getLicenseTypeGUID() { return licenseTypeGUID; }
-
-
-    /**
-     * Set up the unique id of the license type.
-     *
-     * @param licenseGUID - String license type GUID
-     */
-    public void setLicenseTypeGUID(String licenseGUID) { this.licenseTypeGUID = licenseGUID; }
-
-
-    /**
-     * Return the type of the license.
-     *
-     * @return String license type
-     */
-    public String getLicenseName() { return licenseTypeName; }
-
-
-    /**
-     * Set up the type of the license.
-     *
-     * @param licenseName - String license type
-     */
-    public void setLicenseName(String licenseName) { this.licenseTypeName = licenseName; }
-
-
-    /**
-     * Get the name of the organization or person that issued the license.
-     *
-     * @return String name
-     */
-    public String getLicensee() { return licensee; }
-
-
-    /**
-     * Set up the name of the organization or person that issued the license.
-     *
-     * @param licensee - String name
-     */
-    public void setLicensee(String licensee) { this.licensee = licensee; }
-
-
-    /**
-     * Return a brief summary of the license.
-     *
-     * @return String summary
-     */
-    public String getSummary() { return summary; }
-
-
-    /**
-     * Set up a brief summary of the license.
-     *
-     * @param summary - String
-     */
-    public void setSummary(String summary) { this.summary = summary; }
-
-
-    /**
-     * Return the link to the full text of the license.
-     *
-     * @return ExternalReference for full text
-     */
-    public ExternalReference getLink()
-    {
-        if (link == null)
-        {
-            return link;
-        }
-        else
-        {
-            return new ExternalReference(link);
-        }
-    }
-
-
-    /**
-     * Set up the link to the full text of the license.
-     *
-     * @param link - ExternalReference for full text
-     */
-    public void setLink(ExternalReference link) { this.link = link; }
-
-
-    /**
-     * Return the start date for the license.
-     *
-     * @return Date
-     */
-    public Date getStartDate()
-    {
-        if (startDate == null)
-        {
-            return startDate;
-        }
-        else
-        {
-            return new Date(startDate.getTime());
-        }
-    }
-
-
-    /**
-     * Set up start date for the license.
-     *
-     * @param startDate - Date
-     */
-    public void setStartDate(Date startDate) { this.startDate = startDate; }
-
-
-    /**
-     * Return the end date for the license.
-     *
-     * @return Date
-     */
-    public Date getEndDate()
-    {
-        if (endDate == null)
-        {
-            return endDate;
-        }
-        else
-        {
-            return new Date(endDate.getTime());
-        }
-    }
-
-
-    /**
-     * Set up the end date for the license.
-     *
-     * @param endDate - Date
-     */
-    public void setEndDate(Date endDate) { this.endDate = endDate; }
-
-
-    /**
-     * Return any special conditions that apply to the license - such as endorsements.
-     *
-     * @return String license conditions
-     */
-    public String getLicenseConditions() { return licenseConditions; }
-
-
-    /**
-     * Set up any special conditions that apply to the license - such as endorsements.
-     *
-     * @param conditions - String license conditions
-     */
-    public void setLicenseConditions(String conditions) { this.licenseConditions = conditions; }
-
-
-    /**
-     * Return the name of the person or organization that set up the license agreement for this asset.
-     *
-     * @return String name
-     */
-    public String getCreatedBy() { return createdBy; }
-
-
-    /**
-     * Set up the name of the person or organization that set up the license agreement for this asset.
-     *
-     * @param createdBy - String name
-     */
-    public void setCreatedBy(String createdBy) { this.createdBy = createdBy; }
-
-
-    /**
-     * Return the name of the person or organization that is responsible for the correct management of the asset
-     * according to the license.
-     *
-     * @return String name
-     */
-    public String getCustodian() { return custodian; }
-
-
-    /**
-     * Set up the name of the person or organization that is responsible for the correct management of the asset
-     * according to the license.
-     *
-     * @param custodian - String name
-     */
-    public void setCustodian(String custodian) { this.custodian = custodian; }
-
-
-    /**
-     * Return the notes for the custodian.
-     *
-     * @return String notes
-     */
-    public String getNotes() { return notes; }
-
-
-    /**
-     * Set up the notes from the custodian.
-     *
-     * @param notes - String
-     */
-    public void setNotes(String notes) { this.notes = notes; }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Like.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Like.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Like.java
deleted file mode 100644
index f491196..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Like.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The Like properties object records a single user's "like" of an asset.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Like extends ElementHeader
-{
-    /*
-     * Attributes of a Like
-     */
-    private String user = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public Like()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateLike - element to copy
-     */
-    public Like(Like templateLike)
-    {
-        super(templateLike);
-
-        if (templateLike != null)
-        {
-            /*
-             * Copy the user name from the supplied like.
-             */
-            user = templateLike.getUser();
-        }
-    }
-
-
-    /**
-     * Return the user id of the person who created the like.  Null means the user id is not known.
-     *
-     * @return String - liking user
-     */
-    public String getUser() {
-        return user;
-    }
-
-
-    /**
-     * Set up the user id of the person who created the like. Null means the user id is not known.
-     *
-     * @param user - String - liking user
-     */
-    public void setUser(String user) {
-        this.user = user;
-    }
-}
\ No newline at end of file


[12/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/FunctionNotSupportedException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/FunctionNotSupportedException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/FunctionNotSupportedException.java
deleted file mode 100644
index 7963269..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/FunctionNotSupportedException.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * FunctionNotSupportedException provides a checked exception for reporting that an OMRS repository connector
- * does not support the method called.  The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class FunctionNotSupportedException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating a FunctionNotSupportedException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public FunctionNotSupportedException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * FunctionNotSupportedException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public FunctionNotSupportedException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/HomeEntityException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/HomeEntityException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/HomeEntityException.java
deleted file mode 100644
index 706e235..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/HomeEntityException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * The HomeEntityException is thrown by an OMRS Connector when reference copy maintenance requests are issued on
- * a home entity instance in the metadata collection.
- */
-public class HomeEntityException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a HomeEntityException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public HomeEntityException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating an HomeEntityException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public HomeEntityException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/HomeRelationshipException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/HomeRelationshipException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/HomeRelationshipException.java
deleted file mode 100644
index 245ad91..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/HomeRelationshipException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * The HomeRelationshipException is thrown by an OMRS Connector when reference copy maintenance requests are issued on
- * a home relationship instance in the metadata collection.
- */
-public class HomeRelationshipException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating an HomeRelationshipException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public HomeRelationshipException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating an HomeRelationshipException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public HomeRelationshipException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidEntityException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidEntityException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidEntityException.java
deleted file mode 100644
index 8ce55af..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidEntityException.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * InvalidEntityException provides a checked exception for reporting that an entity can not be added because
- * its content is invalid.  The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class InvalidEntityException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating an InvalidEntityException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public InvalidEntityException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * InvalidEntityException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public InvalidEntityException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidParameterException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidParameterException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidParameterException.java
deleted file mode 100644
index 56d0dd5..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidParameterException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * The InvalidParameterException is thrown by an OMRS Connector when the parameters passed to a repository
- * connector, or its accompanying metadata collection, are not valid.
- */
-public class InvalidParameterException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a InvalidParameterException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public InvalidParameterException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a InvalidParameterException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public InvalidParameterException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidRelationshipException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidRelationshipException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidRelationshipException.java
deleted file mode 100644
index 82879d1..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidRelationshipException.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * InvalidRelationshipException provides a checked exception for reporting that a relationship can not be added because
- * its content is invalid.  The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class InvalidRelationshipException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating an InvalidRelationshipException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public InvalidRelationshipException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * InvalidRelationshipException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public InvalidRelationshipException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidTypeDefException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidTypeDefException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidTypeDefException.java
deleted file mode 100644
index 60ee27f..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/InvalidTypeDefException.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * InvalidTypeDefException provides a checked exception for reporting that a typedef can not be added because
- * its content is invalid.  The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class InvalidTypeDefException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating an InvalidTypeDefException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public InvalidTypeDefException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * InvalidTypeDefException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public InvalidTypeDefException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/NotImplementedRuntimeException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/NotImplementedRuntimeException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/NotImplementedRuntimeException.java
deleted file mode 100644
index e271055..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/NotImplementedRuntimeException.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * This exception is used to mark methods in the code that are not yet implemented.  The JIRA where the implementation
- * is being tracked is included in the message.
- */
-public class NotImplementedRuntimeException extends RuntimeException
-{
-    public NotImplementedRuntimeException(String   className,
-                                          String   methodName,
-                                          String   jiraName)
-    {
-        super("Method " + methodName + " in class " + className + " is not yet implemented. Refer to JIRA " + jiraName );
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSCheckedExceptionBase.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSCheckedExceptionBase.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSCheckedExceptionBase.java
deleted file mode 100644
index 88f5352..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSCheckedExceptionBase.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * OMRSCheckedExceptionBase provides a checked exception for reporting errors found when using the OMRS.
- * Typically these errors are either configuration or operational errors that can be fixed by an administrator
- * or power user.  However, there may be the odd bug that surfaces here. The OMRSErrorCode can be used with
- * this exception to populate it with standard messages.  Otherwise messages defined uniquely for a
- * ConnectorProvider/Connector implementation can be used.  The aim is to be able to uniquely identify the cause
- * and remedy for the error.
- */
-public class OMRSCheckedExceptionBase extends Exception
-{
-    /*
-     * These default values are only seen if this exception is initialized using one of its superclass constructors.
-     */
-    private int       reportedHTTPCode;
-    private String    reportingClassName;
-    private String    reportingActionDescription;
-    private String    reportedErrorMessage;
-    private String    reportedSystemAction;
-    private String    reportedUserAction;
-    private Throwable reportedCaughtException = null;
-
-
-    /**
-     * This is the typical constructor used for creating a OMRSCheckedExceptionBase.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public OMRSCheckedExceptionBase(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(errorMessage);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-    }
-
-
-    /**
-     * This is the constructor used for creating a OMRSCheckedExceptionBase when an unexpected error has been caught.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - previous error causing this exception
-     */
-    public OMRSCheckedExceptionBase(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(errorMessage, caughtError);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtException = caughtError;
-    }
-
-
-    /**
-     * Return the HTTP response code to use with this exception.
-     *
-     * @return reportedHTTPCode
-     */
-    public int getReportedHTTPCode()
-    {
-        return reportedHTTPCode;
-    }
-
-    /**
-     * The class that created this exception.
-     *
-     * @return reportingClassName
-     */
-    public String getReportingClassName()
-    {
-        return reportingClassName;
-    }
-
-
-    /**
-     * The type of request that the class was performing when the condition occurred that resulted in this
-     * exception.
-     *
-     * @return reportingActionDescription
-     */
-    public String getReportingActionDescription()
-    {
-        return reportingActionDescription;
-    }
-
-
-    /**
-     * A formatted short description of the cause of the condition that resulted in this exception.
-     *
-     * @return reportedErrorMessage
-     */
-    public String getErrorMessage()
-    {
-        return reportedErrorMessage;
-    }
-
-
-    /**
-     * A description of the action that the system took as a result of the error condition.
-     *
-     * @return reportedSystemAction
-     */
-    public String getReportedSystemAction()
-    {
-        return reportedSystemAction;
-    }
-
-
-    /**
-     * A description of the action necessary to correct the error.
-     *
-     * @return reportedUserAction
-     */
-    public String getReportedUserAction()
-    {
-        return reportedUserAction;
-    }
-
-
-    /**
-     * An exception that was caught and wrapped by this exception.  If a null is returned, then this exception is
-     * newly created and not the result of a previous exception.
-     *
-     * @return reportedCaughtException
-     */
-    public Throwable getReportedCaughtException() { return reportedCaughtException; }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSConfigErrorException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSConfigErrorException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSConfigErrorException.java
deleted file mode 100644
index 1488a5f..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSConfigErrorException.java
+++ /dev/null
@@ -1,185 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * OMRSConfigErrorException is used for all runtime exceptions generated by the Open Metadata Repository Services (OMRS)
- * components that indicate a configuration error.
- * It is used in conjunction with the OMRSErrorCode to provide first failure data capture for these errors.
- */
-public class OMRSConfigErrorException extends OMRSRuntimeException
-{
-    /*
-     * These default values are only seen if this exception is initialized using one of its superclass constructors.
-     */
-    private int          reportedHTTPCode = 500;
-    private String       reportingClassName = "<Unknown>";
-    private String       reportingActionDescription = "<Unknown>";
-    private String       reportedErrorMessage = "<Unknown>";
-    private String       reportedSystemAction = "<Unknown>";
-    private String       reportedUserAction = "<Unknown>";
-    private Throwable [] reportedCaughtExceptions = null;
-
-
-    /**
-     * This is the typical constructor used for creating an OMRSConfigErrorException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public OMRSConfigErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-    }
-
-
-    /**
-     * This is the constructor used for creating a OMRSConfigErrorException when an unexpected exception has been caught.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - previous error causing this exception
-     */
-    public OMRSConfigErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtExceptions = new Throwable[1];
-        this.reportedCaughtExceptions[0] = caughtError;
-    }
-
-    /**
-     * This is the constructor used for creating a OMRSConfigErrorException when multiple unexpected errors
-     * have been caught.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtErrors - previous errors causing this exception
-     */
-    public OMRSConfigErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable[] caughtErrors)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtErrors);
-
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtExceptions = caughtErrors;
-    }
-
-    /**
-     * Return the HTTP response code to use with this exception.
-     *
-     * @return reportedHTTPCode
-     */
-    public int getReportedHTTPCode()
-    {
-        return reportedHTTPCode;
-    }
-
-    /**
-     * The class that created this exception.
-     *
-     * @return reportingClassName
-     */
-    public String getReportingClassName()
-    {
-        return reportingClassName;
-    }
-
-
-    /**
-     * The type of request that the class was performing when the condition occurred that resulted in this
-     * exception.
-     *
-     * @return reportingActionDescription
-     */
-    public String getReportingActionDescription()
-    {
-        return reportingActionDescription;
-    }
-
-
-    /**
-     * A formatted short description of the cause of the condition that resulted in this exception.
-     *
-     * @return reportedErrorMessage
-     */
-    public String getErrorMessage()
-    {
-        return reportedErrorMessage;
-    }
-
-
-    /**
-     * A description of the action that the system took as a result of the error condition.
-     *
-     * @return reportedSystemAction
-     */
-    public String getReportedSystemAction()
-    {
-        return reportedSystemAction;
-    }
-
-
-    /**
-     * A description of the action necessary to correct the error.
-     *
-     * @return reportedUserAction
-     */
-    public String getReportedUserAction()
-    {
-        return reportedUserAction;
-    }
-
-
-    /**
-     * An exception that was caught and wrapped by this exception.  If a null is returned, then this exception is
-     * newly created and not the result of a previous exception.
-     *
-     * @return reportedCaughtException
-     */
-    public Throwable[] getReportedCaughtExceptions() { return reportedCaughtExceptions; }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSConnectorErrorException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSConnectorErrorException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSConnectorErrorException.java
deleted file mode 100644
index eae658a..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSConnectorErrorException.java
+++ /dev/null
@@ -1,184 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * OMRSConnectorErrorException is used for all runtime exceptions generated by the Open Metadata Repository Services (OMRS)
- * components that indicate a problem with one of its connectors.  It is typically wrapping an OCF checked exception.
- */
-public class OMRSConnectorErrorException extends OMRSRuntimeException
-{
-    /*
-     * These default values are only seen if this exception is initialized using one of its superclass constructors.
-     */
-    private int          reportedHTTPCode = 500;
-    private String       reportingClassName = "<Unknown>";
-    private String       reportingActionDescription = "<Unknown>";
-    private String       reportedErrorMessage = "<Unknown>";
-    private String       reportedSystemAction = "<Unknown>";
-    private String       reportedUserAction = "<Unknown>";
-    private Throwable [] reportedCaughtExceptions = null;
-
-
-    /**
-     * This is the typical constructor used for creating an OMRSLogicErrorException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public OMRSConnectorErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-    }
-
-
-    /**
-     * This is the constructor used for creating a OMRSLogicErrorException when an unexpected exception has been caught.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - previous error causing this exception
-     */
-    public OMRSConnectorErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtExceptions = new Throwable[1];
-        this.reportedCaughtExceptions[0] = caughtError;
-    }
-
-    /**
-     * This is the constructor used for creating a OMRSLogicErrorException when multiple unexpected errors
-     * have been caught.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtErrors - previous errors causing this exception
-     */
-    public OMRSConnectorErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable[] caughtErrors)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtErrors);
-
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtExceptions = caughtErrors;
-    }
-
-    /**
-     * Return the HTTP response code to use with this exception.
-     *
-     * @return reportedHTTPCode
-     */
-    public int getReportedHTTPCode()
-    {
-        return reportedHTTPCode;
-    }
-
-    /**
-     * The class that created this exception.
-     *
-     * @return reportingClassName
-     */
-    public String getReportingClassName()
-    {
-        return reportingClassName;
-    }
-
-
-    /**
-     * The type of request that the class was performing when the condition occurred that resulted in this
-     * exception.
-     *
-     * @return reportingActionDescription
-     */
-    public String getReportingActionDescription()
-    {
-        return reportingActionDescription;
-    }
-
-
-    /**
-     * A formatted short description of the cause of the condition that resulted in this exception.
-     *
-     * @return reportedErrorMessage
-     */
-    public String getErrorMessage()
-    {
-        return reportedErrorMessage;
-    }
-
-
-    /**
-     * A description of the action that the system took as a result of the error condition.
-     *
-     * @return reportedSystemAction
-     */
-    public String getReportedSystemAction()
-    {
-        return reportedSystemAction;
-    }
-
-
-    /**
-     * A description of the action necessary to correct the error.
-     *
-     * @return reportedUserAction
-     */
-    public String getReportedUserAction()
-    {
-        return reportedUserAction;
-    }
-
-
-    /**
-     * An exception that was caught and wrapped by this exception.  If a null is returned, then this exception is
-     * newly created and not the result of a previous exception.
-     *
-     * @return reportedCaughtException
-     */
-    public Throwable[] getReportedCaughtExceptions() { return reportedCaughtExceptions; }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSLogicErrorException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSLogicErrorException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSLogicErrorException.java
deleted file mode 100644
index 7935140..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSLogicErrorException.java
+++ /dev/null
@@ -1,185 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * OMRSLogicErrorException is used for all runtime exceptions generated by the Open Metadata Repository Services (OMRS)
- * components that indicate a logic error.  Effectively this exception should never be seen.
- * It is used in conjunction with the OMRSErrorCode to provide first failure data capture for these errors.
- */
-public class OMRSLogicErrorException extends OMRSRuntimeException
-{
-    /*
-     * These default values are only seen if this exception is initialized using one of its superclass constructors.
-     */
-    private int          reportedHTTPCode = 500;
-    private String       reportingClassName = "<Unknown>";
-    private String       reportingActionDescription = "<Unknown>";
-    private String       reportedErrorMessage = "<Unknown>";
-    private String       reportedSystemAction = "<Unknown>";
-    private String       reportedUserAction = "<Unknown>";
-    private Throwable [] reportedCaughtExceptions = null;
-
-
-    /**
-     * This is the typical constructor used for creating an OMRSLogicErrorException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public OMRSLogicErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-    }
-
-
-    /**
-     * This is the constructor used for creating a OMRSLogicErrorException when an unexpected exception has been caught.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - previous error causing this exception
-     */
-    public OMRSLogicErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtExceptions = new Throwable[1];
-        this.reportedCaughtExceptions[0] = caughtError;
-    }
-
-    /**
-     * This is the constructor used for creating a OMRSLogicErrorException when multiple unexpected errors
-     * have been caught.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtErrors - previous errors causing this exception
-     */
-    public OMRSLogicErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable[] caughtErrors)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtErrors);
-
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtExceptions = caughtErrors;
-    }
-
-    /**
-     * Return the HTTP response code to use with this exception.
-     *
-     * @return reportedHTTPCode
-     */
-    public int getReportedHTTPCode()
-    {
-        return reportedHTTPCode;
-    }
-
-    /**
-     * The class that created this exception.
-     *
-     * @return reportingClassName
-     */
-    public String getReportingClassName()
-    {
-        return reportingClassName;
-    }
-
-
-    /**
-     * The type of request that the class was performing when the condition occurred that resulted in this
-     * exception.
-     *
-     * @return reportingActionDescription
-     */
-    public String getReportingActionDescription()
-    {
-        return reportingActionDescription;
-    }
-
-
-    /**
-     * A formatted short description of the cause of the condition that resulted in this exception.
-     *
-     * @return reportedErrorMessage
-     */
-    public String getErrorMessage()
-    {
-        return reportedErrorMessage;
-    }
-
-
-    /**
-     * A description of the action that the system took as a result of the error condition.
-     *
-     * @return reportedSystemAction
-     */
-    public String getReportedSystemAction()
-    {
-        return reportedSystemAction;
-    }
-
-
-    /**
-     * A description of the action necessary to correct the error.
-     *
-     * @return reportedUserAction
-     */
-    public String getReportedUserAction()
-    {
-        return reportedUserAction;
-    }
-
-
-    /**
-     * An exception that was caught and wrapped by this exception.  If a null is returned, then this exception is
-     * newly created and not the result of a previous exception.
-     *
-     * @return reportedCaughtException
-     */
-    public Throwable[] getReportedCaughtExceptions() { return reportedCaughtExceptions; }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSRuntimeException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSRuntimeException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSRuntimeException.java
deleted file mode 100644
index c72aaf6..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/OMRSRuntimeException.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * OMRSRuntimeException is used for all runtime exceptions generated by the Open Metadata Repository Services (OMRS).
- * It is used in conjunction with the OMRSErrorCode to provide first failure data capture for these errors.
- */
-public class OMRSRuntimeException extends RuntimeException
-{
-    /*
-     * These default values are only seen if this exception is initialized using one of its superclass constructors.
-     */
-    private int          reportedHTTPCode = 500;
-    private String       reportingClassName = "<Unknown>";
-    private String       reportingActionDescription = "<Unknown>";
-    private String       reportedErrorMessage = "<Unknown>";
-    private String       reportedSystemAction = "<Unknown>";
-    private String       reportedUserAction = "<Unknown>";
-    private Throwable [] reportedCaughtExceptions = null;
-
-
-    /**
-     * This is the typical constructor used for creating an OMRSRuntimeException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public OMRSRuntimeException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(errorMessage);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-    }
-
-
-    /**
-     * This is the constructor used for creating a OMRSRuntimeException when an unexpected error has been caught.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - previous error causing this exception
-     */
-    public OMRSRuntimeException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(errorMessage, caughtError);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtExceptions = new Throwable[1];
-        this.reportedCaughtExceptions[0] = caughtError;
-    }
-
-    /**
-     * This is the constructor used for creating a OMRSRuntimeException when multiple unexpected errors
-     * have been caught.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtErrors - previous errors causing this exception
-     */
-    public OMRSRuntimeException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable[] caughtErrors)
-    {
-        super(errorMessage, caughtErrors[0]);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtExceptions = caughtErrors;
-    }
-
-    /**
-     * Return the HTTP response code to use with this exception.
-     *
-     * @return reportedHTTPCode
-     */
-    public int getReportedHTTPCode()
-    {
-        return reportedHTTPCode;
-    }
-
-    /**
-     * The class that created this exception.
-     *
-     * @return reportingClassName
-     */
-    public String getReportingClassName()
-    {
-        return reportingClassName;
-    }
-
-
-    /**
-     * The type of request that the class was performing when the condition occurred that resulted in this
-     * exception.
-     *
-     * @return reportingActionDescription
-     */
-    public String getReportingActionDescription()
-    {
-        return reportingActionDescription;
-    }
-
-
-    /**
-     * A formatted short description of the cause of the condition that resulted in this exception.
-     *
-     * @return reportedErrorMessage
-     */
-    public String getErrorMessage()
-    {
-        return reportedErrorMessage;
-    }
-
-
-    /**
-     * A description of the action that the system took as a result of the error condition.
-     *
-     * @return reportedSystemAction
-     */
-    public String getReportedSystemAction()
-    {
-        return reportedSystemAction;
-    }
-
-
-    /**
-     * A description of the action necessary to correct the error.
-     *
-     * @return reportedUserAction
-     */
-    public String getReportedUserAction()
-    {
-        return reportedUserAction;
-    }
-
-
-    /**
-     * An exception that was caught and wrapped by this exception.  If a null is returned, then this exception is
-     * newly created and not the result of a previous exception.
-     *
-     * @return reportedCaughtException
-     */
-    public Throwable[] getReportedCaughtExceptions() { return reportedCaughtExceptions; }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/PagingErrorException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/PagingErrorException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/PagingErrorException.java
deleted file mode 100644
index 5e91a58..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/PagingErrorException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * The PagingErrorException is thrown by an OMRS Connector when the caller has passed invalid paging attributes
- * on a search call.
- */
-public class PagingErrorException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a PagingErrorException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public PagingErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a PagingErrorException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public PagingErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/PatchErrorException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/PatchErrorException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/PatchErrorException.java
deleted file mode 100644
index 80e806b..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/PatchErrorException.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * PatchErrorException provides a checked exception for reporting that a typedef can not be updated because there are
- * problems with the supplied TypeDefPatch.  The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class PatchErrorException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating an PatchErrorException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public PatchErrorException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * PatchErrorException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public PatchErrorException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/PropertyErrorException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/PropertyErrorException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/PropertyErrorException.java
deleted file mode 100644
index 9be99c2..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/PropertyErrorException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * The PropertyErrorException is thrown by an OMRS Connector when the properties defined for a specific entity
- * or relationship instance do not match the TypeDefs for the metadata collection.
- */
-public class PropertyErrorException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a PropertyErrorException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public PropertyErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a PropertyErrorException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public PropertyErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RelationshipConflictException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RelationshipConflictException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RelationshipConflictException.java
deleted file mode 100644
index c0b76c9..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RelationshipConflictException.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * RelationshipConflictException provides a checked exception for reporting that a relationship can not be added because
- * it conflicts with a relationship already stored.  The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class RelationshipConflictException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating a RelationshipConflictException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public RelationshipConflictException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * RelationshipConflictException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public RelationshipConflictException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RelationshipNotDeletedException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RelationshipNotDeletedException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RelationshipNotDeletedException.java
deleted file mode 100644
index bc3f5c0..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RelationshipNotDeletedException.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * RelationshipNotDeletedException is thrown by an OMRS Connector when a request is made to purge or restore a specific
- * relationship instance and the entity is not in DELETED status.
- *
- */
-public class RelationshipNotDeletedException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating an RelationshipNotDeletedException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public RelationshipNotDeletedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating an RelationshipNotDeletedException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public RelationshipNotDeletedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RelationshipNotKnownException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RelationshipNotKnownException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RelationshipNotKnownException.java
deleted file mode 100644
index 209e675..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RelationshipNotKnownException.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * RelationshipNotKnownException provides a checked exception for reporting when a requested relationship
- * instance can not be found in the metadata collection.
- * The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class RelationshipNotKnownException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating a RelationshipNotKnownException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public RelationshipNotKnownException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * RelationshipNotKnownException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public RelationshipNotKnownException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}


[37/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/ErrorHandler.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/ErrorHandler.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/ErrorHandler.java
deleted file mode 100644
index cfde2cc..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/ErrorHandler.java
+++ /dev/null
@@ -1,333 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.server;
-
-import org.apache.atlas.omas.assetconsumer.ffdc.AssetConsumerErrorCode;
-import org.apache.atlas.omas.assetconsumer.ffdc.exceptions.InvalidParameterException;
-import org.apache.atlas.omas.assetconsumer.ffdc.exceptions.PropertyServerException;
-import org.apache.atlas.omas.assetconsumer.ffdc.exceptions.UserNotAuthorizedException;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollection;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-/**
- * ErrorHandler provides common validation routines for the other handler classes
- */
-public class ErrorHandler
-{
-    private OMRSRepositoryConnector   repositoryConnector;
-
-
-    /**
-     * Typical constructor providing access to the repository connector for this access service.
-     *
-     * @param repositoryConnector - connector object
-     */
-    public ErrorHandler(OMRSRepositoryConnector   repositoryConnector)
-    {
-        this.repositoryConnector = repositoryConnector;
-    }
-
-
-    /**
-     * Throw an exception if the supplied userId is null
-     *
-     * @param userId - user name to validate
-     * @param methodName - name of the method making the call.
-     * @throws InvalidParameterException - the userId is null
-     */
-    public  void validateUserId(String userId,
-                                String methodName) throws InvalidParameterException
-    {
-        if (userId == null)
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.NULL_USER_ID;
-            String                 errorMessage = errorCode.getErrorMessageId()
-                                                + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Throw an exception if the supplied unique identifier is null
-     *
-     * @param guid - unique identifier to validate
-     * @param parameterName - name of the parameter that passed the guid.
-     * @param methodName - name of the method making the call.
-     * @throws InvalidParameterException - the guid is null
-     */
-    public  void validateGUID(String guid,
-                              String parameterName,
-                              String methodName) throws InvalidParameterException
-    {
-        if (guid == null)
-        {
-            AssetConsumerErrorCode errorCode    = AssetConsumerErrorCode.NULL_GUID;
-            String                 errorMessage = errorCode.getErrorMessageId()
-                                                + errorCode.getFormattedErrorMessage(parameterName, methodName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Throw an exception if the supplied enum is null
-     *
-     * @param enumValue - enum value to validate
-     * @param parameterName - name of the parameter that passed the enum.
-     * @param methodName - name of the method making the call.
-     * @throws InvalidParameterException - the enum is null
-     */
-    public  void validateEnum(Object enumValue,
-                              String parameterName,
-                              String methodName) throws InvalidParameterException
-    {
-        if (enumValue == null)
-        {
-            AssetConsumerErrorCode errorCode    = AssetConsumerErrorCode.NULL_ENUM;
-            String                 errorMessage = errorCode.getErrorMessageId()
-                                                + errorCode.getFormattedErrorMessage(parameterName, methodName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Throw an exception if the supplied name is null
-     *
-     * @param name - unique name to validate
-     * @param parameterName - name of the parameter that passed the name.
-     * @param methodName - name of the method making the call.
-     * @throws InvalidParameterException - the guid is null
-     */
-    public  void validateName(String name,
-                              String parameterName,
-                              String methodName) throws InvalidParameterException
-    {
-        if (name == null)
-        {
-            AssetConsumerErrorCode errorCode    = AssetConsumerErrorCode.NULL_NAME;
-            String                 errorMessage = errorCode.getErrorMessageId()
-                                                + errorCode.getFormattedErrorMessage(parameterName, methodName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Throw an exception if the supplied text field is null
-     *
-     * @param text - unique name to validate
-     * @param parameterName - name of the parameter that passed the name.
-     * @param methodName - name of the method making the call.
-     * @throws InvalidParameterException - the guid is null
-     */
-    public  void validateText(String text,
-                              String parameterName,
-                              String methodName) throws InvalidParameterException
-    {
-        if (text == null)
-        {
-            AssetConsumerErrorCode errorCode    = AssetConsumerErrorCode.NULL_TEXT;
-            String                 errorMessage = errorCode.getErrorMessageId()
-                                                + errorCode.getFormattedErrorMessage(parameterName, methodName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Check that there is a repository connector.
-     *
-     * @param methodName - name of the method being called
-     * @return metadata collection that provides access to the properties in the property server
-     * @throws PropertyServerException - exception thrown if the repository connector
-     */
-    public OMRSMetadataCollection validateRepositoryConnector(String   methodName) throws PropertyServerException
-    {
-        if (this.repositoryConnector == null)
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.OMRS_NOT_INITIALIZED;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new PropertyServerException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-
-        }
-
-        if (! this.repositoryConnector.isActive())
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.OMRS_NOT_AVAILABLE;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new PropertyServerException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-
-        try
-        {
-            return repositoryConnector.getMetadataCollection();
-        }
-        catch (Throwable error)
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.NO_METADATA_COLLECTION;
-            String                 errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new PropertyServerException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Throw an exception if the supplied userId is not authorized to perform a request
-     *
-     * @param userId - user name to validate
-     * @param methodName - name of the method making the call.
-     * @param serverName - name of this server
-     * @param serviceName - name of this access service
-     * @throws UserNotAuthorizedException - the userId is unauthorised for the request
-     */
-    public  void handleUnauthorizedUser(String userId,
-                                        String methodName,
-                                        String serverName,
-                                        String serviceName) throws UserNotAuthorizedException
-    {
-        AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.USER_NOT_AUTHORIZED;
-        String                 errorMessage = errorCode.getErrorMessageId()
-                + errorCode.getFormattedErrorMessage(userId,
-                                                     methodName,
-                                                     serviceName,
-                                                     serverName);
-
-        throw new UserNotAuthorizedException(errorCode.getHTTPErrorCode(),
-                                             this.getClass().getName(),
-                                             methodName,
-                                             errorMessage,
-                                             errorCode.getSystemAction(),
-                                             errorCode.getUserAction());
-
-    }
-
-
-    /**
-     * Throw an exception if the supplied userId is not authorized to perform a request
-     *
-     * @param error - caught exception
-     * @param methodName - name of the method making the call.
-     * @param serverName - name of this server
-     * @param serviceName - name of this access service
-     * @throws PropertyServerException - unexpected exception from property server
-     */
-    public  void handleRepositoryError(Throwable  error,
-                                       String     methodName,
-                                       String     serverName,
-                                       String     serviceName) throws PropertyServerException
-    {
-        AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.PROPERTY_SERVER_ERROR;
-        String                 errorMessage = errorCode.getErrorMessageId()
-                                            + errorCode.getFormattedErrorMessage(error.getMessage(),
-                                                                                 methodName,
-                                                                                 serviceName,
-                                                                                 serverName);
-
-        throw new PropertyServerException(errorCode.getHTTPErrorCode(),
-                                          this.getClass().getName(),
-                                          methodName,
-                                          errorMessage,
-                                          errorCode.getSystemAction(),
-                                          errorCode.getUserAction());
-
-    }
-
-
-    /**
-     * Throw an exception if the supplied userId is not authorized to perform a request
-     *
-     * @param error - caught exception
-     * @param assetGUID - unique identifier for the requested asset
-     * @param methodName - name of the method making the call
-     * @param serverName - name of this server
-     * @param serviceName - name of this access service
-     * @throws InvalidParameterException - unexpected exception from property server
-     */
-    public  void handleUnknownAsset(Throwable  error,
-                                    String     assetGUID,
-                                    String     methodName,
-                                    String     serverName,
-                                    String     serviceName) throws InvalidParameterException
-    {
-        AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.UNKNOWN_ASSET;
-        String                 errorMessage = errorCode.getErrorMessageId()
-                                            + errorCode.getFormattedErrorMessage(assetGUID,
-                                                                                 methodName,
-                                                                                 serviceName,
-                                                                                 serverName,
-                                                                                 error.getMessage());
-
-        throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                            this.getClass().getName(),
-                                            methodName,
-                                            errorMessage,
-                                            errorCode.getSystemAction(),
-                                            errorCode.getUserAction());
-
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/FeedbackHandler.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/FeedbackHandler.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/FeedbackHandler.java
deleted file mode 100644
index bd2e448..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/FeedbackHandler.java
+++ /dev/null
@@ -1,1013 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.server;
-
-import org.apache.atlas.ocf.properties.CommentType;
-import org.apache.atlas.ocf.properties.StarRating;
-import org.apache.atlas.omas.assetconsumer.ffdc.exceptions.InvalidParameterException;
-import org.apache.atlas.omas.assetconsumer.ffdc.exceptions.PropertyServerException;
-import org.apache.atlas.omas.assetconsumer.ffdc.exceptions.UserNotAuthorizedException;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollection;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.*;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-import java.util.Date;
-
-/**
- * FeedbackHandler manages the creation of asset feedback (likes, ratings, comments and tags) in the
- * property server.
- */
-public class FeedbackHandler
-{
-    private static final String informalTagTypeName                  = "InformalTag";
-    private static final String informalTagTypeGUID                  = "ba846a7b-2955-40bf-952b-2793ceca090a";
-    private static final String privateTagTypeName                   = "PrivateTag";
-    private static final String privateTagTypeGUID                   = "9b3f5443-2475-4522-bfda-8f1f17e9a6c3";
-    private static final String tagNamePropertyName                  = "TagName";
-    private static final String tagDescriptionPropertyName           = "TagDescription";
-    private static final String attachedTagTypeGUID                  = "4b1641c4-3d1a-4213-86b2-d6968b6c65ab";
-
-    private static final String likeTypeName                         = "Like";
-    private static final String likeTypeGUID                         = "deaa5ca0-47a0-483d-b943-d91c76744e01";
-    private static final String attachedLikeTypeGUID                 = "e2509715-a606-415d-a995-61d00503dad4";
-
-    private static final String ratingTypeName                       = "Rating";
-    private static final String ratingTypeGUID                       = "7299d721-d17f-4562-8286-bcd451814478";
-    private static final String starsPropertyName                    = "stars";
-    private static final String reviewPropertyName                   = "review";
-    private static final String attachedRatingTypeGUID               = "0aaad9e9-9cc5-4ad8-bc2e-c1099bab6344";
-
-    private static final String commentTypeName                      = "Comment";
-    private static final String commentTypeGUID                      = "1a226073-9c84-40e4-a422-fbddb9b84278";
-    private static final String qualifiedNamePropertyName            = "qualifiedName";
-    private static final String commentPropertyName                  = "comment";
-    private static final String commentTypePropertyName              = "commentType";
-    private static final String attachedCommentTypeGUID              = "0d90501b-bf29-4621-a207-0c8c953bdac9";
-
-
-
-
-    private String                  serviceName;
-
-    private String                  serverName = null;
-    private OMRSRepositoryHelper    repositoryHelper = null;
-    private ErrorHandler            errorHandler     = null;
-
-
-    /**
-     * Construct the feedback handler with a link to the property server's connector and this access service's
-     * official name.
-     *
-     * @param serviceName - name of this service
-     * @param repositoryConnector - connector to the property server.
-     */
-    public FeedbackHandler(String                  serviceName,
-                           OMRSRepositoryConnector repositoryConnector)
-    {
-        this.serviceName = serviceName;
-
-        if (repositoryConnector != null)
-        {
-            this.repositoryHelper = repositoryConnector.getRepositoryHelper();
-            this.serverName = repositoryConnector.getServerName();
-            errorHandler = new ErrorHandler(repositoryConnector);
-        }
-    }
-
-
-    /**
-     * Adds a new public tag to the asset's properties.
-     *
-     * @param userId         - String - userId of user making request.
-     * @param assetGUID      - String - unique id for the asset.
-     * @param tagName        - String - name of the tag.
-     * @param tagDescription - String - (optional) description of the tag.  Setting a description, particularly in
-     *                       a public tag makes the tag more valuable to other users and can act as an embryonic
-     *                       glossary term.
-     * @return String - GUID for new tag.
-     * @throws InvalidParameterException  - one of the parameters is null or invalid.
-     * @throws PropertyServerException    - There is a problem adding the asset properties to
-     *                                    the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public String addTagToAsset(String userId,
-                                String assetGUID,
-                                String tagName,
-                                String tagDescription) throws InvalidParameterException,
-                                                              PropertyServerException,
-                                                              UserNotAuthorizedException
-    {
-        final String methodName = "addTagToAsset";
-
-        return this.addTagToAsset(informalTagTypeGUID,
-                                  userId,
-                                  assetGUID,
-                                  tagName,
-                                  tagDescription,
-                                  methodName);
-    }
-
-
-    /**
-     * Adds a new private tag to the asset's properties.
-     *
-     * @param userId         - String - userId of user making request.
-     * @param assetGUID      - String - unique id for the asset.
-     * @param tagName        - String - name of the tag.
-     * @param tagDescription - String - (optional) description of the tag.  Setting a description, particularly in
-     *                       a public tag makes the tag more valuable to other users and can act as an embryonic
-     *                       glossary term.
-     * @return String - GUID for new tag.
-     * @throws InvalidParameterException  - one of the parameters is null or invalid.
-     * @throws PropertyServerException    - There is a problem adding the asset properties to
-     *                                    the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public String addPrivateTagToAsset(String userId,
-                                       String assetGUID,
-                                       String tagName,
-                                       String tagDescription) throws InvalidParameterException,
-                                                                     PropertyServerException,
-                                                                     UserNotAuthorizedException
-    {
-        final String methodName = "addPrivateTagToAsset";
-
-        return this.addTagToAsset(privateTagTypeGUID,
-                                  userId,
-                                  assetGUID,
-                                  tagName,
-                                  tagDescription,
-                                  methodName);
-    }
-
-
-    /**
-     * Adds a new public tag to the asset's properties.
-     *
-     * @param userId         - String - userId of user making request.
-     * @param assetGUID      - String - unique id for the asset.
-     * @param tagName        - String - name of the tag.
-     * @param tagDescription - String - (optional) description of the tag.  Setting a description, particularly in
-     *                       a public tag makes the tag more valuable to other users and can act as an embryonic
-     *                       glossary term.
-     * @return String - GUID for new tag.
-     * @throws InvalidParameterException  - one of the parameters is null or invalid.
-     * @throws PropertyServerException    - There is a problem adding the asset properties to
-     *                                    the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    private String addTagToAsset(String tagTypeGUID,
-                                 String userId,
-                                 String assetGUID,
-                                 String tagName,
-                                 String tagDescription,
-                                 String methodName) throws InvalidParameterException,
-                                                           PropertyServerException,
-                                                           UserNotAuthorizedException
-    {
-        final String guidParameter = "assetGUID";
-        final String nameParameter = "tagName";
-
-        errorHandler.validateUserId(userId, methodName);
-        errorHandler.validateGUID(assetGUID, guidParameter, methodName);
-        errorHandler.validateName(tagName, nameParameter, methodName);
-
-        OMRSMetadataCollection  metadataCollection = errorHandler.validateRepositoryConnector(methodName);
-
-        this.validateEntity(userId, assetGUID, metadataCollection, methodName);
-
-        try
-        {
-            /*
-             * Create the Tag Entity
-             */
-            InstanceProperties properties;
-
-            properties = repositoryHelper.addStringPropertyToInstance(serviceName,
-                                                                      null,
-                                                                      tagNamePropertyName,
-                                                                      tagName,
-                                                                      methodName);
-            properties = repositoryHelper.addStringPropertyToInstance(serviceName,
-                                                                      properties,
-                                                                      tagDescriptionPropertyName,
-                                                                      tagDescription,
-                                                                      methodName);
-            EntityDetail feedbackEntity = metadataCollection.addEntity(userId,
-                                                                       tagTypeGUID,
-                                                                       properties,
-                                                                       null,
-                                                                       InstanceStatus.ACTIVE);
-
-            /*
-             * Link the tag to the asset
-             */
-            metadataCollection.addRelationship(userId,
-                                               attachedTagTypeGUID,
-                                               null,
-                                               assetGUID,
-                                               feedbackEntity.getGUID(),
-                                               InstanceStatus.ACTIVE);
-
-            /*
-             * Return the guid of the feedback entity
-             */
-            if (feedbackEntity != null)
-            {
-                return feedbackEntity.getGUID();
-            }
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.UserNotAuthorizedException error)
-        {
-            errorHandler.handleUnauthorizedUser(userId,
-                                                methodName,
-                                                serverName,
-                                                serviceName);
-        }
-        catch (Throwable   error)
-        {
-            errorHandler.handleRepositoryError(error,
-                                               methodName,
-                                               serverName,
-                                               serviceName);
-        }
-
-        return null;
-    }
-
-    /**
-     * Adds a rating to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for the asset.
-     * @param starRating - StarRating  - enumeration for none, one to five stars.
-     * @param review - String - user review of asset.
-     *
-     * @return guid of new rating object.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public String addRatingToAsset(String     userId,
-                                   String     assetGUID,
-                                   StarRating starRating,
-                                   String     review) throws InvalidParameterException,
-                                                             PropertyServerException,
-                                                             UserNotAuthorizedException
-    {
-        final String methodName = "addRatingToAsset";
-        final String guidParameter = "assetGUID";
-        final String ratingParameter = "starRating";
-
-        errorHandler.validateUserId(userId, methodName);
-        errorHandler.validateGUID(assetGUID, guidParameter, methodName);
-        errorHandler.validateEnum(starRating, ratingParameter, methodName);
-
-        OMRSMetadataCollection  metadataCollection = errorHandler.validateRepositoryConnector(methodName);
-
-        this.validateEntity(userId, assetGUID, metadataCollection, methodName);
-
-        try
-        {
-            /*
-             * Create the Rating Entity
-             */
-            InstanceProperties properties  = null;
-
-            properties = this.addStarRatingPropertyToInstance(properties,
-                                                              starRating,
-                                                              methodName);
-            properties = repositoryHelper.addStringPropertyToInstance(serviceName,
-                                                                      properties,
-                                                                      reviewPropertyName,
-                                                                      review,
-                                                                      methodName);
-            EntityDetail feedbackEntity = metadataCollection.addEntity(userId,
-                                                                       ratingTypeGUID,
-                                                                       properties,
-                                                                       null,
-                                                                       InstanceStatus.ACTIVE);
-
-            /*
-             * Link the Rating to the asset
-             */
-            metadataCollection.addRelationship(userId,
-                                               attachedRatingTypeGUID,
-                                               null,
-                                               assetGUID,
-                                               feedbackEntity.getGUID(),
-                                               InstanceStatus.ACTIVE);
-
-            /*
-             * Return the guid of the feedback entity
-             */
-            if (feedbackEntity != null)
-            {
-                return feedbackEntity.getGUID();
-            }
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.UserNotAuthorizedException error)
-        {
-            errorHandler.handleUnauthorizedUser(userId,
-                                                methodName,
-                                                serverName,
-                                                serviceName);
-        }
-        catch (Throwable   error)
-        {
-            errorHandler.handleRepositoryError(error,
-                                               methodName,
-                                               serverName,
-                                               serviceName);
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Set up a property value for the StartRating enum property.
-     *
-     * @param properties - current properties
-     * @param starRating - enum value
-     * @param methodName - calling method
-     * @return - InstanceProperties object with the enum value added
-     */
-    private InstanceProperties addStarRatingPropertyToInstance(InstanceProperties  properties,
-                                                               StarRating          starRating,
-                                                               String              methodName)
-    {
-        int                ordinal = 99;
-        String             symbolicName = null;
-        String             description = null;
-
-        final int    element1Ordinal         = 0;
-        final String element1Value           = "NotRecommended";
-        final String element1Description     = "This content is not recommended.";
-
-        final int    element2Ordinal         = 1;
-        final String element2Value           = "OneStar";
-        final String element2Description     = "One star rating.";
-
-        final int    element3Ordinal         = 2;
-        final String element3Value           = "TwoStar";
-        final String element3Description     = "Two star rating.";
-
-        final int    element4Ordinal         = 3;
-        final String element4Value           = "ThreeStar";
-        final String element4Description     = "Three star rating.";
-
-        final int    element5Ordinal         = 4;
-        final String element5Value           = "FourStar";
-        final String element5Description     = "Four star rating.";
-
-        final int    element6Ordinal         = 5;
-        final String element6Value           = "FiveStar";
-        final String element6Description     = "Five star rating.";
-
-        switch (starRating)
-        {
-            case NOT_RECOMMENDED:
-                ordinal = element1Ordinal;
-                symbolicName = element1Value;
-                description = element1Description;
-                break;
-
-            case ONE_STAR:
-                ordinal = element2Ordinal;
-                symbolicName = element2Value;
-                description = element2Description;
-                break;
-
-            case TWO_STARS:
-                ordinal = element3Ordinal;
-                symbolicName = element3Value;
-                description = element3Description;
-                break;
-
-            case THREE_STARS:
-                ordinal = element4Ordinal;
-                symbolicName = element4Value;
-                description = element4Description;
-                break;
-
-            case FOUR_STARS:
-                ordinal = element5Ordinal;
-                symbolicName = element5Value;
-                description = element5Description;
-                break;
-
-            case FIVE_STARS:
-                ordinal = element6Ordinal;
-                symbolicName = element6Value;
-                description = element6Description;
-                break;
-        }
-
-        return repositoryHelper.addEnumPropertyToInstance(serviceName,
-                                                          properties,
-                                                          starsPropertyName,
-                                                          ordinal,
-                                                          symbolicName,
-                                                          description,
-                                                          methodName);
-    }
-
-
-    /**
-     * Adds a "Like" to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for the asset
-     *
-     * @return guid of new like object.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public String addLikeToAsset(String       userId,
-                                 String       assetGUID) throws InvalidParameterException,
-                                                                PropertyServerException,
-                                                                UserNotAuthorizedException
-    {
-        final String methodName = "addLikeToAsset";
-        final String guidParameter = "assetGUID";
-
-        errorHandler.validateUserId(userId, methodName);
-        errorHandler.validateGUID(assetGUID, guidParameter, methodName);
-
-        OMRSMetadataCollection  metadataCollection = errorHandler.validateRepositoryConnector(methodName);
-
-        this.validateEntity(userId, assetGUID, metadataCollection, methodName);
-
-        try
-        {
-            /*
-             * Create the Like Entity
-             */
-            EntityDetail feedbackEntity = metadataCollection.addEntity(userId,
-                                                                       likeTypeGUID,
-                                                                       null,
-                                                                       null,
-                                                                       InstanceStatus.ACTIVE);
-
-            /*
-             * Link the Like to the asset
-             */
-            metadataCollection.addRelationship(userId,
-                                               attachedLikeTypeGUID,
-                                               null,
-                                               assetGUID,
-                                               feedbackEntity.getGUID(),
-                                               InstanceStatus.ACTIVE);
-
-            /*
-             * Return the guid of the feedback entity
-             */
-            if (feedbackEntity != null)
-            {
-                return feedbackEntity.getGUID();
-            }
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.UserNotAuthorizedException error)
-        {
-            errorHandler.handleUnauthorizedUser(userId,
-                                                methodName,
-                                                serverName,
-                                                serviceName);
-        }
-        catch (Throwable   error)
-        {
-            errorHandler.handleRepositoryError(error,
-                                               methodName,
-                                               serverName,
-                                               serviceName);
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Adds a comment to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for the asset.
-     * @param commentType - type of comment enum.
-     * @param commentText - String - the text of the comment.
-     *
-     * @return guid of new comment.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public String addCommentToAsset(String      userId,
-                                    String      assetGUID,
-                                    CommentType commentType,
-                                    String      commentText) throws InvalidParameterException,
-                                                                    PropertyServerException,
-                                                                    UserNotAuthorizedException
-    {
-        final String methodName = "addCommentToAsset";
-        final String guidParameter = "assetGUID";
-
-        return this.addCommentToEntity(userId, assetGUID, guidParameter, commentType, commentText, methodName);
-    }
-
-    /**
-     * Adds a comment to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param commentGUID - String - unique id for an existing comment.  Used to add a reply to a comment.
-     * @param commentType - type of comment enum.
-     * @param commentText - String - the text of the comment.
-     *
-     * @return guid of new comment.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public String addCommentReply(String      userId,
-                                  String      commentGUID,
-                                  CommentType commentType,
-                                  String      commentText) throws InvalidParameterException,
-                                                                  PropertyServerException,
-                                                                  UserNotAuthorizedException
-    {
-        final String methodName = "addCommentReply";
-        final String guidParameter = "assetGUID";
-
-
-        return this.addCommentToEntity(userId, commentGUID, guidParameter, commentType, commentText, methodName);
-    }
-
-
-    /**
-     * Set up a property value for the CommentType enum property.
-     *
-     * @param properties - current properties
-     * @param commentType - enum value
-     * @param methodName - calling method
-     * @return - InstanceProperties object with the enum value added
-     */
-    private InstanceProperties addCommentTypePropertyToInstance(InstanceProperties  properties,
-                                                                CommentType         commentType,
-                                                                String              methodName)
-    {
-        int                ordinal = 99;
-        String             symbolicName = null;
-        String             description = null;
-
-        final int    element1Ordinal         = 0;
-        final String element1Value           = "GeneralComment";
-        final String element1Description     = "General comment.";
-
-        final int    element2Ordinal         = 1;
-        final String element2Value           = "Question";
-        final String element2Description     = "A question.";
-
-        final int    element3Ordinal         = 2;
-        final String element3Value           = "Answer";
-        final String element3Description     = "An answer to a previously asked question.";
-
-        final int    element4Ordinal         = 3;
-        final String element4Value           = "Suggestion";
-        final String element4Description     = "A suggestion for improvement.";
-
-        final int    element5Ordinal         = 3;
-        final String element5Value           = "Experience";
-        final String element5Description     = "An account of an experience.";
-
-        switch (commentType)
-        {
-            case STANDARD_COMMENT:
-                ordinal = element1Ordinal;
-                symbolicName = element1Value;
-                description = element1Description;
-                break;
-
-            case QUESTION:
-                ordinal = element2Ordinal;
-                symbolicName = element2Value;
-                description = element2Description;
-                break;
-
-            case ANSWER:
-                ordinal = element3Ordinal;
-                symbolicName = element3Value;
-                description = element3Description;
-                break;
-
-            case SUGGESTION:
-                ordinal = element4Ordinal;
-                symbolicName = element4Value;
-                description = element4Description;
-                break;
-
-            case USAGE_EXPERIENCE:
-                ordinal = element5Ordinal;
-                symbolicName = element5Value;
-                description = element5Description;
-                break;
-        }
-
-        return repositoryHelper.addEnumPropertyToInstance(serviceName,
-                                                          properties,
-                                                          commentTypePropertyName,
-                                                          ordinal,
-                                                          symbolicName,
-                                                          description,
-                                                          methodName);
-    }
-
-
-    /**
-     * Adds a comment and links it to the supplied entity.
-     *
-     * @param userId - String - userId of user making request.
-     * @param entityGUID - String - unique id for an existing comment.  Used to add a reply to a comment.
-     * @param guidParameter - name of parameter that supplied the entity'ss unique identifier.
-     * @param commentType - type of comment enum.
-     * @param commentText - String - the text of the comment.
-     *
-     * @return guid of new comment.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    private String addCommentToEntity(String      userId,
-                                      String      entityGUID,
-                                      String      guidParameter,
-                                      CommentType commentType,
-                                      String      commentText,
-                                      String      methodName) throws InvalidParameterException,
-                                                                     PropertyServerException,
-                                                                     UserNotAuthorizedException
-    {
-        final String typeParameter = "commentType";
-        final String textParameter = "commentText";
-
-        errorHandler.validateUserId(userId, methodName);
-        errorHandler.validateGUID(entityGUID, guidParameter, methodName);
-        errorHandler.validateEnum(commentType, typeParameter, methodName);
-        errorHandler.validateText(commentText, textParameter, methodName);
-
-        OMRSMetadataCollection  metadataCollection = errorHandler.validateRepositoryConnector(methodName);
-
-        this.validateEntity(userId, entityGUID, metadataCollection, methodName);
-
-        try
-        {
-            /*
-             * Create the Comment Entity
-             */
-            InstanceProperties properties  = null;
-
-            properties = this.addCommentTypePropertyToInstance(properties,
-                                                               commentType,
-                                                               methodName);
-            properties = repositoryHelper.addStringPropertyToInstance(serviceName,
-                                                                      properties,
-                                                                      qualifiedNamePropertyName,
-                                                                      "Comment:" + userId + ":" + new Date().toString(),
-                                                                      methodName);
-            properties = repositoryHelper.addStringPropertyToInstance(serviceName,
-                                                                      properties,
-                                                                      commentPropertyName,
-                                                                      commentText,
-                                                                      methodName);
-            EntityDetail feedbackEntity = metadataCollection.addEntity(userId,
-                                                                       commentTypeGUID,
-                                                                       properties,
-                                                                       null,
-                                                                       InstanceStatus.ACTIVE);
-
-            /*
-             * Link the comment reply to the supplied entity
-             */
-            metadataCollection.addRelationship(userId,
-                                               attachedCommentTypeGUID,
-                                               null,
-                                               entityGUID,
-                                               feedbackEntity.getGUID(),
-                                               InstanceStatus.ACTIVE);
-
-            /*
-             * Return the guid of the feedback entity
-             */
-            if (feedbackEntity != null)
-            {
-                return feedbackEntity.getGUID();
-            }
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.UserNotAuthorizedException error)
-        {
-            errorHandler.handleUnauthorizedUser(userId,
-                                                methodName,
-                                                serverName,
-                                                serviceName);
-        }
-        catch (Throwable   error)
-        {
-            errorHandler.handleRepositoryError(error,
-                                               methodName,
-                                               serverName,
-                                               serviceName);
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Removes a tag from the asset that was added by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param tagGUID - String - unique id for the tag.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public void   removeTagFromAsset(String     userId,
-                                     String     tagGUID) throws InvalidParameterException,
-                                                                PropertyServerException,
-                                                                UserNotAuthorizedException
-    {
-        final String methodName = "removeTagFromAsset";
-        final String guidParameter = "tagGUID";
-
-        errorHandler.validateUserId(userId, methodName);
-        errorHandler.validateGUID(tagGUID, guidParameter, methodName);
-
-        OMRSMetadataCollection  metadataCollection = errorHandler.validateRepositoryConnector(methodName);
-
-        try
-        {
-            metadataCollection.deleteEntity(userId, informalTagTypeGUID, informalTagTypeName, tagGUID);
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.UserNotAuthorizedException error)
-        {
-            errorHandler.handleUnauthorizedUser(userId,
-                                                methodName,
-                                                serverName,
-                                                serviceName);        }
-        catch (Throwable   error)
-        {
-            errorHandler.handleRepositoryError(error,
-                                               methodName,
-                                               serverName,
-                                               serviceName);
-        }
-    }
-
-
-    /**
-     * Removes a tag from the asset that was added by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param tagGUID - String - unique id for the tag.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public void   removePrivateTagFromAsset(String     userId,
-                                            String     tagGUID) throws InvalidParameterException,
-                                                                       PropertyServerException,
-                                                                       UserNotAuthorizedException
-    {
-        final String methodName = "removePrivateTagFromAsset";
-        final String guidParameter = "tagGUID";
-
-        errorHandler.validateUserId(userId, methodName);
-        errorHandler.validateGUID(tagGUID, guidParameter, methodName);
-
-        OMRSMetadataCollection  metadataCollection = errorHandler.validateRepositoryConnector(methodName);
-
-        try
-        {
-            metadataCollection.deleteEntity(userId, privateTagTypeGUID, privateTagTypeName, tagGUID);
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.UserNotAuthorizedException error)
-        {
-            errorHandler.handleUnauthorizedUser(userId,
-                                                methodName,
-                                                serverName,
-                                                serviceName);        }
-        catch (Throwable   error)
-        {
-            errorHandler.handleRepositoryError(error,
-                                               methodName,
-                                               serverName,
-                                               serviceName);
-        }
-    }
-
-
-    /**
-     * Removes of a star rating that was added to the asset by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param ratingGUID - String - unique id for the rating object
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public void   removeRatingFromAsset(String     userId,
-                                        String     ratingGUID) throws InvalidParameterException,
-                                                                      PropertyServerException,
-                                                                      UserNotAuthorizedException
-    {
-        final String methodName = "removeRatingFromAsset";
-        final String guidParameter = "ratingGUID";
-
-        errorHandler.validateUserId(userId, methodName);
-        errorHandler.validateGUID(ratingGUID, guidParameter, methodName);
-
-        OMRSMetadataCollection  metadataCollection = errorHandler.validateRepositoryConnector(methodName);
-
-        try
-        {
-            metadataCollection.deleteEntity(userId, ratingTypeGUID, ratingTypeName, ratingGUID);
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.UserNotAuthorizedException error)
-        {
-            errorHandler.handleUnauthorizedUser(userId,
-                                                methodName,
-                                                serverName,
-                                                serviceName);        }
-        catch (Throwable   error)
-        {
-            errorHandler.handleRepositoryError(error,
-                                               methodName,
-                                               serverName,
-                                               serviceName);
-        }
-    }
-
-
-    /**
-     * Removes a "Like" added to the asset by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param likeGUID - String - unique id for the like object
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public void   removeLikeFromAsset(String     userId,
-                                      String     likeGUID) throws InvalidParameterException,
-                                                                  PropertyServerException,
-                                                                  UserNotAuthorizedException
-    {
-        final String methodName = "removeLikeFromAsset";
-        final String guidParameter = "likeGUID";
-
-        errorHandler.validateUserId(userId, methodName);
-        errorHandler.validateGUID(likeGUID, guidParameter, methodName);
-
-        OMRSMetadataCollection  metadataCollection = errorHandler.validateRepositoryConnector(methodName);
-
-        try
-        {
-            metadataCollection.deleteEntity(userId, likeTypeGUID, likeTypeName, likeGUID);
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.UserNotAuthorizedException error)
-        {
-            errorHandler.handleUnauthorizedUser(userId,
-                                                methodName,
-                                                serverName,
-                                                serviceName);        }
-        catch (Throwable   error)
-        {
-            errorHandler.handleRepositoryError(error,
-                                               methodName,
-                                               serverName,
-                                               serviceName);
-        }
-    }
-
-
-    /**
-     * Removes a comment added to the asset by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param commentGUID - String - unique id for the comment object
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the user does not have permission to perform this request.
-     */
-    public void   removeCommentFromAsset(String     userId,
-                                         String     commentGUID) throws InvalidParameterException,
-                                                                        PropertyServerException,
-                                                                        UserNotAuthorizedException
-    {
-        final String methodName = "removeCommentFromAsset";
-        final String guidParameter = "commentGUID";
-
-        errorHandler.validateUserId(userId, methodName);
-        errorHandler.validateGUID(commentGUID, guidParameter, methodName);
-
-        OMRSMetadataCollection  metadataCollection = errorHandler.validateRepositoryConnector(methodName);
-
-        try
-        {
-            metadataCollection.deleteEntity(userId, commentTypeGUID, commentTypeName, commentGUID);
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.UserNotAuthorizedException error)
-        {
-            errorHandler.handleUnauthorizedUser(userId,
-                                                methodName,
-                                                serverName,
-                                                serviceName);        }
-        catch (Throwable   error)
-        {
-            errorHandler.handleRepositoryError(error,
-                                               methodName,
-                                               serverName,
-                                               serviceName);
-        }
-    }
-
-
-    /**
-     * Validate that the supplied GUID is for a real entity.
-     *
-     * @param userId - user making the request.
-     * @param assetGUID - unique identifier of the asset.
-     * @param metadataCollection - repository's metadata collection
-     * @param methodName - name of method called.
-     * @throws InvalidParameterException - entity not known
-     * @throws PropertyServerException - problem accessing property server
-     * @throws UserNotAuthorizedException - security access problem
-     */
-    private void validateEntity(String                  userId,
-                                String                  assetGUID,
-                                OMRSMetadataCollection  metadataCollection,
-                                String                  methodName) throws InvalidParameterException,
-                                                                           PropertyServerException,
-                                                                           UserNotAuthorizedException
-    {
-        try
-        {
-            metadataCollection.getEntitySummary(userId, assetGUID);
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.EntityNotKnownException error)
-        {
-            errorHandler.handleUnknownAsset(error,
-                                            assetGUID,
-                                            methodName,
-                                            serverName,
-                                            serviceName);
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.UserNotAuthorizedException error)
-        {
-            errorHandler.handleUnauthorizedUser(userId,
-                                                methodName,
-                                                serverName,
-                                                serviceName);
-        }
-        catch (Throwable   error)
-        {
-            errorHandler.handleRepositoryError(error,
-                                               methodName,
-                                               serverName,
-                                               serviceName);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/AssetConsumerOMASAPIResponse.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/AssetConsumerOMASAPIResponse.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/AssetConsumerOMASAPIResponse.java
deleted file mode 100644
index 011963a..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/AssetConsumerOMASAPIResponse.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.server.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * AssetConsumerOMASAPIResponse provides a common header for Asset Consumer OMAS managed responses to its REST API.
- * It manages information about exceptions.  If no exception has been raised exceptionClassName is null.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public abstract class AssetConsumerOMASAPIResponse
-{
-    protected int       relatedHTTPCode = 200;
-    protected String    exceptionClassName = null;
-    protected String    exceptionErrorMessage = null;
-    protected String    exceptionSystemAction = null;
-    protected String    exceptionUserAction = null;
-
-
-    /**
-     * Default constructor
-     */
-    public AssetConsumerOMASAPIResponse()
-    {
-    }
-
-
-    /**
-     * Return the HTTP Code to use if forwarding response to HTTP client.
-     *
-     * @return integer HTTP status code
-     */
-    public int getRelatedHTTPCode()
-    {
-        return relatedHTTPCode;
-    }
-
-
-    /**
-     * Set up the HTTP Code to use if forwarding response to HTTP client.
-     *
-     * @param relatedHTTPCode - integer HTTP status code
-     */
-    public void setRelatedHTTPCode(int relatedHTTPCode)
-    {
-        this.relatedHTTPCode = relatedHTTPCode;
-    }
-
-
-    /**
-     * Return the name of the Java class name to use to recreate the exception.
-     *
-     * @return String name of the fully-qualified java class name
-     */
-    public String getExceptionClassName()
-    {
-        return exceptionClassName;
-    }
-
-
-    /**
-     * Set up the name of the Java class name to use to recreate the exception.
-     *
-     * @param exceptionClassName - String name of the fully-qualified java class name
-     */
-    public void setExceptionClassName(String exceptionClassName)
-    {
-        this.exceptionClassName = exceptionClassName;
-    }
-
-
-    /**
-     * Return the error message associated with the exception.
-     *
-     * @return string error message
-     */
-    public String getExceptionErrorMessage()
-    {
-        return exceptionErrorMessage;
-    }
-
-
-    /**
-     * Set up the error message associated with the exception.
-     *
-     * @param exceptionErrorMessage - string error message
-     */
-    public void setExceptionErrorMessage(String exceptionErrorMessage)
-    {
-        this.exceptionErrorMessage = exceptionErrorMessage;
-    }
-
-
-    /**
-     * Return the description of the action taken by the system as a result of the exception.
-     *
-     * @return - string description of the action taken
-     */
-    public String getExceptionSystemAction()
-    {
-        return exceptionSystemAction;
-    }
-
-
-    /**
-     * Set up the description of the action taken by the system as a result of the exception.
-     *
-     * @param exceptionSystemAction - string description of the action taken
-     */
-    public void setExceptionSystemAction(String exceptionSystemAction)
-    {
-        this.exceptionSystemAction = exceptionSystemAction;
-    }
-
-
-    /**
-     * Return the action that a user should take to resolve the problem.
-     *
-     * @return string instructions
-     */
-    public String getExceptionUserAction()
-    {
-        return exceptionUserAction;
-    }
-
-
-    /**
-     * Set up the action that a user should take to resolve the problem.
-     *
-     * @param exceptionUserAction - string instructions
-     */
-    public void setExceptionUserAction(String exceptionUserAction)
-    {
-        this.exceptionUserAction = exceptionUserAction;
-    }
-
-
-    @Override
-    public String toString()
-    {
-        return "AssetConsumerOMASAPIResponse{" +
-                "relatedHTTPCode=" + relatedHTTPCode +
-                ", exceptionClassName='" + exceptionClassName + '\'' +
-                ", exceptionErrorMessage='" + exceptionErrorMessage + '\'' +
-                ", exceptionSystemAction='" + exceptionSystemAction + '\'' +
-                ", exceptionUserAction='" + exceptionUserAction + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/ConnectionResponse.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/ConnectionResponse.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/ConnectionResponse.java
deleted file mode 100644
index 4ac72d2..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/ConnectionResponse.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.server.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.ocf.properties.beans.Connection;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-
-/**
- * ConnectionResponse is the response structure used on the Asset Consumer OMAS REST API calls that returns a
- * Connection object as a response.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class ConnectionResponse extends AssetConsumerOMASAPIResponse
-{
-    private Connection connection = null;
-
-    /**
-     * Default constructor
-     */
-    public ConnectionResponse()
-    {
-    }
-
-
-    /**
-     * Return the Connection object.
-     *
-     * @return connection
-     */
-    public Connection getConnection()
-    {
-        return connection;
-    }
-
-    /**
-     * Set up the Connection object.
-     *
-     * @param connection - connection object
-     */
-    public void setConnection(Connection connection)
-    {
-        this.connection = connection;
-    }
-
-
-    @Override
-    public String toString()
-    {
-        return "ConnectionResponse{" +
-                "connection=" + connection +
-                ", relatedHTTPCode=" + relatedHTTPCode +
-                ", exceptionClassName='" + exceptionClassName + '\'' +
-                ", exceptionErrorMessage='" + exceptionErrorMessage + '\'' +
-                ", exceptionSystemAction='" + exceptionSystemAction + '\'' +
-                ", exceptionUserAction='" + exceptionUserAction + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/GUIDResponse.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/GUIDResponse.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/GUIDResponse.java
deleted file mode 100644
index 506878f..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/GUIDResponse.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.server.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-
-/**
- * GUIDResponse is the response structure used on the Asset Consumer OMAS REST API calls that return a
- * unique identifier (guid) object as a response.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class GUIDResponse extends AssetConsumerOMASAPIResponse
-{
-    private String   guid = null;
-
-
-    /**
-     * Default constructor
-     */
-    public GUIDResponse()
-    {
-    }
-
-
-    /**
-     * Return the guid result.
-     *
-     * @return unique identifier
-     */
-    public String getGUID()
-    {
-        return guid;
-    }
-
-    /**
-     * Set up the guid result.
-     *
-     * @param guid - unique identifier
-     */
-    public void setGUID(String guid)
-    {
-        this.guid = guid;
-    }
-
-
-    @Override
-    public String toString()
-    {
-        return "GUIDResponse{" +
-                "guid='" + guid + '\'' +
-                ", relatedHTTPCode=" + relatedHTTPCode +
-                ", exceptionClassName='" + exceptionClassName + '\'' +
-                ", exceptionErrorMessage='" + exceptionErrorMessage + '\'' +
-                ", exceptionSystemAction='" + exceptionSystemAction + '\'' +
-                ", exceptionUserAction='" + exceptionUserAction + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/VoidResponse.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/VoidResponse.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/VoidResponse.java
deleted file mode 100644
index 66a4592..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/properties/VoidResponse.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.server.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * VoidResponse defines the response structure for the Asset Consumer OMAS REST API calls that returns a
- * void as a response.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class VoidResponse extends AssetConsumerOMASAPIResponse
-{
-    /**
-     * Default constructor
-     */
-    public VoidResponse()
-    {
-    }
-
-    @Override
-    public String toString()
-    {
-        return "VoidResponse{" +
-                "relatedHTTPCode=" + relatedHTTPCode +
-                ", exceptionClassName='" + exceptionClassName + '\'' +
-                ", exceptionErrorMessage='" + exceptionErrorMessage + '\'' +
-                ", exceptionSystemAction='" + exceptionSystemAction + '\'' +
-                ", exceptionUserAction='" + exceptionUserAction + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/README.md
----------------------------------------------------------------------
diff --git a/omas-connectedasset/README.md b/omas-connectedasset/README.md
deleted file mode 100644
index 2f431df..0000000
--- a/omas-connectedasset/README.md
+++ /dev/null
@@ -1,42 +0,0 @@
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-# Connected Asset Open Metadata Access Service (OMAS)
-
-The Connected Asset OMAS implements the ConnectedAssetProperties API that is
-available on every **OCF connector**.
-
-An OCF connector is a connector that supports the open connector framework (OCF).
-It has 3 sets of APIs:
-* An API to return properties about the connector and its connection
-* An API to access the asset it connects to
-* An API to access the metadata about the asset the connector is used to access
-
-The Connected Asset OMAS is the third API on an OCF connector - the one for the metadata about the asset.
-It is a generic API for all types of open metadata assets.  However, it assumes the
-asset's metadata model inherits from **Asset** (see model 0010 in Area 0).
-
-The Connected Asset OMAS returns metadata about the asset at three levels of detail:
-
-* getAssetSummary - returns the summary information organized in the assetSummary structure.
-* getAssetDetail - returns detailed information about the asset organized in the assetDetail structure.
-* getAssetUniverse - returns all of the common metadata properties connected to the asset such as its schma, meanings
-and platform.
-
-These structures are defined in the OCF module as POJO property objects.
-

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/pom.xml
----------------------------------------------------------------------
diff --git a/omas-connectedasset/pom.xml b/omas-connectedasset/pom.xml
deleted file mode 100644
index 814fb9d..0000000
--- a/omas-connectedasset/pom.xml
+++ /dev/null
@@ -1,111 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-
-    <parent>
-        <artifactId>apache-atlas</artifactId>
-        <groupId>org.apache.atlas</groupId>
-        <version>1.0.0</version>
-    </parent>
-
-    <artifactId>omas-connectedasset</artifactId>
-
-    <name>Connected Asset Open Metadata Access Service (OMAS)</name>
-    <description>Connected Asset OMAS Module covering client, REST API, Event Listener and Event Publisher</description>
-
-    <packaging>jar</packaging>
-
-    <dependencies>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>om-fwk-ocf</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>omrs</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>omag-api</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>commons-io</groupId>
-            <artifactId>commons-io</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>com.fasterxml.jackson.jaxrs</groupId>
-            <artifactId>jackson-jaxrs-base</artifactId>
-            <version>${jackson.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>com.fasterxml.jackson.jaxrs</groupId>
-            <artifactId>jackson-jaxrs-json-provider</artifactId>
-            <version>${jackson.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>javax.inject</groupId>
-            <artifactId>javax.inject</artifactId>
-            <version>${javax-inject.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.testng</groupId>
-            <artifactId>testng</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-jar-plugin</artifactId>
-                <version>2.4</version>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>test-jar</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-</project>


[48/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ConnectedAssetProperties.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ConnectedAssetProperties.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ConnectedAssetProperties.java
deleted file mode 100644
index b9c8db1..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ConnectedAssetProperties.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import org.apache.atlas.ocf.ffdc.PropertyServerException;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * ConnectedAssetProperties is associated with a Connector.  Connectors provide access to
- * assets.   ConnectedAssetProperties returns properties (metadata) about the connector's asset.
- *
- * It is a generic interface for all types of open metadata assets.  However, it assumes the asset's metadata model
- * inherits from <b>Asset</b> (see model 0010 in Area 0).
- *
- * The ConnectedAssetProperties returns metadata about the asset at three levels of detail:
- * <ul>
- *     <li><b>assetSummary</b> - used for displaying details of the asset in summary lists or hover text</li>
- *     <li><b>assetDetail</b> - used to display all of the information known about the asset with summaries
- *     of the relationships to other metadata entities</li>
- *     <li><b>assetUniverse</b> - used to define the broader context for the asset</li>
- * </ul>
- *
- * ConnectedAssetProperties is a base class for the connector's metadata API that returns null,
- * for the asset's properties.  Metadata repository implementations extend this class to add their
- * implementation of the refresh() method that calls to the metadata repository to populate the metadata properties.
- */
-public abstract class ConnectedAssetProperties extends PropertyBase
-{
-    /*
-     * AssetUniverse extends AssetDetails which extends AssetSummary.  The interaction with the metadata repository
-     * pulls the asset universe in one single network interaction and the caller can then explore the metadata
-     * property by property without incurring many network interactions (unless there are too many instances
-     * of a particular type of property and one of the iterators is forced to use paging).
-     *
-     * If null is returned, the connector is not linked to a metadata repository.
-     */
-    protected  AssetUniverse     assetProperties = null;
-
-    private static final Logger log = LoggerFactory.getLogger(ConnectedAssetProperties.class);
-
-    /**
-     * Typical constructor.
-     */
-    public ConnectedAssetProperties()
-    {
-        /*
-         * Nothing to do except initialize superclass.
-         */
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateProperties - template to copy.
-     */
-    public ConnectedAssetProperties(ConnectedAssetProperties   templateProperties)
-    {
-        super(templateProperties);
-
-        if (templateProperties != null)
-        {
-            AssetUniverse   templateAssetUniverse = templateProperties.getAssetUniverse();
-            if (templateAssetUniverse != null)
-            {
-                assetProperties = new AssetUniverse(templateAssetUniverse);
-            }
-        }
-    }
-
-
-    /**
-     * Returns the summary information organized in the assetSummary structure.
-     *
-     * @return AssetSummary - summary object
-     */
-    public AssetSummary getAssetSummary() { return assetProperties; }
-
-
-
-    /**
-     * Returns detailed information about the asset organized in the assetDetail structure.
-     *
-     * @return AssetDetail - detail object
-     */
-    public AssetDetail getAssetDetail() { return assetProperties; }
-
-
-    /**
-     * Returns all of the detail of the asset and information connected to it in organized in the assetUniverse
-     * structure.
-     *
-     * @return AssetUniverse - universe object
-     */
-    public AssetUniverse getAssetUniverse() { return assetProperties; }
-
-
-    /**
-     * Request the values in the ConnectedAssetProperties are refreshed with the current values from the
-     * metadata repository.
-     *
-     * @throws PropertyServerException - there is a problem connecting to the server to retrieve metadata.
-     */
-    public abstract void refresh() throws PropertyServerException;
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "ConnectedAssetProperties{" +
-                "assetProperties=" + assetProperties +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Connection.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Connection.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Connection.java
deleted file mode 100644
index d5ae7d1..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Connection.java
+++ /dev/null
@@ -1,365 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * The connection is an object that contains the properties needed to create and initialise a connector to access a
- * specific data assets.
- *
- * The properties for a connection are defined in model 0201.  They include the following options for connector name:
- * <ul>
- *     <li>
- *         guid - Globally unique identifier for the connection.
- *     </li>
- *     <li>
- *         url - URL of the connection definition in the metadata repository.
- *         This URL can be stored as a property in another entity to create an explicit link to this connection.
- *     </li>
- *     <li>
- *         qualifiedName - The official (unique) name for the connection.
- *         This is often defined by the IT systems management organization and should be used (when available) on
- *         audit logs and error messages.  The qualifiedName is defined in the 0010 model as part of Referenceable.
- *     </li>
- *     <li>
- *         displayName - A consumable name for the connection.   Often a shortened form of the qualifiedName for use
- *         on user interfaces and messages.  The displayName should be only be used for audit logs and error messages
- *         if the qualifiedName is not set.
- *     </li>
- * </ul>
- *  Either the guid, qualifiedName or displayName can be used to specify the name for a connection.
- *
- *  Other properties for the connection include:
- *
- *  <ul>
- *      <li>
- *          type - information about the TypeDef for Connection
- *      </li>
- *      <li>
- *          description - A full description of the connection covering details of the assets it connects to
- *          along with usage and versioning information.
- *      </li>
- *      <li>
- *          additionalProperties - Any additional properties associated with the connection.
- *      </li>
- *      <li>
- *          securedProperties - Protected properties for secure log on by connector to back end server.  These
- *          are protected properties that can only be retrieved by privileged connector code.
- *      </li>
- *      <li>
- *          connectorType - Properties that describe the connector type for the connector.
- *      </li>
- *      <li>
- *          endpoint - Properties that describe the server endpoint where the connector will retrieve the assets.
- *      </li>
- *  </ul>
-
- * The connection class is simply used to cache the properties for an connection.
- * It is used by other classes to exchange this information between a metadata repository and a consumer.
- */
-public class Connection extends Referenceable
-{
-    /*
-     * Attributes of a connector
-     */
-    protected String                    displayName = null;
-    protected String                    description = null;
-    protected ConnectorType             connectorType = null;
-    protected Endpoint                  endpoint = null;
-
-    /*
-     * Secured properties are protected so they can only be accessed by subclassing this object.
-     */
-    protected AdditionalProperties    securedProperties = null;
-
-    /**
-     * Typical Constructor - for constructing a new, independent populated Connection.
-     *
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param displayName - consumable name
-     * @param description - stored description property for the connection.
-     * @param connectorType - connector type to copy
-     * @param endpoint - endpoint properties
-     * @param securedProperties - typically user credentials for the connection
-     */
-    public Connection(ElementType          type,
-                      String               guid,
-                      String               url,
-                      Classifications      classifications,
-                      String               qualifiedName,
-                      AdditionalProperties additionalProperties,
-                      Meanings             meanings,
-                      String               displayName,
-                      String               description,
-                      ConnectorType        connectorType,
-                      Endpoint             endpoint,
-                      AdditionalProperties securedProperties)
-    {
-        super(null, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-
-        this.displayName = displayName;
-        this.description = description;
-        this.connectorType = connectorType;
-        this.endpoint = endpoint;
-        this.securedProperties = securedProperties;
-    }
-
-
-    /**
-     * Typical Constructor - for constructing a new, populated Connection as part of connected asset properties.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object
-     * @param meanings - list of glossary terms (summary)
-     * @param displayName - consumable name
-     * @param description - stored description property for the connection.
-     * @param connectorType - connector type to copy
-     * @param endpoint - endpoint properties
-     * @param securedProperties - typically user credentials for the connection
-     */
-    public Connection(AssetDescriptor      parentAsset,
-                      ElementType          type,
-                      String               guid,
-                      String               url,
-                      Classifications      classifications,
-                      String               qualifiedName,
-                      AdditionalProperties additionalProperties,
-                      Meanings             meanings,
-                      String               displayName,
-                      String               description,
-                      ConnectorType        connectorType,
-                      Endpoint             endpoint,
-                      AdditionalProperties securedProperties)
-    {
-        super(parentAsset, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-
-        this.displayName = displayName;
-        this.description = description;
-        this.connectorType = connectorType;
-        this.endpoint = endpoint;
-        this.securedProperties = securedProperties;
-    }
-
-
-    /**
-     * Copy/clone Constructor to return a copy of a connection object that is not connected to an asset.
-     *
-     * @param templateConnection - Connection to copy
-     */
-    public Connection(Connection   templateConnection)
-    {
-        /*
-         * Set parentAsset to null
-         */
-        this(null, templateConnection);
-    }
-
-    /**
-     * Copy/clone Constructor to return a copy of a connection object that is connected to an asset.
-     *
-     * @param parentAsset - description of the asset that this connection is attached to.
-     * @param templateConnection - template object to copy.
-     */
-    public Connection(AssetDescriptor  parentAsset, Connection   templateConnection)
-    {
-        /*
-         * Save parentAsset
-         */
-        super(parentAsset, templateConnection);
-
-        /*
-         * Copy over properties from the template.
-         */
-        if (templateConnection != null)
-        {
-            displayName = templateConnection.getDisplayName();
-            description = templateConnection.getDescription();
-
-            ConnectorType          templateConnectorType = templateConnection.getConnectorType();
-            Endpoint               templateEndpoint = templateConnection.getEndpoint();
-            AdditionalProperties   templateSecuredProperties = templateConnection.getSecuredProperties();
-
-            if (templateConnectorType != null)
-            {
-                connectorType = new ConnectorType(parentAsset, templateConnectorType);
-            }
-            if (templateEndpoint != null)
-            {
-                endpoint = new Endpoint(parentAsset, templateEndpoint);
-            }
-            if (templateSecuredProperties != null)
-            {
-                securedProperties = new AdditionalProperties(parentAsset, templateSecuredProperties);
-            }
-        }
-    }
-
-
-    /**
-     * Returns the stored display name property for the connection.
-     * Null means no displayName is available.
-     *
-     * @return displayName
-     */
-    public String getDisplayName() { return displayName; }
-
-
-    /**
-     * Returns a formatted string with the connection name.  It is used in formatting error messages for the
-     * exceptions thrown by consuming components.  It is extremely cautious because most of the exceptions
-     * are reporting a malformed connection object so who knows what else is wrong with it.
-     *
-     * Within the connection are 2 possible properties that could
-     * contain the connection name:
-     *   ** qualifiedName - this is a uniqueName and should be there
-     *   ** displayName - shorter simpler name but may not be unique - so may not identify the connection in error
-     *
-     * This method inspects these properties and builds up a string to represent the connection name
-     *
-     * @return connection name
-     */
-    public String  getConnectionName()
-    {
-        String   connectionName = "<Unknown>"; /* if all properties are blank */
-
-        /*
-         * The qualifiedName is preferred because it is unique.
-         */
-        if (qualifiedName != null && (!qualifiedName.equals("")))
-        {
-            /*
-             * Use qualified name.
-             */
-            connectionName = qualifiedName;
-        }
-        else if (displayName != null && (!displayName.equals("")))
-        {
-            /*
-             * The qualifiedName is not set but the displayName is available so use it.
-             */
-            connectionName = displayName;
-        }
-
-        return connectionName;
-    }
-
-
-    /**
-     * Returns the stored description property for the connection.
-     * If no description is provided then null is returned.
-     *
-     * @return description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Returns a copy of the properties for this connection's connector type.
-     * A null means there is no connection type.
-     *
-     * @return connector type for the connection
-     */
-    public ConnectorType getConnectorType()
-    {
-        if (connectorType == null)
-        {
-            return connectorType;
-        }
-        else
-        {
-            return new ConnectorType(super.getParentAsset(), connectorType);
-        }
-    }
-
-
-    /**
-     * Returns a copy of the properties for this connection's endpoint.
-     * Null means no endpoint information available.
-     *
-     * @return endpoint for the connection
-     */
-    public Endpoint getEndpoint()
-    {
-        if (endpoint == null)
-        {
-            return endpoint;
-        }
-        else
-        {
-            return new Endpoint(super.getParentAsset(), endpoint);
-        }
-    }
-
-
-    /**
-     * Return a copy of the secured properties.  Null means no secured properties are available.
-     * This method is protected so only OCF (or subclasses) can access them.  When Connector is passed to calling
-     * OMAS, the secured properties are not available.
-     *
-     * @return secured properties - typically user credentials for the connection
-     */
-    protected AdditionalProperties getSecuredProperties()
-    {
-        if (securedProperties == null)
-        {
-            return securedProperties;
-        }
-        else
-        {
-            return new AdditionalProperties(super.getParentAsset(), securedProperties);
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Connection{" +
-                "displayName='" + displayName + '\'' +
-                ", description='" + description + '\'' +
-                ", connectorType=" + connectorType +
-                ", endpoint=" + endpoint +
-                ", securedProperties=" + securedProperties +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Connections.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Connections.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Connections.java
deleted file mode 100644
index 8cdb2e1..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Connections.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * Connections supports an iterator over a list of connections.  Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class Connections extends AssetPropertyIteratorBase implements Iterator<Connection>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public Connections(AssetDescriptor              parentAsset,
-                       int                          totalElementCount,
-                       int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public Connections(AssetDescriptor   parentAsset, Connections    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new Connection(parentAsset, (Connection)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract Connections  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return Connection - next element object that has been cloned.
-     */
-    @Override
-    public Connection next()
-    {
-        return (Connection)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Connections{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ConnectorType.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ConnectorType.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ConnectorType.java
deleted file mode 100644
index 889cefc..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ConnectorType.java
+++ /dev/null
@@ -1,221 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * The ConnectorType describe the implementation details of a particular type of OCF connector.
- * The properties for a connector type are defined in model 0201.
- * They include:
- *
- * <ul>
- *     <li>
- *         guid - Globally unique identifier for the connector type.
- *     </li>
- *     <li>
- *         url - External link address for the connector type properties in the metadata repository.  This URL can be
- *         stored as a property in another entity to create an explicit link to this connector type.
- *     </li>
- *     <li>
- *         qualifiedName - The official (unique) name for the connector type. This is often defined by the IT
- *         systems management organization and should be used (when available) on audit logs and error messages.
- *     </li>
- *     <li>
- *         displayName - A consumable name for the connector type.   Often a shortened form of the qualifiedName for use
- *         on user interfaces and messages.  The displayName should be only be used for audit logs and error messages
- *         if the qualifiedName is not set.
- *     </li>
- *     <li>
- *         description - A full description of the connector type covering details of the assets it connects to
- *         along with usage and versioning information.
- *     </li>
- *     <li>
- *         connectorProviderClassName - The connector provider is the factory for a particular type of connector.
- *         This property defines the class name for the connector provider that the Connector Broker should use to request
- *         new connector instances.
- *     </li>
- *     <li>
- *         additionalProperties - Any additional properties that the connector provider needs to know in order to
- *         create connector instances.
- *     </li>
- * </ul>
- *
- * The connectorTypeProperties class is simply used to cache the properties for an connector type.
- * It is used by other classes to exchange this information between a metadata repository and a consumer.
- */
-public class ConnectorType extends Referenceable
-{
-    /*
-     * Attributes of a connector type
-     */
-    protected   String                 displayName = null;
-    protected   String                 description = null;
-    protected   String                 connectorProviderClassName = null;
-
-    /**
-     * Typical Constructor - used when Connector Type is used inside a connection object which is itself
-     * not yet connected to an asset.  In this case the ParentAsset is null.
-     *
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param displayName - consumable name property stored for the connector type.
-     * @param description - description property stored for the connector type.
-     * @param connectorProviderClassName - class name (including package name)
-     */
-    public ConnectorType(ElementType          type,
-                         String               guid,
-                         String               url,
-                         Classifications      classifications,
-                         String               qualifiedName,
-                         AdditionalProperties additionalProperties,
-                         Meanings             meanings,
-                         String               displayName,
-                         String               description,
-                         String               connectorProviderClassName)
-    {
-        super(null, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-
-        this.displayName = displayName;
-        this.description = description;
-        this.connectorProviderClassName = connectorProviderClassName;
-    }
-
-
-    /**
-     * Typical constructor for creating a connectorType linked to an asset.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param displayName - consumable name property stored for the connector type.
-     * @param description - description property stored for the connector type.
-     * @param connectorProviderClassName - class name (including package name)
-     */
-    public ConnectorType(AssetDescriptor parentAsset, ElementType type, String guid, String url, Classifications classifications, String qualifiedName, AdditionalProperties additionalProperties, Meanings meanings, String displayName, String description, String connectorProviderClassName)
-    {
-        super(parentAsset, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-
-        this.displayName = displayName;
-        this.description = description;
-        this.connectorProviderClassName = connectorProviderClassName;
-    }
-
-    /**
-     * Copy/clone constructor for a connectorType that is not connected to an asset (either directly or indirectly).
-     *
-     * @param templateConnectorType - template object to copy.
-     */
-    public ConnectorType(ConnectorType    templateConnectorType)
-    {
-        this(null, templateConnectorType);
-    }
-
-
-    /**
-     * Copy/clone constructor for a connectorType that is connected to an asset (either directly or indirectly).
-     *
-     * @param parentAsset - description of the asset that this connector type is attached to.
-     * @param templateConnectorType - template object to copy.
-     */
-    public ConnectorType(AssetDescriptor  parentAsset, ConnectorType templateConnectorType)
-    {
-        /*
-         * Save parentAsset.
-         */
-        super(parentAsset, templateConnectorType);
-
-        /*
-         * All properties are initialised as null so only change their default setting if the template is
-         * not null
-         */
-        if (templateConnectorType != null)
-        {
-            displayName = templateConnectorType.getDisplayName();
-            description = templateConnectorType.getDescription();
-            connectorProviderClassName = templateConnectorType.getConnectorProviderClassName();
-        }
-    }
-
-
-    /**
-     * Returns the stored display name property for the connector type.
-     * If no display name is available then null is returned.
-     *
-     * @return displayName
-     */
-    public String getDisplayName()
-    {
-        return displayName;
-    }
-
-
-    /**
-     * Returns the stored description property for the connector type.
-     * If no description is available then null is returned.
-     *
-     * @return description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Returns the stored connectorProviderClassName property for the connector type.
-     * If no connectorProviderClassName is available then null is returned.
-     *
-     * @return connectorProviderClassName - class name (including package name)
-     */
-    public String getConnectorProviderClassName()
-    {
-        return connectorProviderClassName;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "ConnectorType{" +
-                "displayName='" + displayName + '\'' +
-                ", description='" + description + '\'' +
-                ", connectorProviderClassName='" + connectorProviderClassName + '\'' +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/DerivedSchemaElement.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/DerivedSchemaElement.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/DerivedSchemaElement.java
deleted file mode 100644
index 29c8972..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/DerivedSchemaElement.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * Derived schema elements are used in views to define elements that are calculated using data from other sources.
- * It contains a list of queries and a formula to combine the resulting values.
- */
-public class DerivedSchemaElement extends PrimitiveSchemaElement
-{
-    private String                        formula = null;
-    private SchemaImplementationQueries   queries = null;
-
-    /**
-     * Typical constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param versionNumber - the version number of the schema element - null means no version number.
-     * @param author - the name of the author of the schema element. Null means the author is unknown.
-     * @param usage - the usage guidance for this schema element.  Null means no guidance available.
-     * @param encodingStandard - encoding standard used for this schema.  It may be XML, JSON, SQL DDL or something else.
-     *                           Null means the encoding standard is unknown or there are many choices.
-     * @param dataType - the name of the data type for this element.  Null means unknown data type.
-     * @param defaultValue - String containing default value for the element
-     * @param formula - the formula used to combine the values of the queries.  Each query is numbers 0, 1, ... and the
-     *                  formula has placeholders in it to show how the query results are combined.
-     * @param queries - list of queries that are used to create the derived schema element.
-     */
-    public DerivedSchemaElement(AssetDescriptor parentAsset,
-                                ElementType type,
-                                String guid,
-                                String url,
-                                Classifications classifications,
-                                String qualifiedName,
-                                AdditionalProperties additionalProperties,
-                                Meanings meanings,
-                                String versionNumber,
-                                String author,
-                                String usage,
-                                String encodingStandard,
-                                String dataType,
-                                String defaultValue,
-                                String formula,
-                                SchemaImplementationQueries queries)
-    {
-        super(parentAsset,
-              type,
-              guid,
-              url,
-              classifications,
-              qualifiedName,
-              additionalProperties,
-              meanings,
-              versionNumber,
-              author,
-              usage,
-              encodingStandard,
-              dataType,
-              defaultValue);
-
-        this.formula = formula;
-        this.queries = queries;
-    }
-
-    /**
-     * Copy/clone Constructor - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the definitions clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param parentAsset - description of the asset that this schema element is attached to.
-     * @param templateSchemaElement - template object to copy.
-     */
-    public DerivedSchemaElement(AssetDescriptor  parentAsset, DerivedSchemaElement templateSchemaElement)
-    {
-        super(parentAsset, templateSchemaElement);
-
-        if (templateSchemaElement != null)
-        {
-            SchemaImplementationQueries   templateQueries = templateSchemaElement.getQueries();
-
-            formula = templateSchemaElement.getFormula();
-            queries = templateQueries.cloneIterator(super.getParentAsset());
-        }
-    }
-
-
-    /**
-     * Return the formula used to combine the values of the queries.  Each query is numbers 0, 1, ... and the
-     * formula has placeholders in it to show how the query results are combined.
-     *
-     * @return String formula
-     */
-    public String getFormula() { return formula; }
-
-
-    /**
-     * Return the list of queries that are used to create the derived schema element.
-     *
-     * @return SchemaImplementationQueries - list of queries
-     */
-    public SchemaImplementationQueries getQueries()
-    {
-        if (queries == null)
-        {
-            return queries;
-        }
-        else
-        {
-            return queries.cloneIterator(super.getParentAsset());
-        }
-    }
-
-
-    /**
-     * Returns a clone of this object as the abstract SchemaElement class.
-     *
-     * @param parentAsset - description of the asset that this schema element is attached to.
-     * @return PrimitiveSchemaElement object
-     */
-    @Override
-    public SchemaElement cloneSchemaElement(AssetDescriptor parentAsset)
-    {
-        return new DerivedSchemaElement(parentAsset, this);
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "DerivedSchemaElement{" +
-                "formula='" + formula + '\'' +
-                ", queries=" + queries +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ElementHeader.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ElementHeader.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ElementHeader.java
deleted file mode 100644
index fea85c5..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ElementHeader.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-/**
- * ElementHeader provides the common identifier and type information for all properties objects
- * that link off of the asset and have a guid associated with them.  This typically means it is
- * represented by an entity in the metadata repository.
- */
-public abstract class ElementHeader extends AssetPropertyBase
-{
-    /*
-     * Common header for first class elements from a metadata repository
-     */
-    protected ElementType               type = null;
-    protected String                    guid = null;
-    protected String                    url = null;
-
-    /*
-     * Attached classifications
-     */
-    protected Classifications classifications = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     */
-    public ElementHeader(AssetDescriptor parentAsset,
-                         ElementType     type,
-                         String          guid,
-                         String          url,
-                         Classifications classifications)
-    {
-        super(parentAsset);
-
-        this.type = type;
-        this.guid = guid;
-        this.url = url;
-        this.classifications = classifications;
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateHeader - element to copy
-     */
-    public ElementHeader(AssetDescriptor parentAsset, ElementHeader templateHeader)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(parentAsset, templateHeader);
-
-        if (templateHeader != null)
-        {
-            /*
-             * Copy the values from the supplied parameters.
-             */
-            type = templateHeader.getType();
-            guid = templateHeader.getGUID();
-            url  = templateHeader.getURL();
-
-            Classifications      templateClassifications = templateHeader.getClassifications();
-            if (templateClassifications != null)
-            {
-                classifications = templateClassifications.cloneIterator(parentAsset);
-            }
-        }
-    }
-
-
-    /**
-     * Return the element type properties for this properties object.  These values are set up by the metadata repository
-     * and define details to the metadata entity used to represent this element.
-     *
-     * @return ElementType - type information.
-     */
-    public ElementType getType() {
-        return type;
-    }
-
-
-    /**
-     * Return the unique id for the properties object.  Null means no guid is assigned.
-     *
-     * @return String - unique id
-     */
-    public String getGUID() {
-        return guid;
-    }
-
-
-    /**
-     * Returns the URL to access the properties object in the metadata repository.
-     * If no url is available then null is returned.
-     *
-     * @return String - URL
-     */
-    public String getURL() {
-        return url;
-    }
-
-
-    /**
-     * Return the list of classifications associated with the asset.   This is an enumeration and the
-     * pointers are set to the start of the list of classifications
-     *
-     * @return Classifications - enumeration of classifications
-     */
-    public Classifications getClassifications()
-    {
-        if (classifications == null)
-        {
-            return classifications;
-        }
-        else
-        {
-            return classifications.cloneIterator(super.getParentAsset());
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "ElementHeader{" +
-                "type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                ", classifications=" + classifications +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ElementOrigin.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ElementOrigin.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ElementOrigin.java
deleted file mode 100644
index dac4e6e..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ElementOrigin.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * ElementOrigin defines where the metadata comes from and, hence if it can be updated.
- * <ul>
- *     <li>
- *         LOCAL_COHORT - the element is being maintained within the local cohort.
- *         The metadata collection id is for one of the repositories in the cohort.
- *         This metadata collection id identifies the home repository for this element.
- *     </li>
- *     <li>
- *         EXPORT_ARCHIVE - the element was created from an export archive.
- *         The metadata collection id for the element is the metadata collection id of the originating server.
- *         If the originating server later joins the cohort with the same metadata collection id then these
- *         elements will be refreshed from the originating server’s current repository.
- *     </li>
- *     <li>
- *         CONTENT_PACK - the element comes from an open metadata content pack.
- *         The metadata collection id of the elements is set to the GUID of the pack.
- *     </li>
- *     <li>
- *         DEREGISTERED_REPOSITORY - the element comes from a metadata repository that used to be a part
- *         of the repository cohort but has been deregistered. The metadata collection id remains the same.
- *         If the repository rejoins the cohort then these elements can be refreshed from the rejoining repository.
- *     </li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum ElementOrigin implements Serializable
-{
-    LOCAL_COHORT(0, "Local to cohort",  "The element is being maintained within one of the local cohort members. " +
-            "The metadata collection id is for one of the repositories in the cohort. " +
-            "This metadata collection id identifies the home repository for this element. "),
-    EXPORT_ARCHIVE(1, "Export Archive", "The element was created from an export archive. " +
-            "The metadata collection id for the element is the metadata collection id of the originating server. " +
-            "If the originating server later joins the cohort with the same metadata collection Id " +
-            "then these elements will be refreshed from the originating server’s current repository."),
-    CONTENT_PACK(2, "Content Pack", "The element comes from an open metadata content pack. " +
-            "The metadata collection id of the elements is set to the GUID of the pack."),
-    DEREGISTERED_REPOSITORY(3, "Deregistered Repository", "The element comes from a metadata repository that " +
-            "used to be a member of the one of the local repository's cohorts but it has been deregistered. " +
-            "The metadata collection id remains the same. If the repository rejoins the cohort " +
-            "then these elements can be refreshed from the rejoining repository."),
-    CONFIGURATION(4, "Configuration",
-            "The element is part of a service's configuration.  The metadata collection id is null.");
-
-    private static final long     serialVersionUID = 1L;
-
-    private int    originCode;
-    private String originName;
-    private String originDescription;
-
-
-    /**
-     * Constructor for the enum.
-     *
-     * @param originCode - code number for origin
-     * @param originName - name for origin
-     * @param originDescription - description for origin
-     */
-    ElementOrigin(int originCode, String originName, String originDescription)
-    {
-        this.originCode = originCode;
-        this.originName = originName;
-        this.originDescription = originDescription;
-    }
-
-
-    /**
-     * Return the code for metadata element.
-     *
-     * @return int code for the origin
-     */
-    public int getOriginCode()
-    {
-        return originCode;
-    }
-
-
-    /**
-     * Return the name of the metadata element origin.
-     *
-     * @return String name
-     */
-    public String getOriginName()
-    {
-        return originName;
-    }
-
-
-    /**
-     * Return the description of the metadata element origin.
-     *
-     * @return String description
-     */
-    public String getOriginDescription()
-    {
-        return originDescription;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "ElementOrigin{" +
-                "originCode=" + originCode +
-                ", originName='" + originName + '\'' +
-                ", originDescription='" + originDescription + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ElementType.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ElementType.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ElementType.java
deleted file mode 100644
index 5c84894..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ElementType.java
+++ /dev/null
@@ -1,187 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * The ElementType provide details of the type information associated with the element.  Most consumers
- * of the properties do not need this information.  It is provided to asset consumers primarily as diagnostic
- * information.
- */
-public class ElementType extends PropertyBase
-{
-    protected String        elementTypeId                   = null;
-    protected String        elementTypeName                 = null;
-    protected long          elementTypeVersion              = 0;
-    protected String        elementTypeDescription          = null;
-    protected String        elementSourceServer             = null;
-    protected ElementOrigin elementOrigin                   = null;
-    protected String        elementHomeMetadataCollectionId = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param elementTypeId - identifier for the element's type
-     * @param elementTypeName - element type name
-     * @param elementTypeVersion - version number for the element type
-     * @param elementTypeDescription - description of element type
-     * @param elementSourceServer - url of the OMAS server
-     * @param elementOrigin - enum describing type of origin
-     * @param elementHomeMetadataCollectionId - metadata collection id
-     */
-    public ElementType(String         elementTypeId,
-                       String         elementTypeName,
-                       long           elementTypeVersion,
-                       String         elementTypeDescription,
-                       String         elementSourceServer,
-                       ElementOrigin  elementOrigin,
-                       String         elementHomeMetadataCollectionId)
-    {
-        super();
-
-        this.elementTypeId = elementTypeId;
-        this.elementTypeName = elementTypeName;
-        this.elementTypeVersion = elementTypeVersion;
-        this.elementTypeDescription = elementTypeDescription;
-        this.elementSourceServer = elementSourceServer;
-        this.elementOrigin = elementOrigin;
-        this.elementHomeMetadataCollectionId = elementHomeMetadataCollectionId;
-    }
-
-
-    /**
-     * Copy/clone constructor
-     *
-     * @param templateType - type to clone
-     */
-    public ElementType(ElementType templateType)
-    {
-        super(templateType);
-
-        if (templateType != null)
-        {
-            /*
-             * Copy the properties from the supplied template
-             */
-            this.elementTypeId = templateType.getElementTypeId();
-            this.elementTypeName = templateType.getElementTypeName();
-            this.elementTypeVersion = templateType.getElementTypeVersion();
-            this.elementTypeDescription = templateType.getElementTypeDescription();
-            this.elementSourceServer = templateType.getElementSourceServer();
-            this.elementOrigin = templateType.getElementOrigin();
-            this.elementHomeMetadataCollectionId = templateType.getElementHomeMetadataCollectionId();
-        }
-    }
-
-
-    /**
-     * Return unique identifier for the element's type.
-     *
-     * @return element type id
-     */
-    public String getElementTypeId()
-    {
-        return elementTypeId;
-    }
-
-
-    /**
-     * Return name of element's type.
-     *
-     * @return - elementTypeName
-     */
-    public String getElementTypeName()
-    {
-        return elementTypeName;
-    }
-
-
-    /**
-     * Return the version number for this element's type.
-     *
-     * @return elementTypeVersion - version number for the element type.
-     */
-    public long getElementTypeVersion()
-    {
-        return elementTypeVersion;
-    }
-
-
-    /**
-     * Return the description for this element's type.
-     *
-     * @return elementTypeDescription - String description for the element type
-     */
-    public String getElementTypeDescription()
-    {
-        return elementTypeDescription;
-    }
-
-
-    /**
-     * Return the URL of the server where the element was retrieved from.  Typically this is
-     * a server where the OMAS interfaces are activated.  If no URL is known for the server then null is returned.
-     *
-     * @return elementSourceServerURL - the url of the server where the element came from
-     */
-    public String getElementSourceServer()
-    {
-        return elementSourceServer;
-    }
-
-
-    /**
-     * Return the origin of the metadata element.
-     *
-     * @return ElementOrigin enum
-     */
-    public ElementOrigin getElementOrigin() { return elementOrigin; }
-
-
-    /**
-     * Returns the OMRS identifier for the metadata collection that is managed by the repository
-     * where the element originates (its home repository).
-     *
-     * @return String metadata collection id
-     */
-    public String getElementHomeMetadataCollectionId()
-    {
-        return elementHomeMetadataCollectionId;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "ElementType{" +
-                "elementTypeId='" + elementTypeId + '\'' +
-                ", elementTypeName='" + elementTypeName + '\'' +
-                ", elementTypeVersion=" + elementTypeVersion +
-                ", elementTypeDescription='" + elementTypeDescription + '\'' +
-                ", elementSourceServer='" + elementSourceServer + '\'' +
-                ", elementOrigin=" + elementOrigin +
-                ", elementHomeMetadataCollectionId='" + elementHomeMetadataCollectionId + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/EmbeddedConnection.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/EmbeddedConnection.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/EmbeddedConnection.java
deleted file mode 100644
index 5278f95..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/EmbeddedConnection.java
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * The EmbeddedConnection is used within a VirtualConnection.  It contains a connection and additional properties
- * the VirtualConnection uses when working with the EmbeddedConnection.
- */
-public class EmbeddedConnection extends AssetPropertyBase
-{
-    /*
-     * Attributes of an embedded connection
-     */
-    private AdditionalProperties      embeddedConnectionProperties = null;
-    private Connection                embeddedConnection = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param embeddedConnectionProperties - Additional properties
-     * @param embeddedConnection - Connection
-     */
-    public EmbeddedConnection(AssetDescriptor      parentAsset,
-                              AdditionalProperties embeddedConnectionProperties,
-                              Connection           embeddedConnection)
-    {
-        super(parentAsset);
-
-        this.embeddedConnectionProperties = embeddedConnectionProperties;
-        this.embeddedConnection = embeddedConnection;
-    }
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateEmbeddedConnection - element to copy
-     */
-    public EmbeddedConnection(AssetDescriptor parentAsset, EmbeddedConnection templateEmbeddedConnection)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(parentAsset, templateEmbeddedConnection);
-
-        if (templateEmbeddedConnection != null)
-        {
-            AdditionalProperties  templateConnectionProperties = templateEmbeddedConnection.getEmbeddedConnectionProperties();
-            Connection            templateConnection           = templateEmbeddedConnection.getEmbeddedConnection();
-
-            if (templateConnectionProperties != null)
-            {
-                embeddedConnectionProperties = new AdditionalProperties(parentAsset, templateConnectionProperties);
-            }
-            if (templateConnection != null)
-            {
-                embeddedConnection = new Connection(parentAsset, templateConnection);
-            }
-        }
-    }
-
-
-    /**
-     * Return the properties for the embedded connection.
-     *
-     * @return AdditionalProperties
-     */
-    public AdditionalProperties getEmbeddedConnectionProperties()
-    {
-        if (embeddedConnectionProperties == null)
-        {
-            return embeddedConnectionProperties;
-        }
-        else
-        {
-            return new AdditionalProperties(this.getParentAsset(), embeddedConnectionProperties);
-        }
-    }
-
-
-    /**
-     * Return the embedded connection.
-     *
-     * @return Connection object.
-     */
-    public Connection getEmbeddedConnection()
-    {
-        if (embeddedConnection == null)
-        {
-            return embeddedConnection;
-        }
-        else
-        {
-            return new Connection(this.getParentAsset(), embeddedConnection);
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "EmbeddedConnection{" +
-                "embeddedConnectionProperties=" + embeddedConnectionProperties +
-                ", embeddedConnection=" + embeddedConnection +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/EmbeddedConnections.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/EmbeddedConnections.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/EmbeddedConnections.java
deleted file mode 100644
index c2e22c1..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/EmbeddedConnections.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * EmbeddedConnections supports an iterator over a list of connections that are embedded in a virtual connection.
- * Callers can use it to step through the list just once.  If they want to parse the list again,
- * they could use the copy/clone constructor to create a new iterator.
- */
-public abstract class EmbeddedConnections extends AssetPropertyIteratorBase implements Iterator<EmbeddedConnection>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public EmbeddedConnections(AssetDescriptor              parentAsset,
-                               int                          totalElementCount,
-                               int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public EmbeddedConnections(AssetDescriptor   parentAsset, EmbeddedConnections    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new EmbeddedConnection(parentAsset, (EmbeddedConnection)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract EmbeddedConnections  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return EmbeddedConnection - next element object that has been cloned.
-     */
-    @Override
-    public EmbeddedConnection next()
-    {
-        return (EmbeddedConnection)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "EmbeddedConnections{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Endpoint.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Endpoint.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Endpoint.java
deleted file mode 100644
index b83f22a..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Endpoint.java
+++ /dev/null
@@ -1,296 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * The Endpoint describes the network information necessary for a connector to connect to the server
- * where the Asset is accessible from.  The properties for an endpoint are defined in model 0040.
- * They include:
- * <ul>
- *     <li>
- *         type - definition of the specific metadata type for the endpoint.
- *     </li>
- *     <li>
- *         guid - Globally unique identifier for the endpoint.
- *     </li>
- *     <li>
- *         url - External link address for the endpoint properties in the metadata repository.
- *         This URL can be stored as a property in another entity to create an explicit link to this endpoint.
- *     </li>
- *     <li>
- *         qualifiedName - The official (unique) name for the endpoint. This is often defined by the IT systems management
- *         organization and should be used (when available) on audit logs and error messages.
- *     </li>
- *     <li>
- *         displayName - A consumable name for the endpoint.   Often a shortened form of the qualifiedName for use
- *         on user interfaces and messages.  The displayName should be only be used for audit logs and error messages
- *         if the qualifiedName is not set.
- *     </li>
- *     <li>
- *         description - A description for the endpoint.
- *     </li>
- *     <li>
- *         address - The location of the asset.  For network connected resources, this is typically the
- *         URL and port number (if needed) for the server where the asset is located
- *         (or at least accessible by the connector).  For file-based resources, this is typically the name of the file.
- *     </li>
- *     <li>
- *         protocol - The communication protocol that the connection should use to connect to the server.
- *     </li>
- *     <li>
- *         encryptionMethod - Describes the encryption method to use (if any).  This is an open value allowing
- *         information needed by the connector user to retrieve all of the information they need to work with
- *         the endpoint.
- *     </li>
- *     <li>
- *         additionalProperties - Any additional properties that the connector need to know in order to
- *         access the Asset.
- *     </li>
- * </ul>
- *
- * The Endpoint class is simply used to cache the properties for an endpoint.
- * It is used by other classes to exchange this information between a metadata repository and a consumer.
- */
-public class Endpoint extends Referenceable
-{
-    /*
-     * Properties of an Endpoint
-     */
-    protected   String                 displayName      = null;
-    protected   String                 description      = null;
-    protected   String                 address          = null;
-    protected   String                 protocol         = null;
-    protected   String                 encryptionMethod = null;
-
-    /**
-     * Admin Constructor - used when Endpoint is inside a Connection that is not part of the connected asset
-     * properties.  In this case there is no parent asset.
-     *
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param displayName - simple name for the endpoint
-     * @param description - String description for the endpoint
-     * @param address - network url for the server/resource
-     * @param protocol - endpoint protocol
-     * @param encryptionMethod - encryption mechanism in use by the endpoint
-     */
-    public Endpoint(ElementType          type,
-                    String               guid,
-                    String               url,
-                    Classifications      classifications,
-                    String               qualifiedName,
-                    AdditionalProperties additionalProperties,
-                    Meanings             meanings,
-                    String               displayName,
-                    String               description,
-                    String               address,
-                    String               protocol,
-                    String               encryptionMethod)
-    {
-        this(null,
-             type,
-             guid,
-             url,
-             classifications,
-             qualifiedName,
-             additionalProperties,
-             meanings,
-             displayName,
-             description,
-             address,
-             protocol,
-             encryptionMethod);
-    }
-
-
-    /**
-     * Typical Constructor for a new endpoint that is connected to an asset (either directly or indirectly.)
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param displayName - simple name for the endpoint
-     * @param description - String description for the endpoint
-     * @param address - network url for the server/resource
-     * @param protocol - endpoint protocol
-     * @param encryptionMethod - encryption mechanism in use by the endpoint
-     */
-    public Endpoint(AssetDescriptor      parentAsset,
-                    ElementType          type,
-                    String               guid,
-                    String               url,
-                    Classifications      classifications,
-                    String               qualifiedName,
-                    AdditionalProperties additionalProperties,
-                    Meanings             meanings,
-                    String               displayName,
-                    String               description,
-                    String               address,
-                    String               protocol,
-                    String               encryptionMethod)
-    {
-        super(parentAsset, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-
-        this.displayName = displayName;
-        this.description = description;
-        this.address = address;
-        this.protocol = protocol;
-        this.encryptionMethod = encryptionMethod;
-    }
-
-
-    /**
-     * Copy/clone constructor for an Endpoint not connected to an asset.
-     *
-     * @param templateEndpoint - template object to copy.
-     */
-    public Endpoint(Endpoint  templateEndpoint)
-    {
-        this(null, templateEndpoint);
-    }
-
-
-    /**
-     * Copy/clone constructor for an Endpoint that is connected to an Asset (either directly or indirectly).
-     *
-     * @param parentAsset - description of the asset that this endpoint is attached to.
-     * @param templateEndpoint - template object to copy.
-     */
-    public Endpoint(AssetDescriptor  parentAsset, Endpoint templateEndpoint)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(parentAsset, templateEndpoint);
-
-        /*
-         * All properties are initialised as null so only change their default setting if the template is
-         * not null
-         */
-        if (templateEndpoint != null)
-        {
-            displayName      = templateEndpoint.getDisplayName();
-            address          = templateEndpoint.getAddress();
-            protocol         = templateEndpoint.getProtocol();
-            encryptionMethod = templateEndpoint.getEncryptionMethod();
-
-            AdditionalProperties   templateAdditionalProperties = templateEndpoint.getAdditionalProperties();
-
-            if (templateAdditionalProperties != null)
-            {
-                additionalProperties = new AdditionalProperties(parentAsset, templateAdditionalProperties);
-            }
-        }
-    }
-
-
-    /**
-     * Returns the stored display name property for the endpoint.
-     * If no display name is available then null is returned.
-     *
-     * @return displayName
-     */
-    public String getDisplayName()
-    {
-        return displayName;
-    }
-
-
-    /**
-     * Return the description for the endpoint.
-     *
-     * @return String description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Returns the stored address property for the endpoint.
-     * If no network address is available then null is returned.
-     *
-     * @return address
-     */
-    public String getAddress()
-    {
-        return address;
-    }
-
-
-    /**
-     * Returns the stored protocol property for the endpoint.
-     * If no protocol is available then null is returned.
-     *
-     * @return protocol
-     */
-    public String getProtocol()
-    {
-        return protocol;
-    }
-
-
-    /**
-     * Returns the stored encryptionMethod property for the endpoint.  This is an open type allowing the information
-     * needed to work with a specific encryption mechanism used by the endpoint to be defined.
-     * If no encryptionMethod property is available (typically because this is an unencrypted endpoint)
-     * then null is returned.
-     *
-     * @return encryption method information
-     */
-    public String getEncryptionMethod()
-    {
-        return encryptionMethod;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Endpoint{" +
-                "displayName='" + displayName + '\'' +
-                ", description='" + description + '\'' +
-                ", address='" + address + '\'' +
-                ", protocol='" + protocol + '\'' +
-                ", encryptionMethod='" + encryptionMethod + '\'' +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file


[51/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
ATLAS-2722: moved unused code from branch-1.0


Project: http://git-wip-us.apache.org/repos/asf/atlas/repo
Commit: http://git-wip-us.apache.org/repos/asf/atlas/commit/b0ecc36a
Tree: http://git-wip-us.apache.org/repos/asf/atlas/tree/b0ecc36a
Diff: http://git-wip-us.apache.org/repos/asf/atlas/diff/b0ecc36a

Branch: refs/heads/branch-1.0
Commit: b0ecc36ac9498f2e2f08d1b5e8c6b81ac76a5954
Parents: eb4c3d9
Author: Madhan Neethiraj <ma...@apache.org>
Authored: Fri May 25 07:20:08 2018 -0700
Committer: Madhan Neethiraj <ma...@apache.org>
Committed: Fri May 25 12:13:34 2018 -0700

----------------------------------------------------------------------
 om-fwk-ocf/README.md                            |    85 -
 om-fwk-ocf/pom.xml                              |    82 -
 .../java/org/apache/atlas/ocf/Connector.java    |   130 -
 .../org/apache/atlas/ocf/ConnectorBase.java     |   296 -
 .../org/apache/atlas/ocf/ConnectorBroker.java   |   357 -
 .../org/apache/atlas/ocf/ConnectorProvider.java |    49 -
 .../apache/atlas/ocf/ConnectorProviderBase.java |   323 -
 .../ocf/ffdc/ConnectionCheckedException.java    |    78 -
 .../ocf/ffdc/ConnectorCheckedException.java     |    76 -
 .../atlas/ocf/ffdc/OCFCheckedExceptionBase.java |   178 -
 .../org/apache/atlas/ocf/ffdc/OCFErrorCode.java |   270 -
 .../atlas/ocf/ffdc/OCFRuntimeException.java     |   190 -
 .../atlas/ocf/ffdc/PropertyServerException.java |    77 -
 .../java/org/apache/atlas/ocf/ffdc/README.md    |    46 -
 .../ocf/properties/AdditionalProperties.java    |   156 -
 .../apache/atlas/ocf/properties/Annotation.java |   377 -
 .../atlas/ocf/properties/AnnotationStatus.java  |   114 -
 .../atlas/ocf/properties/Annotations.java       |   128 -
 .../atlas/ocf/properties/AssetDescriptor.java   |   166 -
 .../atlas/ocf/properties/AssetDetail.java       |   332 -
 .../atlas/ocf/properties/AssetPropertyBase.java |   139 -
 .../properties/AssetPropertyIteratorBase.java   |   107 -
 .../atlas/ocf/properties/AssetSummary.java      |   253 -
 .../atlas/ocf/properties/AssetUniverse.java     |   338 -
 .../atlas/ocf/properties/Certification.java     |   303 -
 .../atlas/ocf/properties/Certifications.java    |   128 -
 .../atlas/ocf/properties/Classification.java    |   175 -
 .../atlas/ocf/properties/Classifications.java   |   128 -
 .../apache/atlas/ocf/properties/Comment.java    |   177 -
 .../atlas/ocf/properties/CommentType.java       |   112 -
 .../apache/atlas/ocf/properties/Comments.java   |   127 -
 .../properties/ConnectedAssetProperties.java    |   137 -
 .../apache/atlas/ocf/properties/Connection.java |   365 -
 .../atlas/ocf/properties/Connections.java       |   127 -
 .../atlas/ocf/properties/ConnectorType.java     |   221 -
 .../ocf/properties/DerivedSchemaElement.java    |   169 -
 .../atlas/ocf/properties/ElementHeader.java     |   161 -
 .../atlas/ocf/properties/ElementOrigin.java     |   144 -
 .../atlas/ocf/properties/ElementType.java       |   187 -
 .../ocf/properties/EmbeddedConnection.java      |   131 -
 .../ocf/properties/EmbeddedConnections.java     |   127 -
 .../apache/atlas/ocf/properties/Endpoint.java   |   296 -
 .../ocf/properties/ExternalIdentifier.java      |   215 -
 .../ocf/properties/ExternalIdentifiers.java     |   127 -
 .../atlas/ocf/properties/ExternalReference.java |   193 -
 .../ocf/properties/ExternalReferences.java      |   127 -
 .../apache/atlas/ocf/properties/Feedback.java   |   192 -
 .../atlas/ocf/properties/InformalTag.java       |   196 -
 .../atlas/ocf/properties/InformalTags.java      |   127 -
 .../apache/atlas/ocf/properties/KeyPattern.java |   114 -
 .../apache/atlas/ocf/properties/License.java    |   299 -
 .../apache/atlas/ocf/properties/Licenses.java   |   127 -
 .../org/apache/atlas/ocf/properties/Like.java   |   102 -
 .../org/apache/atlas/ocf/properties/Likes.java  |   127 -
 .../apache/atlas/ocf/properties/Lineage.java    |    77 -
 .../apache/atlas/ocf/properties/Location.java   |   124 -
 .../apache/atlas/ocf/properties/Locations.java  |   127 -
 .../atlas/ocf/properties/MapSchemaElement.java  |   170 -
 .../apache/atlas/ocf/properties/Meaning.java    |   123 -
 .../apache/atlas/ocf/properties/Meanings.java   |   127 -
 .../org/apache/atlas/ocf/properties/Note.java   |   155 -
 .../apache/atlas/ocf/properties/NoteLog.java    |   161 -
 .../apache/atlas/ocf/properties/NoteLogs.java   |   127 -
 .../org/apache/atlas/ocf/properties/Notes.java  |   127 -
 .../atlas/ocf/properties/PagingIterator.java    |   337 -
 .../ocf/properties/PrimitiveSchemaElement.java  |   150 -
 .../atlas/ocf/properties/PropertyBase.java      |   113 -
 .../org/apache/atlas/ocf/properties/Rating.java |   142 -
 .../apache/atlas/ocf/properties/Ratings.java    |   128 -
 .../atlas/ocf/properties/Referenceable.java     |   176 -
 .../atlas/ocf/properties/RelatedAsset.java      |   167 -
 .../ocf/properties/RelatedAssetProperties.java  |   143 -
 .../atlas/ocf/properties/RelatedAssets.java     |   127 -
 .../ocf/properties/RelatedMediaReference.java   |   240 -
 .../ocf/properties/RelatedMediaReferences.java  |   127 -
 .../atlas/ocf/properties/RelatedMediaType.java  |   102 -
 .../atlas/ocf/properties/RelatedMediaUsage.java |   112 -
 .../org/apache/atlas/ocf/properties/Schema.java |   245 -
 .../atlas/ocf/properties/SchemaAttribute.java   |   147 -
 .../atlas/ocf/properties/SchemaAttributes.java  |   128 -
 .../atlas/ocf/properties/SchemaElement.java     |   173 -
 .../properties/SchemaImplementationQueries.java |   129 -
 .../properties/SchemaImplementationQuery.java   |   141 -
 .../apache/atlas/ocf/properties/SchemaLink.java |   172 -
 .../atlas/ocf/properties/SchemaLinks.java       |   128 -
 .../apache/atlas/ocf/properties/SchemaType.java |   110 -
 .../apache/atlas/ocf/properties/StarRating.java |   113 -
 .../atlas/ocf/properties/VirtualConnection.java |   152 -
 .../properties/beans/AdditionalProperties.java  |    69 -
 .../atlas/ocf/properties/beans/Connection.java  |   181 -
 .../ocf/properties/beans/ConnectorType.java     |   143 -
 .../atlas/ocf/properties/beans/ElementType.java |   134 -
 .../atlas/ocf/properties/beans/Endpoint.java    |   164 -
 omag-api/pom.xml                                |   121 -
 .../atlas/omag/admin/LocalRepositoryMode.java   |   102 -
 .../omag/admin/OMAGServerAdministration.java    |   377 -
 .../atlas/omag/admin/OMAGServiceMode.java       |    87 -
 .../server/OMAGAccessServiceRegistration.java   |    47 -
 .../admin/server/OMAGServerAdminResource.java   |  1379 --
 .../server/properties/OMAGAPIResponse.java      |   172 -
 .../properties/OMAGServerConfigResponse.java    |    80 -
 .../admin/server/properties/VoidResponse.java   |    54 -
 .../properties/AccessServiceConfig.java         |   431 -
 .../properties/OMAGServerConfig.java            |   256 -
 .../registration/AccessServiceAdmin.java        |    54 -
 .../registration/AccessServiceDescription.java  |   185 -
 .../AccessServiceOperationalStatus.java         |    88 -
 .../registration/AccessServiceRegistration.java |   228 -
 .../store/OMAGServerConfigStore.java            |    48 -
 .../OMAGServerConfigStoreConnectorBase.java     |    28 -
 .../OMAGServerConfigStoreProviderBase.java      |    41 -
 .../FileBasedServerConfigStoreConnector.java    |   178 -
 .../FileBasedServerConfigStoreProvider.java     |    37 -
 .../apache/atlas/omag/ffdc/OMAGErrorCode.java   |   234 -
 .../exception/OMAGCheckedExceptionBase.java     |   160 -
 .../OMAGConfigurationErrorException.java        |    58 -
 .../OMAGInvalidParameterException.java          |    57 -
 .../exception/OMAGNotAuthorizedException.java   |    57 -
 omag-server/README.md                           |    24 -
 omag-server/pom.xml                             |   137 -
 .../atlas/omag/application/OMAGApplication.java |    41 -
 omas-assetconsumer/README.md                    |    38 -
 omas-assetconsumer/pom.xml                      |   107 -
 .../assetconsumer/AssetConsumerInterface.java   |   388 -
 .../assetconsumer/admin/AssetConsumerAdmin.java |   133 -
 .../auditlog/AssetConsumerAuditCode.java        |   174 -
 .../assetconsumer/client/AssetConsumer.java     |  1260 --
 .../events/AssetConsumerEvent.java              |    93 -
 .../events/AssetConsumerEventType.java          |    98 -
 .../ffdc/AssetConsumerErrorCode.java            |   251 -
 .../atlas/omas/assetconsumer/ffdc/README.md     |    46 -
 .../AmbiguousConnectionNameException.java       |    59 -
 .../AssetConsumerCheckedExceptionBase.java      |   173 -
 .../AssetConsumerRuntimeException.java          |   158 -
 .../exceptions/InvalidParameterException.java   |    58 -
 .../exceptions/PropertyServerException.java     |    58 -
 .../UnrecognizedConnectionGUIDException.java    |    59 -
 .../UnrecognizedConnectionNameException.java    |    58 -
 .../UnrecognizedConnectionURLException.java     |    58 -
 .../exceptions/UserNotAuthorizedException.java  |    58 -
 .../AssetConsumerOMRSTopicListener.java         |   249 -
 .../omas/assetconsumer/properties/Asset.java    |   179 -
 .../publisher/AssetConsumerPublisher.java       |   319 -
 .../server/AssetConsumerRESTServices.java       |  1057 -
 .../assetconsumer/server/AuditLogHandler.java   |   137 -
 .../assetconsumer/server/ConnectionHandler.java |   645 -
 .../omas/assetconsumer/server/ErrorHandler.java |   333 -
 .../assetconsumer/server/FeedbackHandler.java   |  1013 -
 .../AssetConsumerOMASAPIResponse.java           |   172 -
 .../server/properties/ConnectionResponse.java   |    81 -
 .../server/properties/GUIDResponse.java         |    81 -
 .../server/properties/VoidResponse.java         |    54 -
 omas-connectedasset/README.md                   |    42 -
 omas-connectedasset/pom.xml                     |   111 -
 .../connectedasset/ConnectedAssetInterface.java |    67 -
 .../admin/ConnectedAssetAdmin.java              |    80 -
 .../connectedasset/client/ConnectedAsset.java   |   117 -
 .../client/ConnectedAssetProperties.java        |   174 -
 .../ffdc/ConnectedAssetErrorCode.java           |   194 -
 .../atlas/omas/connectedasset/ffdc/README.md    |    46 -
 .../ConnectedAssetCheckedExceptionBase.java     |   175 -
 .../ConnectedAssetRuntimeException.java         |   158 -
 .../exceptions/InvalidParameterException.java   |    58 -
 .../exceptions/PropertyServerException.java     |    57 -
 .../UnrecognizedConnectionGUIDException.java    |    59 -
 .../exceptions/UserNotAuthorizedException.java  |    58 -
 .../properties/AdditionalProperties.java        |   149 -
 .../connectedasset/properties/Analysis.java     |   108 -
 .../connectedasset/properties/Annotation.java   |   472 -
 .../properties/AnnotationStatus.java            |    98 -
 .../properties/AssetDescriptor.java             |   154 -
 .../connectedasset/properties/AssetDetail.java  |   356 -
 .../connectedasset/properties/AssetSummary.java |   384 -
 .../properties/AssetUniverse.java               |   332 -
 .../properties/Certification.java               |   321 -
 .../properties/Classification.java              |   169 -
 .../omas/connectedasset/properties/Comment.java |   186 -
 .../connectedasset/properties/CommentType.java  |    96 -
 .../connectedasset/properties/Connection.java   |   313 -
 .../properties/ConnectorType.java               |   173 -
 .../properties/DerivedSchemaElement.java        |   129 -
 .../properties/ElementHeader.java               |   208 -
 .../connectedasset/properties/ElementType.java  |   237 -
 .../properties/EmbeddedConnection.java          |   136 -
 .../connectedasset/properties/Endpoint.java     |   236 -
 .../properties/ExternalIdentifier.java          |   215 -
 .../properties/ExternalReference.java           |   195 -
 .../connectedasset/properties/Feedback.java     |   210 -
 .../connectedasset/properties/InformalTag.java  |   197 -
 .../connectedasset/properties/KeyPattern.java   |    98 -
 .../omas/connectedasset/properties/License.java |   317 -
 .../omas/connectedasset/properties/Like.java    |    87 -
 .../omas/connectedasset/properties/Lineage.java |    69 -
 .../connectedasset/properties/Location.java     |   111 -
 .../properties/MapSchemaElement.java            |   137 -
 .../omas/connectedasset/properties/Meaning.java |   115 -
 .../omas/connectedasset/properties/Note.java    |   140 -
 .../omas/connectedasset/properties/NoteLog.java |   149 -
 .../properties/PrimitiveSchemaElement.java      |   110 -
 .../connectedasset/properties/PropertyBase.java |    78 -
 .../omas/connectedasset/properties/Rating.java  |   140 -
 .../properties/Referenceable.java               |   170 -
 .../connectedasset/properties/RelatedAsset.java |   141 -
 .../properties/RelatedAssetProperties.java      |   143 -
 .../properties/RelatedMediaReference.java       |   253 -
 .../properties/RelatedMediaType.java            |    90 -
 .../properties/RelatedMediaUsage.java           |    96 -
 .../omas/connectedasset/properties/Schema.java  |   218 -
 .../properties/SchemaAttribute.java             |   182 -
 .../properties/SchemaElement.java               |   161 -
 .../properties/SchemaImplementationQuery.java   |   155 -
 .../connectedasset/properties/SchemaLink.java   |   197 -
 .../connectedasset/properties/StarRating.java   |    97 -
 .../properties/VirtualConnection.java           |   113 -
 .../server/ConnectedAssetRESTServices.java      |    87 -
 .../properties/AssetUniverseResponse.java       |    83 -
 .../ConnectedAssetOMASAPIResponse.java          |   172 -
 omrs/README.md                                  |    43 -
 omrs/pom.xml                                    |   111 -
 .../AtlasOMRSRepositoryEventMapper.java         |    53 -
 .../AtlasOMRSRepositoryEventMapperProvider.java |    45 -
 .../LocalAtlasOMRSMetadataCollection.java       |    61 -
 .../LocalAtlasOMRSRepositoryConnector.java      |    54 -
 ...calAtlasOMRSRepositoryConnectorProvider.java |    45 -
 .../IGCOMRSRepositoryEventMapper.java           |    57 -
 .../IGCOMRSRepositoryEventMapperProvider.java   |    44 -
 .../IGCOMRSMetadataCollection.java              |    60 -
 .../IGCOMRSRepositoryConnector.java             |    54 -
 .../IGCOMRSRepositoryConnectorProvider.java     |    44 -
 .../IGCV2OMRSRepositoryEventMapper.java         |    58 -
 .../IGCV2OMRSRepositoryEventMapperProvider.java |    45 -
 .../IGCV2OMRSMetadataCollection.java            |    60 -
 .../IGCV2OMRSRepositoryConnector.java           |    54 -
 .../IGCV2OMRSRepositoryConnectorProvider.java   |    45 -
 .../InMemoryOMRSMetadataCollection.java         |  4913 -----
 .../InMemoryOMRSMetadataStore.java              |   615 -
 .../InMemoryOMRSRepositoryConnector.java        |    61 -
 ...InMemoryOMRSRepositoryConnectorProvider.java |    45 -
 .../omrs/admin/OMRSConfigurationFactory.java    |   870 -
 .../omrs/admin/OMRSOperationalServices.java     |  1012 -
 .../omrs/admin/properties/CohortConfig.java     |   258 -
 .../properties/EnterpriseAccessConfig.java      |   177 -
 .../admin/properties/LocalRepositoryConfig.java |   348 -
 .../OpenMetadataEventProtocolVersion.java       |    37 -
 .../properties/OpenMetadataExchangeRule.java    |   116 -
 .../properties/RepositoryServicesConfig.java    |   261 -
 .../omrs/archivemanager/OMRSArchiveBuilder.java |  1279 --
 .../omrs/archivemanager/OMRSArchiveHelper.java  |   619 -
 .../omrs/archivemanager/OMRSArchiveManager.java |   433 -
 .../omrs/archivemanager/OMRSArchiveWriter.java  |   108 -
 .../opentypes/OpenMetadataTypesArchive.java     | 17114 -----------------
 .../properties/OpenMetadataArchive.java         |   126 -
 .../OpenMetadataArchiveInstanceStore.java       |   124 -
 .../OpenMetadataArchiveProperties.java          |   271 -
 .../properties/OpenMetadataArchiveType.java     |    94 -
 .../OpenMetadataArchiveTypeStore.java           |   163 -
 .../store/OpenMetadataArchiveStore.java         |    60 -
 .../OpenMetadataArchiveStoreConnector.java      |    27 -
 .../OpenMetadataArchiveStoreProviderBase.java   |    41 -
 ...eBasedOpenMetadataArchiveStoreConnector.java |   183 -
 ...leBasedOpenMetadataArchiveStoreProvider.java |    37 -
 .../atlas/omrs/auditlog/OMRSAuditCode.java      |   624 -
 .../atlas/omrs/auditlog/OMRSAuditLog.java       |   228 -
 .../auditlog/OMRSAuditLogRecordSeverity.java    |   122 -
 .../omrs/auditlog/OMRSAuditingComponent.java    |   261 -
 .../omrs/auditlog/store/OMRSAuditLogRecord.java |   383 -
 .../store/OMRSAuditLogRecordOriginator.java     |   189 -
 .../store/OMRSAuditLogReportingComponent.java   |   155 -
 .../omrs/auditlog/store/OMRSAuditLogStore.java  |   108 -
 .../store/OMRSAuditLogStoreConnectorBase.java   |    27 -
 .../store/OMRSAuditLogStoreProviderBase.java    |    41 -
 .../file/FileBasedAuditLogStoreConnector.java   |   187 -
 .../file/FileBasedAuditLogStoreProvider.java    |    37 -
 .../OMRSConnectionConsumer.java                 |    68 -
 .../connectormanager/OMRSConnectorConsumer.java |    61 -
 .../connectormanager/OMRSConnectorManager.java  |    48 -
 .../OMRSEnterpriseConnectorManager.java         |   647 -
 .../EnterpriseOMRSConnection.java               |    49 -
 .../EnterpriseOMRSConnectorProperties.java      |    52 -
 .../EnterpriseOMRSConnectorProvider.java        |   177 -
 .../EnterpriseOMRSMetadataCollection.java       |  6737 -------
 .../EnterpriseOMRSRepositoryConnector.java      |   473 -
 .../omrs/eventmanagement/OMRSEventListener.java |   826 -
 .../eventmanagement/OMRSEventPublisher.java     |  1955 --
 .../OMRSRepositoryEventExchangeRule.java        |   332 -
 .../OMRSRepositoryEventManager.java             |  1631 --
 .../OMRSRepositoryEventProcessor.java           |    30 -
 .../omrs/eventmanagement/events/OMRSEvent.java  |   581 -
 .../events/OMRSEventCategory.java               |   101 -
 .../events/OMRSEventDirection.java              |    84 -
 .../events/OMRSEventErrorCode.java              |    39 -
 .../events/OMRSEventOriginator.java             |   171 -
 .../events/OMRSInstanceEvent.java               |   477 -
 .../events/OMRSInstanceEventErrorCode.java      |   118 -
 .../events/OMRSInstanceEventProcessor.java      |   659 -
 .../events/OMRSInstanceEventType.java           |   148 -
 .../events/OMRSRegistryEvent.java               |   266 -
 .../events/OMRSRegistryEventErrorCode.java      |   125 -
 .../events/OMRSRegistryEventProcessor.java      |   153 -
 .../events/OMRSRegistryEventType.java           |   128 -
 .../events/OMRSTypeDefEvent.java                |   453 -
 .../events/OMRSTypeDefEventErrorCode.java       |   122 -
 .../events/OMRSTypeDefEventProcessor.java       |   262 -
 .../events/OMRSTypeDefEventType.java            |   111 -
 .../eventmanagement/events/v1/OMRSEventV1.java  |   132 -
 .../events/v1/OMRSEventV1ErrorSection.java      |   190 -
 .../events/v1/OMRSEventV1InstanceSection.java   |   158 -
 .../events/v1/OMRSEventV1RegistrySection.java   |    83 -
 .../events/v1/OMRSEventV1TypeDefSection.java    |   136 -
 .../OMRSRepositoryEventMapper.java              |   107 -
 .../OMRSRepositoryEventMapperBase.java          |    33 -
 .../OMRSRepositoryEventMapperConnector.java     |   169 -
 .../OMRSRepositoryEventMapperProviderBase.java  |    41 -
 .../apache/atlas/omrs/ffdc/OMRSErrorCode.java   |   780 -
 .../java/org/apache/atlas/omrs/ffdc/README.md   |    47 -
 .../exception/ClassificationErrorException.java |    57 -
 .../ffdc/exception/EntityConflictException.java |    60 -
 .../exception/EntityNotDeletedException.java    |    57 -
 .../ffdc/exception/EntityNotKnownException.java |    57 -
 .../exception/EntityProxyOnlyException.java     |    57 -
 .../FunctionNotSupportedException.java          |    60 -
 .../ffdc/exception/HomeEntityException.java     |    57 -
 .../exception/HomeRelationshipException.java    |    57 -
 .../ffdc/exception/InvalidEntityException.java  |    60 -
 .../exception/InvalidParameterException.java    |    57 -
 .../exception/InvalidRelationshipException.java |    60 -
 .../ffdc/exception/InvalidTypeDefException.java |    60 -
 .../NotImplementedRuntimeException.java         |    32 -
 .../exception/OMRSCheckedExceptionBase.java     |   161 -
 .../exception/OMRSConfigErrorException.java     |   185 -
 .../exception/OMRSConnectorErrorException.java  |   184 -
 .../ffdc/exception/OMRSLogicErrorException.java |   185 -
 .../ffdc/exception/OMRSRuntimeException.java    |   181 -
 .../ffdc/exception/PagingErrorException.java    |    57 -
 .../ffdc/exception/PatchErrorException.java     |    60 -
 .../ffdc/exception/PropertyErrorException.java  |    57 -
 .../RelationshipConflictException.java          |    60 -
 .../RelationshipNotDeletedException.java        |    58 -
 .../RelationshipNotKnownException.java          |    61 -
 .../exception/RepositoryErrorException.java     |    61 -
 .../exception/StatusNotSupportedException.java  |    61 -
 .../exception/TypeDefConflictException.java     |    60 -
 .../ffdc/exception/TypeDefInUseException.java   |    60 -
 .../ffdc/exception/TypeDefKnownException.java   |    60 -
 .../exception/TypeDefNotKnownException.java     |    60 -
 .../exception/TypeDefNotSupportedException.java |    60 -
 .../omrs/ffdc/exception/TypeErrorException.java |    57 -
 .../exception/UserNotAuthorizedException.java   |    57 -
 .../localrepository/OMRSLocalRepository.java    |    97 -
 .../LocalOMRSConnectorProvider.java             |   190 -
 .../LocalOMRSInstanceEventProcessor.java        |  1500 --
 .../LocalOMRSMetadataCollection.java            |  4678 -----
 .../LocalOMRSRepositoryConnector.java           |   477 -
 .../OMRSInstanceRetrievalEventProcessor.java    |    86 -
 .../OMRSInstanceHelper.java                     |   151 -
 .../OMRSInstanceValidator.java                  |    91 -
 .../OMRSRepositoryContentManager.java           |  2357 ---
 .../OMRSRepositoryHelper.java                   |  1782 --
 .../OMRSRepositoryValidator.java                |  3299 ----
 .../OMRSTypeDefHelper.java                      |   155 -
 .../OMRSTypeDefManager.java                     |   196 -
 .../OMRSTypeDefValidator.java                   |   236 -
 .../OMRSMetadataCollection.java                 |  2139 --
 .../OMRSMetadataCollectionBase.java             |  4407 -----
 .../properties/MatchCriteria.java               |    90 -
 .../properties/SequencingOrder.java             |   121 -
 .../instances/ArrayPropertyValue.java           |   191 -
 .../properties/instances/Classification.java    |   263 -
 .../instances/ClassificationOrigin.java         |    91 -
 .../properties/instances/EntityDetail.java      |   117 -
 .../properties/instances/EntityProxy.java       |   128 -
 .../properties/instances/EntitySummary.java     |   135 -
 .../properties/instances/EntityUniverse.java    |   140 -
 .../properties/instances/EnumPropertyValue.java |   133 -
 .../instances/InstanceAuditHeader.java          |   275 -
 .../instances/InstanceElementHeader.java        |    63 -
 .../properties/instances/InstanceGraph.java     |   316 -
 .../properties/instances/InstanceHeader.java    |   182 -
 .../instances/InstanceProperties.java           |   226 -
 .../instances/InstancePropertyCategory.java     |   101 -
 .../instances/InstancePropertyValue.java        |   143 -
 .../instances/InstanceProvenanceType.java       |   119 -
 .../properties/instances/InstanceStatus.java    |   101 -
 .../properties/instances/InstanceType.java      |   360 -
 .../properties/instances/MapPropertyValue.java  |   167 -
 .../instances/PrimitivePropertyValue.java       |   250 -
 .../properties/instances/Relationship.java      |   330 -
 .../instances/StructPropertyValue.java          |   128 -
 .../typedefs/AttributeCardinality.java          |   121 -
 .../properties/typedefs/AttributeTypeDef.java   |   322 -
 .../typedefs/AttributeTypeDefCategory.java      |    94 -
 .../properties/typedefs/ClassificationDef.java  |   181 -
 .../typedefs/ClassificationPropagationRule.java |    97 -
 .../properties/typedefs/CollectionDef.java      |   161 -
 .../typedefs/CollectionDefCategory.java         |   110 -
 .../properties/typedefs/EntityDef.java          |   104 -
 .../properties/typedefs/EnumDef.java            |   130 -
 .../properties/typedefs/EnumElementDef.java     |   154 -
 .../typedefs/ExternalStandardMapping.java       |   151 -
 .../properties/typedefs/PrimitiveDef.java       |    93 -
 .../typedefs/PrimitiveDefCategory.java          |   113 -
 .../typedefs/RelationshipCategory.java          |   106 -
 .../typedefs/RelationshipContainerEnd.java      |    85 -
 .../properties/typedefs/RelationshipDef.java    |   227 -
 .../properties/typedefs/RelationshipEndDef.java |   203 -
 .../properties/typedefs/TypeDef.java            |   490 -
 .../properties/typedefs/TypeDefAttribute.java   |   328 -
 .../properties/typedefs/TypeDefCategory.java    |    94 -
 .../typedefs/TypeDefElementHeader.java          |    61 -
 .../properties/typedefs/TypeDefGallery.java     |   139 -
 .../properties/typedefs/TypeDefLink.java        |   185 -
 .../properties/typedefs/TypeDefPatch.java       |   454 -
 .../properties/typedefs/TypeDefPatchAction.java |   113 -
 .../properties/typedefs/TypeDefProperties.java  |   121 -
 .../properties/typedefs/TypeDefSummary.java     |   178 -
 .../OMRSMetadataCollectionManager.java          |   156 -
 .../OMRSRepositoryConnector.java                |   274 -
 .../OMRSRepositoryConnectorProviderBase.java    |    43 -
 .../metadatahighway/CohortConnectionStatus.java |   122 -
 .../omrs/metadatahighway/OMRSCohortManager.java |   390 -
 .../OMRSMetadataHighwayManager.java             |   456 -
 .../cohortregistry/OMRSCohortRegistry.java      |  1043 -
 .../store/OMRSCohortRegistryStore.java          |   114 -
 .../OMRSCohortRegistryStoreConnectorBase.java   |    28 -
 .../OMRSCohortRegistryStoreProviderBase.java    |    41 -
 .../file/FileBasedRegistryStoreConnector.java   |   614 -
 .../file/FileBasedRegistryStoreProvider.java    |    37 -
 .../store/properties/CohortMembership.java      |   109 -
 .../store/properties/MemberRegistration.java    |   215 -
 .../AttributeTypeDefListResponse.java           |    84 -
 .../properties/AttributeTypeDefResponse.java    |    84 -
 .../omrs/rest/properties/BooleanResponse.java   |    81 -
 .../rest/properties/EntityDetailResponse.java   |    82 -
 .../rest/properties/EntityListResponse.java     |    87 -
 .../rest/properties/EntitySummaryResponse.java  |    81 -
 .../rest/properties/InstanceGraphResponse.java  |    84 -
 .../properties/OMRSRESTAPIPagedResponse.java    |   130 -
 .../rest/properties/OMRSRESTAPIResponse.java    |   172 -
 .../properties/RelationshipListResponse.java    |    88 -
 .../rest/properties/RelationshipResponse.java   |    83 -
 .../rest/properties/TypeDefGalleryResponse.java |   110 -
 .../rest/properties/TypeDefListResponse.java    |    84 -
 .../omrs/rest/properties/TypeDefResponse.java   |    82 -
 .../omrs/rest/properties/VoidResponse.java      |    54 -
 .../OMRSRESTMetadataCollection.java             |  4967 -----
 .../OMRSRESTRepositoryConnector.java            |   104 -
 .../OMRSRESTRepositoryConnectorProvider.java    |    44 -
 .../rest/server/OMRSRepositoryRESTServices.java |  5222 -----
 .../atlas/omrs/topicconnectors/OMRSTopic.java   |    43 -
 .../topicconnectors/OMRSTopicConnector.java     |   231 -
 .../omrs/topicconnectors/OMRSTopicListener.java |    35 -
 .../inmemory/InMemoryOMRSTopicConnector.java    |   109 -
 .../inmemory/InMemoryOMRSTopicProvider.java     |    39 -
 .../kafka/KafkaOMRSTopicConnector.java          |    67 -
 .../kafka/KafkaOMRSTopicProvider.java           |    38 -
 .../opentypes/TestOpenMetadataTypesArchive.java |    47 -
 .../store/TestOMRSArchiveBuilder.java           |   339 -
 pom.xml                                         |     6 -
 .../atlas/classification/InterfaceAudience.java |    48 -
 459 files changed, 139162 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/README.md
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/README.md b/om-fwk-ocf/README.md
deleted file mode 100644
index 2048d31..0000000
--- a/om-fwk-ocf/README.md
+++ /dev/null
@@ -1,85 +0,0 @@
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-# Open Connector Framework (OCF)
-
-The OCF, as the name suggests, is an open framework for supporting connectors.
-Connectors support access to remote assets such as data sets, APIs and software components.
-OCF Connectors also provide access to metadata about the asset and they may call the Governance Action Framework
-GAF to execute appropriate governance actions related to the use of these assets in real-time.
-
-## Terminology
-
-There are a number of key components within the OCF:
-
-* **Connector** - this is a Java object for accessing an asset and its
-related metadata and governance functions.
-
-* **Connection** - this is a Java object containing the properties needed to
-create a connector instance.
-Connection properties are typically managed as metadata entities in the metadata
-repository but they can also be manually populated.
-Connections have 2 sub-objects:
-  * **ConnectorType** - this is a Java object that describes the type of
-  the connector, including the Java implementation class of its connector provider (see below).
-  * **Endpoint** - this is the Java object that describes the server endpoint where the asset is accessed from.
-
-* **Connector Broker** - this is a generic factory for all OCF connectors.
-
-* **Connector Provider** - this is a factory for a specific type of connector.
-It is used by the Connector Broker.
-
-* **Connected Asset** - this is the asset that the connector is accessing.  It is hosted on a server
-and the connector makes the remote calls necessary to retrieve, update, delete the asset itself.
-The connector also includes an API to retrieve the metadata properties about the connected asset.
-
-## Open Metadata Type Models
-
-Model 0040 defines the structure of an Endpoint and
-model 0201 defines the structures for Connections and Connector Types.
-Model 0205 defines the linkage between the connection and the connected asset.
-
-## Java Implementation
-
-The OCF provides the interface schema and base class implementation for these components.
-The Java implementation is located in packages org.apache.atlas.ocf.*:
-
-* **org.apache.atlas.ocf** - Java interface and base classes for Connector and Connector Provider
-plus the implementation of the Connector Broker.
-
-* **org.apache.atlas.ocf.ffdc** - Implementation of the OCF's error codes and exceptions.
-
-* **org.apache.atlas.ocf.properties** - Implementation of the properties for connections and connected assets.
-These are simple POJO objects.
-
-## Related Modules
-
-The ConnectedAsset OMAS (omas-connectedasset) supports the retrieval
-of connection and connected asset properties from the open metadata
-repository/repositories.
-
-The AssetConsumer OMAS (omas-assetconsumer) embeds the OCF to provide
-client-side support for connectors.
-
-The Open Metadata Repository Services (omrs) provides implementations
-of OCF connectors for accessing open metadata repository servers.
-These connectors are collectively called the OMRS Connectors.
-
-## Wiki References
-
-Further information on the OCF at: https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=69408729

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/pom.xml
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/pom.xml b/om-fwk-ocf/pom.xml
deleted file mode 100644
index fc7fb83..0000000
--- a/om-fwk-ocf/pom.xml
+++ /dev/null
@@ -1,82 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-
-    <parent>
-        <artifactId>apache-atlas</artifactId>
-        <groupId>org.apache.atlas</groupId>
-        <version>1.0.0</version>
-    </parent>
-
-    <artifactId>om-fwk-ocf</artifactId>
-
-    <name>Open Connector Framework (OCF)</name>
-    <description>Open Connector Framework (OCF) interfaces and implementation for building metadata and governance enabled connectors.</description>
-
-    <packaging>jar</packaging>
-
-    <dependencies>
-
-        <dependency>
-            <groupId>com.fasterxml.jackson.jaxrs</groupId>
-            <artifactId>jackson-jaxrs-base</artifactId>
-            <version>${jackson.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>com.fasterxml.jackson.jaxrs</groupId>
-            <artifactId>jackson-jaxrs-json-provider</artifactId>
-            <version>${jackson.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>javax.inject</groupId>
-            <artifactId>javax.inject</artifactId>
-            <version>${javax-inject.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.testng</groupId>
-            <artifactId>testng</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-jar-plugin</artifactId>
-                <version>2.4</version>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>test-jar</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-</project>

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/Connector.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/Connector.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/Connector.java
deleted file mode 100644
index 06c4e3d..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/Connector.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.ocf;
-
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.ocf.ffdc.PropertyServerException;
-import org.apache.atlas.ocf.properties.ConnectedAssetProperties;
-import org.apache.atlas.ocf.properties.Connection;
-
-/**
- * <p>
- * The Connector is the interface for all connector instances.   Connectors are client-side interfaces to assets
- * such as data stores, data sets, APIs, analytical functions.  They handle the communication with the server that
- * hosts the assets, along with the communication with the metadata server to serve up metadata (properties) about
- * the assets.
- * </p>
- * <p>
- * Each connector implementation is paired with a connector provider.  The connector provider is the factory for
- * connector instances.
- * </p>
- * <p>
- * The Connector interface defines that a connector instance should be able to return a unique
- * identifier, a connection object and a metadata object called ConnectedAssetProperties.
- * </p>
- * <p>
- * Each specific implementation of a connector then extends the Connector interface to add the methods to work with the
- * particular type of asset it supports.  For example, a JDBC connector would add the standard JDBC SQL interface, the
- * OMRS Connectors add the metadata repository management APIs...
- * </p>
- * <p>
- * The initialize() method is called by the Connector Provider to set up the connector instance Id and the
- * Connection properties for the connector as part of its construction process.
- * </p>
- * <p>
- * ConnectedAssetProperties provides descriptive properties about the asset that the connector is accessing.
- * It is supplied to the connector later during its initialization through the initializeConnectedAssetProperties() method.
- * See AssetConsumer OMAS for an example of this.
- * </p>
- * <p>
- * Both the connector and the connector provider have base classes (ConnectorBase and
- * ConnectorProviderBase respectively) that implement all of the standard methods.  The connector developer extends
- * these classes to add the specific methods to manage the asset and configure the base classes.
- * </p>
- */
-public abstract class Connector
-{
-    /**
-     * Call made by the ConnectorProvider to initialize the Connector with the base services.
-     *
-     * @param connectorInstanceId - unique id for the connector instance - useful for messages etc
-     * @param connection - POJO for the configuration used to create the connector.
-     */
-    public abstract void initialize(String                    connectorInstanceId,
-                                    Connection                connection);
-
-
-    /**
-     * Returns the unique connector instance id that assigned to the connector instance when it was created.
-     * It is useful for error and audit messages.
-     *
-     * @return guid for the connector instance
-     */
-    public abstract String getConnectorInstanceId();
-
-
-    /**
-     * Returns the connection object that was used to create the connector instance.  Its contents are never refreshed
-     * during the lifetime of a connector instance even if the connection information is updated or removed from
-     * the originating metadata repository.
-     *
-     * @return connection object
-     */
-    public abstract Connection  getConnection();
-
-
-    /**
-     * Set up the connected asset properties object.  This provides the known metadata properties stored in one or more
-     * metadata repositories.  The implementation of the connected asset properties object is free to determine when
-     * the properties are populated.  It may be as lazy as whenever getConnectedAssetProperties() is called.
-     *
-     * @param connectedAssetProperties - properties of the connected asset
-     */
-    public abstract void initializeConnectedAssetProperties(ConnectedAssetProperties connectedAssetProperties);
-
-
-    /**
-     * Returns the properties that contain the metadata for the asset.  The asset metadata is retrieved from the
-     * metadata repository and cached in the ConnectedAssetProperties object each time the getConnectedAssetProperties
-     * method is requested by the caller.   Once the ConnectedAssetProperties object has the metadata cached, it can be
-     * used to access the asset property values many times without a return to the metadata repository.
-     * The cache of metadata can be refreshed simply by calling this getConnectedAssetProperties() method again.
-     *
-     * @return ConnectedAssetProperties - connected asset properties
-     * @throws PropertyServerException - indicates a problem retrieving properties from a metadata repository
-     */
-    public abstract ConnectedAssetProperties getConnectedAssetProperties() throws PropertyServerException;
-
-
-    /**
-     * Indicates that the connector is completely configured and can begin processing.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public abstract void start() throws ConnectorCheckedException;
-
-
-
-    /**
-     * Free up any resources held since the connector is no longer needed.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public abstract void disconnect() throws ConnectorCheckedException;
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorBase.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorBase.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorBase.java
deleted file mode 100644
index 28070dd..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorBase.java
+++ /dev/null
@@ -1,296 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf;
-
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.ocf.ffdc.PropertyServerException;
-import org.apache.atlas.ocf.properties.AdditionalProperties;
-import org.apache.atlas.ocf.properties.ConnectedAssetProperties;
-import org.apache.atlas.ocf.properties.Connection;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.UUID;
-
-/**
- * The ConnectorBase is an implementation of the Connector interface.
- *
- * Connectors are client-side interfaces to assets such as data stores, data sets, APIs, analytical functions.
- * They handle the communication with the server that hosts the assets, along with the communication with the
- * metadata server to serve up metadata about the assets, and support for an audit log for the caller to log its
- * activity.
- *
- * Each connector implementation is paired with a connector provider.  The connector provider is the factory for
- * connector instances.
- *
- * The Connector interface defines that a connector instance should be able to return a unique
- * identifier, a connection object and a metadata properties object for its connected asset.
- * These are supplied to the connector during its initialization.
- *
- * The ConnectorBase base class implements all of the methods required by the Connector interface.
- * Each specific implementation of a connector then extends this interface to add the methods to work with the
- * particular type of asset it supports.  For example, a JDBC connector would add the standard JDBC SQL interface, the
- * OMRS Connectors add the metadata repository management APIs...
- */
-public abstract class ConnectorBase extends Connector
-{
-    protected String                   connectorInstanceId      = null;
-    protected Connection               connection               = null;
-    protected ConnectedAssetProperties connectedAssetProperties = null;
-    protected boolean                  isActive                 = false;
-
-    /*
-     * Secured properties are protected properties from the connection.  They are retrieved as a protected
-     * variable to allow subclasses of ConnectorBase to access them.
-     */
-    protected AdditionalProperties       securedProperties = null;
-
-    private static final int      hashCode = UUID.randomUUID().hashCode();
-    private static final Logger   log = LoggerFactory.getLogger(ConnectorBase.class);
-
-    /**
-     * Typical Constructor - Connectors should always have a constructor requiring no parameters and perform
-     * initialization in the initialize method.
-     */
-    public  ConnectorBase()
-    {
-        /*
-         * Nothing to do - real initialization happens in the initialize() method.
-         * This pattern is used to make it possible for ConnectorBrokerBase to support the dynamic loading and
-         * instantiation of arbitrary connector instances without needing to know the specifics of their constructor
-         * methods
-         */
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("New Connector Requested");
-        }
-    }
-
-
-    /**
-     * Call made by the ConnectorProvider to initialize the Connector with the base services.
-     *
-     * @param connectorInstanceId - unique id for the connector instance - useful for messages etc
-     * @param connection - POJO for the configuration used to create the connector.
-     */
-    public void initialize(String                    connectorInstanceId,
-                           Connection                connection)
-    {
-        this.connectorInstanceId = connectorInstanceId;
-        this.connection = connection;
-
-        /*
-         * Set up the secured properties
-         */
-        ProtectedConnection  protectedConnection = new ProtectedConnection(connection);
-        this.securedProperties = protectedConnection.getSecuredProperties();
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("New Connector initialized: " + connectorInstanceId + ", " + connection.getConnectionName());
-        }
-    }
-
-
-    /**
-     * Returns the unique connector instance id that assigned to the connector instance when it was created.
-     * It is useful for error and audit messages.
-     *
-     * @return guid for the connector instance
-     */
-    public String getConnectorInstanceId()
-    {
-        return connectorInstanceId;
-    }
-
-
-    /**
-     * Returns the connection object that was used to create the connector instance.  Its contents are never refreshed
-     * during the lifetime of the connector instance, even if the connection information is updated or removed
-     * from the originating metadata repository.
-     *
-     * @return connection object
-     */
-    public Connection  getConnection()
-    {
-        return connection;
-    }
-
-
-    /**
-     * Set up the connected asset properties object.  This provides the known metadata properties stored in one or more
-     * metadata repositories.  The properties are populated whenever getConnectedAssetProperties() is called.
-     *
-     * @param connectedAssetProperties - properties of the connected asset
-     */
-    public void initializeConnectedAssetProperties(ConnectedAssetProperties connectedAssetProperties)
-    {
-        this.connectedAssetProperties = connectedAssetProperties;
-    }
-
-
-    /**
-     * Returns the properties that contain the metadata for the asset.  The asset metadata is retrieved from the
-     * metadata repository and cached in the ConnectedAssetProperties object each time the getConnectedAssetProperties
-     * method is requested by the caller.   Once the ConnectedAssetProperties object has the metadata cached, it can be
-     * used to access the asset property values many times without a return to the metadata repository.
-     * The cache of metadata can be refreshed simply by calling this getConnectedAssetProperties() method again.
-     *
-     * @return ConnectedAssetProperties - connected asset properties
-     * @throws PropertyServerException - indicates a problem retrieving properties from a metadata repository
-     */
-    public ConnectedAssetProperties getConnectedAssetProperties() throws PropertyServerException
-    {
-        if (log.isDebugEnabled())
-        {
-            log.debug("ConnectedAssetProperties requested: " + connectorInstanceId + ", " + connection.getConnectionName());
-        }
-
-        if (connectedAssetProperties != null)
-        {
-            connectedAssetProperties.refresh();
-        }
-
-        return connectedAssetProperties;
-    }
-
-
-    /**
-     * Indicates that the connector is completely configured and can begin processing.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public void start() throws ConnectorCheckedException
-    {
-        isActive = true;
-    }
-
-
-    /**
-     * Free up any resources held since the connector is no longer needed.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public  void disconnect() throws ConnectorCheckedException
-    {
-        isActive = false;
-    }
-
-
-    /**
-     * Return a flag indicating whether the connector is active.  This means it has been started and not yet
-     * disconnected.
-     *
-     * @return isActive flag
-     */
-    public boolean isActive()
-    {
-        return isActive;
-    }
-
-
-    /**
-     * Provide a common implementation of hashCode for all OCF Connector objects.  The UUID is unique and
-     * is randomly assigned and so its hashCode is as good as anything to describe the hash code of the connector
-     * object.
-     *
-     * @return random UUID as hashcode
-     */
-    public int hashCode()
-    {
-        return hashCode;
-    }
-
-
-    /**
-     * Provide a common implementation of equals for all OCF Connector Provider objects.  The UUID is unique and
-     * is randomly assigned and so its hashCode is as good as anything to evaluate the equality of the connector
-     * provider object.
-     *
-     * @param object - object to test
-     * @return boolean flag
-     */
-    @Override
-    public boolean equals(Object object)
-    {
-        if (this == object)
-        {
-            return true;
-        }
-        if (object == null || getClass() != object.getClass())
-        {
-            return false;
-        }
-
-        ConnectorBase that = (ConnectorBase) object;
-
-        if (connectorInstanceId != null ? !connectorInstanceId.equals(that.connectorInstanceId) : that.connectorInstanceId != null)
-        {
-            return false;
-        }
-        if (connection != null ? !connection.equals(that.connection) : that.connection != null)
-        {
-            return false;
-        }
-        return connectedAssetProperties != null ? connectedAssetProperties.equals(that.connectedAssetProperties) : that.connectedAssetProperties == null;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "ConnectorBase{" +
-                "connectorInstanceId='" + connectorInstanceId + '\'' +
-                ", connection=" + connection +
-                ", connectedAssetProperties=" + connectedAssetProperties +
-                '}';
-    }
-
-    private class ProtectedConnection extends Connection
-    {
-        private ProtectedConnection(Connection templateConnection)
-        {
-            super(templateConnection);
-        }
-
-        /**
-         * Return a copy of the secured properties.  Null means no secured properties are available.
-         * This method is protected so only OCF (or subclasses) can access them.  When Connector is passed to calling
-         * OMAS, the secured properties are not available.
-         *
-         * @return secured properties - typically user credentials for the connection
-         */
-        protected AdditionalProperties getSecuredProperties()
-        {
-            if (super.securedProperties == null)
-            {
-                return securedProperties;
-            }
-            else
-            {
-                return new AdditionalProperties(super.getParentAsset(), securedProperties);
-            }
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorBroker.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorBroker.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorBroker.java
deleted file mode 100644
index 18fec9a..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorBroker.java
+++ /dev/null
@@ -1,357 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf;
-
-import org.apache.atlas.ocf.ffdc.*;
-import org.apache.atlas.ocf.properties.Connection;
-import org.apache.atlas.ocf.properties.ConnectorType;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.UUID;
-
-/**
- * The ConnectorBroker is a generic factory for Open Connector Framework (OCF) Connectors.
- * The OCF provides a default implementation because all of the implementation that is specific to a
- * particular type of connector is delegated to the connector provider specified in the connection.
- */
-public class ConnectorBroker
-{
-    private static final Logger   log = LoggerFactory.getLogger(ConnectorBroker.class);
-    private final        int      hashCode = UUID.randomUUID().hashCode();
-
-
-    /**
-     * Typical constructor
-     */
-    public ConnectorBroker()
-    {
-        /* Nothing to do */
-    }
-
-
-    /**
-     * Creates a new instance of a connector using the name of the connector provider in the supplied connection.
-     *
-     * @param connection - properties for the connector and connector provider.
-     * @return new connector instance.
-     * @throws ConnectionCheckedException - an error with the connection.
-     * @throws ConnectorCheckedException - an error initializing the connector.
-     */
-    public Connector getConnector(Connection connection) throws ConnectionCheckedException, ConnectorCheckedException
-    {
-        ConnectorProvider    connectorProvider = null;
-        Connector            connectorInstance = null;
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("==> ConnectorBroker.getConnector()");
-        }
-
-        if (connection == null)
-        {
-            /*
-             * It is not possible to create a connector without a connection.
-             */
-            OCFErrorCode  errorCode = OCFErrorCode.NULL_CONNECTION;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 "getConnector",
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction());
-        }
-
-
-        /*
-         * Within the connection is a structure called the connector type.  This defines the factory for a new
-         * connector instance.  This factory is called the Connector Provider.
-         */
-        ConnectorType       requestedConnectorType = connection.getConnectorType();
-
-        if (requestedConnectorType == null)
-        {
-            /*
-             * It is not possible to create a connector without a connector type since it
-             * holds the name of the connector provider's Java class.  Build an exception.
-             */
-            OCFErrorCode  errorCode = OCFErrorCode.NULL_CONNECTOR_TYPE;
-            String        connectionName = connection.getConnectionName();
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(connectionName);
-
-            throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 "getConnector",
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction());
-        }
-
-
-        /*
-         * The connection has a valid connector type so the next step is to extract the class name for the
-         * connector provider.  This is the specialized factory for the connector.
-         */
-        String    connectorProviderClassName = requestedConnectorType.getConnectorProviderClassName();
-
-        if (connectorProviderClassName == null)
-        {
-            /*
-             * The connector provider class name is blank so it is not possible to create the
-             * connector provider.  Throw an exception.
-             */
-            OCFErrorCode  errorCode = OCFErrorCode.NULL_CONNECTOR_PROVIDER;
-            String        connectionName = connection.getConnectionName();
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(connectionName);
-
-            throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 "getConnector",
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction());
-        }
-
-
-        /*
-         * Extract the class for the connector provider and then create a connector provider object.
-         * These actions may reveal that the class is not known to local JVM (ClassNotFound) or
-         * the class is there but its dependencies are not (LinkageError) or it is there and loads
-         * but it is not a connector provider (ClassCastException).  Each of these error conditions
-         * results in a connection error exception that hopefully guides the consumer to correct
-         * the config and/or setup error.
-         */
-        try
-        {
-            Class      connectorProviderClass = Class.forName(connectorProviderClassName);
-            Object     potentialConnectorProvider = connectorProviderClass.newInstance();
-
-            connectorProvider = (ConnectorProvider)potentialConnectorProvider;
-        }
-        catch (ClassNotFoundException classException)
-        {
-            /*
-             * Wrap exception in the ConnectionCheckedException with a suitable message
-             */
-            OCFErrorCode  errorCode = OCFErrorCode.UNKNOWN_CONNECTOR_PROVIDER;
-            String        connectionName = connection.getConnectionName();
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(connectorProviderClassName, connectionName);
-
-            throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 "getConnector",
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction(),
-                                                 classException);
-        }
-        catch (LinkageError   linkageError)
-        {
-            /*
-             * Wrap linkage error in an exception
-             */
-            OCFErrorCode  errorCode = OCFErrorCode.INCOMPLETE_CONNECTOR_PROVIDER;
-            String        connectionName = connection.getConnectionName();
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(connectorProviderClassName, connectionName);
-
-            throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 "getConnector",
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction(),
-                                                 linkageError);
-        }
-        catch (ClassCastException  castException)
-        {
-            /*
-             * Wrap class cast exception in a connection exception with error message to say that
-             */
-            OCFErrorCode  errorCode = OCFErrorCode.NOT_CONNECTOR_PROVIDER;
-            String        connectionName = connection.getConnectionName();
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(connectorProviderClassName, connectionName);
-
-            throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 "getConnector",
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction(),
-                                                  castException);
-        }
-        catch (Throwable unexpectedSomething)
-        {
-            /*
-             * Wrap throwable in a connection exception with error message to say that there was a problem with
-             * the connector provider.
-             */
-            OCFErrorCode  errorCode = OCFErrorCode.INVALID_CONNECTOR_PROVIDER;
-            String        connectionName = connection.getConnectionName();
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(connectorProviderClassName, connectionName);
-
-            throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 "getConnector",
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction(),
-                                                 unexpectedSomething);
-        }
-
-
-        /*
-         * At this point we hopefully have a valid connector provider so all that is left to do is call
-         * it to get the connector instance.  This is done in a different try ... catch block from the
-         * instantiation of the connector provider so we can separate errors in the Connection from
-         * errors generated in the Connector Provider, since both classes are
-         * potentially code from a source outside of Apache Atlas.
-         */
-        try
-        {
-            connectorInstance = connectorProvider.getConnector(connection);
-        }
-        catch (ConnectionCheckedException connectionError)
-        {
-            /*
-             * The connector provider has already provided first failure data capture in a ConnectionCheckedException.
-             * This exception is rethrown to the caller.
-             */
-            throw connectionError;
-        }
-        catch (ConnectorCheckedException connectorError)
-        {
-            /*
-             * The connector provider has already provided first failure data capture in a ConnectorCheckedException.
-             * This exception is rethrown to the caller.
-             */
-            throw connectorError;
-        }
-        catch (Throwable  unexpectedSomething)
-        {
-            /*
-             * The connector provider threw an unexpected runtime exception or error.  This is wrapped in a
-             * ConnectorError and thrown to caller.
-             */
-            OCFErrorCode errorCode = OCFErrorCode.CAUGHT_EXCEPTION;
-            String               errorMessage = errorCode.getErrorMessageId()
-                                              + errorCode.getFormattedErrorMessage();
-
-            throw new ConnectorCheckedException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              "getConnector",
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction(),
-                                              unexpectedSomething);
-        }
-
-
-        /*
-         * If the connector provider has returned a null connector with no exception then raise a generic exception
-         * since something has gone wrong.
-         */
-        if (connectorInstance == null)
-        {
-            /*
-             * Build and throw exception.
-             */
-            OCFErrorCode errorCode = OCFErrorCode.NULL_CONNECTOR;
-            String       errorMessage = errorCode.getErrorMessageId()
-                                      + errorCode.getFormattedErrorMessage(connection.getConnectionName());
-
-            throw new OCFRuntimeException(errorCode.getHTTPErrorCode(),
-                                          this.getClass().getName(),
-                                          "getConnector",
-                                          errorMessage,
-                                          errorCode.getSystemAction(),
-                                          errorCode.getUserAction());
-        }
-
-        /*
-         * If we reach this point the connector provider has returned a connector that can be passed to the caller.
-         */
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("New connector returned: " + connectorInstance.getConnectorInstanceId());
-            log.debug("Using Connection: " + connectorInstance.getConnection().getQualifiedName() + "(" + connectorInstance.getConnection().getDisplayName() + ")");
-            log.debug("<== ConnectorBroker.getConnector()");
-        }
-
-        return connectorInstance;
-    }
-
-
-    /**
-     * Provide an implementation of hashCode for all OCF Connector Broker objects.  The UUID is unique and
-     * is randomly assigned and so its hashCode is as good as anything to describe the hash code of the connector
-     * broker object.
-     */
-    public int hashCode()
-    {
-        return hashCode;
-    }
-
-
-    /**
-     * Provide a common implementation of equals for all OCF Connector Broker objects.  The UUID is unique and
-     * is randomly assigned and so its hashCode is as good as anything to evaluate the equality of the connector
-     * broker object.
-     *
-     * @param object - object to test
-     * @return boolean flag
-     */
-    @Override
-    public boolean equals(Object object)
-    {
-        if (this == object)
-        {
-            return true;
-        }
-        if (object == null || getClass() != object.getClass())
-        {
-            return false;
-        }
-
-        ConnectorBroker that = (ConnectorBroker) object;
-
-        return hashCode == that.hashCode;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "ConnectorBroker{" +
-                "hashCode=" + hashCode +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorProvider.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorProvider.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorProvider.java
deleted file mode 100644
index 020b79c..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorProvider.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf;
-
-import org.apache.atlas.ocf.ffdc.ConnectionCheckedException;
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.ocf.properties.Connection;
-
-/**
- * The ConnectorProvider is a formal plug-in interface for the Open Connector Framework (OCF).  It provides a factory
- * class for a specific type of connector.  Therefore is it typical to find the ConnectorProvider and Connector
- * implementation written as a pair.
- *
- * The ConnectorProvider uses the properties stored in a Connection object to initialize itself and its Connector instances.
- * the Connection object has the endpoint properties for the server that the connector must communicate with
- * as well as optional additional properties that may be needed for a particular type of connector.
- *
- * It is suggested that the ConnectorProvider validates the contents of the connection and throws
- * ConnectionErrorExceptions if the connection has missing or invalid properties.  If there are errors detected in the
- * instantiations or initialization of the connector, then these should be thrown as ConnectorErrorExceptions.
- */
-public abstract class ConnectorProvider
-{
-    /**
-     * Creates a new instance of a connector based on the information in the supplied connection.
-     *
-     * @param connection - connection that should have all of the properties needed by the Connector Provider
-     *                   to create a connector instance.
-     * @return Connector - instance of the connector.
-     * @throws ConnectionCheckedException - if there are missing or invalid properties in the connection
-     * @throws ConnectorCheckedException - if there are issues instantiating or initializing the connector
-     */
-    public abstract Connector getConnector(Connection connection) throws ConnectionCheckedException, ConnectorCheckedException;
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorProviderBase.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorProviderBase.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorProviderBase.java
deleted file mode 100644
index 4e0762a..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ConnectorProviderBase.java
+++ /dev/null
@@ -1,323 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf;
-
-import org.apache.atlas.ocf.properties.Connection;
-
-import org.apache.atlas.ocf.ffdc.ConnectionCheckedException;
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.ocf.ffdc.OCFErrorCode;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.UUID;
-
-/**
- * ConnectorProviderBase is a base class for a new connector provider.  It manages all of the class loading
- * for subclass implementations of the connector provider along with the generation of new connector guids.
- *
- * ConnectorProviderBase creates a connector instance with the class name from the private variable called
- * connectorClassName.  This class name is initialized to null.  If the getConnector method is called when
- * the connectorClassName is null, it throws ConnectorCheckedException.
- * This is its default behaviour.
- *
- * To use the ConnectorProviderBase, create a new class that extends the ConnectorProviderBase class
- * and in the constructor call super.setConnectorClassName("your connector's class name");
- */
-public abstract class ConnectorProviderBase extends ConnectorProvider
-{
-    private String                connectorClassName = null;
-
-    private final int             hashCode = UUID.randomUUID().hashCode();
-
-    private static final Logger   log = LoggerFactory.getLogger(ConnectorProviderBase.class);
-
-    /**
-     * Typical constructor
-     */
-    public ConnectorProviderBase ()
-    {
-        /*
-         * Nothing to do
-         */
-    }
-
-
-    /**
-     * Each connector has a guid to make it easier to correlate log messages from the various components that
-     * serve it.  It uses a type 4 (pseudo randomly generated) UUID.
-     * The UUID is generated using a cryptographically strong pseudo random number generator.
-     *
-     * @return guid for a new connector instance
-     */
-    protected String  getNewConnectorGUID()
-    {
-        UUID     newUUID = UUID.randomUUID();
-
-        return newUUID.toString();
-    }
-
-
-    /**
-     * Return the class name for the connector that the connector provider generates.
-     *
-     * @return connectorClassName - will be null initially.
-     */
-    public  String   getConnectorClassName()
-    {
-        return connectorClassName;
-    }
-
-
-    /**
-     * Update the class name for this connector provider.
-     *
-     * @param newConnectorClassName - this must be a valid Java class name for a class that implements the
-     *                              org.apache.atlas.ocf.Connector interface.
-     */
-    public  void setConnectorClassName(String   newConnectorClassName)
-    {
-        if (log.isDebugEnabled())
-        {
-            log.debug("Connector class name set: " + newConnectorClassName);
-        }
-
-        connectorClassName = newConnectorClassName;
-    }
-
-
-    /**
-     * Creates a new instance of a connector based on the information in the supplied connection.
-     *
-     * @param connection - connection that should have all of the properties needed by the Connector Provider
-     *                   to create a connector instance.
-     * @return Connector - instance of the connector.
-     * @throws ConnectionCheckedException - if there are missing or invalid properties in the connection
-     * @throws ConnectorCheckedException - if there are issues instantiating or initializing the connector
-     */
-    public Connector getConnector(Connection    connection) throws ConnectionCheckedException, ConnectorCheckedException
-    {
-        Connector                connector = null;
-        String                   guid = null;
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("getConnector called");
-        }
-
-        if (connection == null)
-        {
-            /*
-             * It is not possible to create a connector without a connection.
-             */
-            OCFErrorCode   errorCode = OCFErrorCode.NULL_CONNECTION;
-            String         errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 "getConnector",
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction());
-        }
-
-
-        /*
-         * Validate that a subclass (or external class) has set up the class name of the connector.
-         */
-        if (connectorClassName == null)
-        {
-            /*
-             * This instance of the connector provider is not initialised with the connector's class name so
-             * throw an exception because a connector can not be generated.
-             */
-            OCFErrorCode   errorCode = OCFErrorCode.NULL_CONNECTOR_CLASS;
-            String         errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 "getConnector",
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction());
-        }
-
-
-        /*
-         * Generate a new GUID for the connector.
-         */
-        guid = getNewConnectorGUID();
-
-
-        /*
-         * Create a new instance of the connector and initialize it with the guid and connection.
-         */
-        try
-        {
-            Class      connectorClass = Class.forName(connectorClassName);
-            Object     potentialConnector = connectorClass.newInstance();
-
-            connector = (Connector)potentialConnector;
-            connector.initialize(guid, connection);
-        }
-        catch (ClassNotFoundException classException)
-        {
-            /*
-             * Wrap exception in the ConnectionCheckedException with a suitable message
-             */
-            OCFErrorCode  errorCode = OCFErrorCode.UNKNOWN_CONNECTOR;
-            String        connectionName = connection.getConnectionName();
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(connectorClassName, connectionName);
-
-            throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 "getConnector",
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction(),
-                                                 classException);
-        }
-        catch (LinkageError   linkageError)
-        {
-            /*
-             * Wrap linkage error in an exception
-             */
-            OCFErrorCode  errorCode = OCFErrorCode.INCOMPLETE_CONNECTOR;
-            String        connectionName = connection.getConnectionName();
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(connectorClassName, connectionName);
-
-            throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 "getConnector",
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction(),
-                                                 linkageError);
-        }
-        catch (ClassCastException  castException)
-        {
-            /*
-             * Wrap class cast exception in a connection exception with error message to say that
-             */
-            OCFErrorCode  errorCode = OCFErrorCode.NOT_CONNECTOR;
-            String        connectionName = connection.getConnectionName();
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(connectorClassName, connectionName);
-
-            throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 "getConnector",
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction(),
-                                                 castException);
-        }
-        catch (Throwable unexpectedSomething)
-        {
-            /*
-             * Wrap throwable in a connection exception with error message to say that there was a problem with
-             * the connector implementation.
-             */
-            OCFErrorCode     errorCode = OCFErrorCode.INVALID_CONNECTOR;
-            String           connectionName = connection.getConnectionName();
-            String           errorMessage = errorCode.getErrorMessageId()
-                                          + errorCode.getFormattedErrorMessage(connectorClassName, connectionName);
-
-            throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 "getConnector",
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction(),
-                                                 unexpectedSomething);
-        }
-
-
-        /*
-         * Return the initialized connector ready for use.
-         */
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("getConnector returns: " + connector.getConnectorInstanceId() + ", " + connection.getConnectionName());
-        }
-
-        return connector;
-    }
-
-
-    /**
-     * Provide a common implementation of hashCode for all OCF Connector Provider objects.  The UUID is unique and
-     * is randomly assigned and so its hashCode is as good as anything to describe the hash code of the properties
-     * object.
-     *
-     * @return random UUID as hashcode
-     */
-    public int hashCode()
-    {
-        return hashCode;
-    }
-
-
-    /**
-     * Provide a common implementation of equals for all OCF Connector Provider objects.  The UUID is unique and
-     * is randomly assigned and so its hashCode is as good as anything to evaluate the equality of the connector
-     * provider object.
-     *
-     * @param object - object to test
-     * @return boolean flag
-     */
-    @Override
-    public boolean equals(Object object)
-    {
-        if (this == object)
-        {
-            return true;
-        }
-        if (object == null || getClass() != object.getClass())
-        {
-            return false;
-        }
-
-        ConnectorProviderBase that = (ConnectorProviderBase) object;
-
-        if (hashCode != that.hashCode)
-        {
-            return false;
-        }
-
-        return connectorClassName != null ? connectorClassName.equals(that.connectorClassName) : that.connectorClassName == null;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "ConnectorProviderBase{" +
-                "connectorClassName='" + connectorClassName + '\'' +
-                ", hashCode=" + hashCode +
-                '}';
-    }
-}
\ No newline at end of file


[30/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSMetadataCollection.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSMetadataCollection.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSMetadataCollection.java
deleted file mode 100644
index 0ab1a4e..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSMetadataCollection.java
+++ /dev/null
@@ -1,4913 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.inmemory.repositoryconnector;
-
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.*;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollection;
-import org.apache.atlas.omrs.metadatacollection.properties.MatchCriteria;
-import org.apache.atlas.omrs.metadatacollection.properties.SequencingOrder;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.*;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.*;
-
-import java.util.*;
-
-/**
- * The InMemoryOMRSMetadataCollection represents a metadata repository that supports an in-memory repository.
- * Requests to this metadata collection work with the hashmaps used to manage metadata types and instances.
- */
-public class InMemoryOMRSMetadataCollection extends OMRSMetadataCollection
-{
-    private InMemoryOMRSMetadataStore         repositoryStore = new InMemoryOMRSMetadataStore();
-
-
-    /**
-     * Constructor ensures the metadata collection is linked to its connector and knows its metadata collection Id.
-     *
-     * @param parentConnector - connector that this metadata collection supports.  The connector has the information
-     *                        to call the metadata repository.
-     * @param repositoryName - name of the repository - used for logging.
-     * @param repositoryHelper - class used to build type definitions and instances.
-     * @param repositoryValidator - class used to validate type definitions and instances.
-     * @param metadataCollectionId - unique Identifier of the metadata collection Id.
-     */
-    public InMemoryOMRSMetadataCollection(InMemoryOMRSRepositoryConnector parentConnector,
-                                          String                          repositoryName,
-                                          OMRSRepositoryHelper            repositoryHelper,
-                                          OMRSRepositoryValidator         repositoryValidator,
-                                          String                          metadataCollectionId)
-    {
-        /*
-         * The metadata collection Id is the unique identifier for the metadata collection.  It is managed by the super class.
-         */
-        super(parentConnector, repositoryName, metadataCollectionId, repositoryHelper, repositoryValidator);
-
-        /*
-         * Set up the repository name in the repository store
-         */
-        this.repositoryStore.setRepositoryName(repositoryName);
-    }
-
-
-    /* ======================================================================
-     * Group 1: Confirm the identity of the metadata repository being called.
-     */
-
-    /**
-     * Returns the identifier of the metadata repository.  This is the identifier used to register the
-     * metadata repository with the metadata repository cohort.  It is also the identifier used to
-     * identify the home repository of a metadata instance.
-     *
-     * @return String - metadata collection id.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     */
-    public String      getMetadataCollectionId() throws RepositoryErrorException
-    {
-        final String methodName = "getMetadataCollectionId";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        /*
-         * Perform operation
-         */
-        return super.metadataCollectionId;
-    }
-
-
-    /* ==============================
-     * Group 2: Working with typedefs
-     */
-
-
-    /**
-     * Returns the list of different types of metadata organized into two groups.  The first are the
-     * attribute type definitions (AttributeTypeDefs).  These provide types for properties in full
-     * type definitions.  Full type definitions (TypeDefs) describe types for entities, relationships
-     * and classifications.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @return TypeDefGalleryResponse - List of different categories of type definitions.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDefGallery getAllTypes(String   userId) throws RepositoryErrorException,
-                                                              UserNotAuthorizedException
-    {
-        final String                       methodName = "getAllTypes";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-
-        /*
-         * Perform operation
-         */
-        TypeDefGallery         typeDefGallery    = new TypeDefGallery();
-        List<AttributeTypeDef> attributeTypeDefs = repositoryStore.getAttributeTypeDefs();
-        List<TypeDef>          typeDefs          = repositoryStore.getTypeDefs();
-
-        typeDefGallery.setAttributeTypeDefs(attributeTypeDefs);
-        typeDefGallery.setTypeDefs(typeDefs);
-
-        return typeDefGallery;
-    }
-
-
-    /**
-     * Returns a list of type definitions that have the specified name.  Type names should be unique.  This
-     * method allows wildcard character to be included in the name.  These are * (asterisk) for an
-     * arbitrary string of characters and ampersand for an arbitrary character.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - name of the TypeDefs to return (including wildcard characters).
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the name of the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDefGallery findTypesByName(String userId,
-                                          String name) throws InvalidParameterException,
-                                                              RepositoryErrorException,
-                                                              UserNotAuthorizedException
-    {
-        final String   methodName        = "findTypesByName";
-        final String   nameParameterName = "name";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeName(repositoryName, nameParameterName, name, methodName);
-
-        /*
-         * Perform operation
-         */
-        // todo
-        return repositoryHelper.getActiveTypesByWildCardName(repositoryName, name);
-    }
-
-
-    /**
-     * Returns all of the TypeDefs for a specific category.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param category - enum value for the category of TypeDef to return.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the TypeDefCategory is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> findTypeDefsByCategory(String          userId,
-                                                TypeDefCategory category) throws InvalidParameterException,
-                                                                                 RepositoryErrorException,
-                                                                                 UserNotAuthorizedException
-    {
-        final String methodName            = "findTypeDefsByCategory";
-        final String categoryParameterName = "category";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefCategory(repositoryName, categoryParameterName, category, methodName);
-
-        /*
-         * Perform operation
-         */
-        List<TypeDef> allTypes         = repositoryStore.getTypeDefs();
-        List<TypeDef> typesForCategory = new ArrayList<>();
-
-        if (! allTypes.isEmpty())
-        {
-            for (TypeDef typeDef : allTypes)
-            {
-                if (typeDef != null)
-                {
-                    if (typeDef.getCategory() == category)
-                    {
-                        typesForCategory.add(typeDef);
-                    }
-                }
-            }
-        }
-
-        if (typesForCategory.isEmpty())
-        {
-            typesForCategory = null;
-        }
-
-        return typesForCategory;
-    }
-
-
-    /**
-     * Returns all of the AttributeTypeDefs for a specific category.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param category - enum value for the category of an AttributeTypeDef to return.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the TypeDefCategory is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<AttributeTypeDef> findAttributeTypeDefsByCategory(String                   userId,
-                                                                  AttributeTypeDefCategory category) throws InvalidParameterException,
-                                                                                                            RepositoryErrorException,
-                                                                                                            UserNotAuthorizedException
-    {
-        final String methodName            = "findAttributeTypeDefsByCategory";
-        final String categoryParameterName = "category";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDefCategory(repositoryName, categoryParameterName, category, methodName);
-
-        /*
-         * Perform operation
-         */
-        List<AttributeTypeDef> allTypes         = repositoryStore.getAttributeTypeDefs();
-        List<AttributeTypeDef> typesForCategory = new ArrayList<>();
-
-        if (! allTypes.isEmpty())
-        {
-            for (AttributeTypeDef attributeTypeDef : allTypes)
-            {
-                if (attributeTypeDef != null)
-                {
-                    if (attributeTypeDef.getCategory() == category)
-                    {
-                        typesForCategory.add(attributeTypeDef);
-                    }
-                }
-            }
-        }
-
-        if (typesForCategory.isEmpty())
-        {
-            typesForCategory = null;
-        }
-
-        return typesForCategory;
-    }
-
-
-    /**
-     * Return the TypeDefs that have the properties matching the supplied match criteria.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param matchCriteria - TypeDefProperties - a list of property names and values.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the matchCriteria is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> findTypeDefsByProperty(String            userId,
-                                                TypeDefProperties matchCriteria) throws InvalidParameterException,
-                                                                                        RepositoryErrorException,
-                                                                                        UserNotAuthorizedException
-    {
-        final String  methodName                 = "findTypeDefsByProperty";
-        final String  matchCriteriaParameterName = "matchCriteria";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateMatchCriteria(repositoryName, matchCriteriaParameterName, matchCriteria, methodName);
-
-        /*
-         * Perform operation
-         */
-        List<TypeDef> allTypes             = repositoryStore.getTypeDefs();
-        List<TypeDef> typesMatchProperties = new ArrayList<>();
-        List<String>  propertyNames        = matchCriteria.getTypeDefProperties();
-
-        if (! allTypes.isEmpty())
-        {
-            for (TypeDef typeDef : allTypes)
-            {
-                if (typeDef != null)
-                {
-                    List<TypeDefAttribute>  typeDefAttributes = typeDef.getPropertiesDefinition();
-                    boolean                 allPropertiesMatch = true;
-
-                    for (String propertyName : propertyNames)
-                    {
-                        boolean  thisPropertyMatches = false;
-
-                        if (propertyName != null)
-                        {
-                            for (TypeDefAttribute  attribute : typeDefAttributes)
-                            {
-                                if (attribute != null)
-                                {
-                                    if (propertyName.equals(attribute.getAttributeName()))
-                                    {
-                                        thisPropertyMatches = true;
-                                        break;
-                                    }
-                                }
-                            }
-
-                            if (! thisPropertyMatches)
-                            {
-                                allPropertiesMatch = false;
-                                break;
-                            }
-                        }
-                    }
-
-                    if (allPropertiesMatch)
-                    {
-                        typesMatchProperties.add(typeDef);
-                    }
-                }
-            }
-        }
-
-        if (typesMatchProperties.isEmpty())
-        {
-            typesMatchProperties = null;
-        }
-
-        return typesMatchProperties;
-    }
-
-
-    /**
-     * Return the types that are linked to the elements from the specified standard.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param standard - name of the standard - null means any.
-     * @param organization - name of the organization - null means any.
-     * @param identifier - identifier of the element in the standard - null means any.
-     * @return TypeDefs list - each entry in the list contains a typedef.  This is is a structure
-     * describing the TypeDef's category and properties.
-     * @throws InvalidParameterException - all attributes of the external id are null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> findTypesByExternalID(String    userId,
-                                                String    standard,
-                                                String    organization,
-                                                String    identifier) throws InvalidParameterException,
-                                                                             RepositoryErrorException,
-                                                                             UserNotAuthorizedException
-    {
-        final String                       methodName = "findTypesByExternalID";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateExternalId(repositoryName, standard, organization, identifier, methodName);
-
-        /*
-         * Perform operation
-         */
-        List<AttributeTypeDef> attributeTypeDefs = repositoryStore.getAttributeTypeDefs();
-        List<TypeDef>          typeDefs          = repositoryStore.getTypeDefs();
-
-        List<AttributeTypeDef> matchedAttributeTypeDefs = new ArrayList<>();
-        List<TypeDef>          matchedTypeDefs          = new ArrayList<>();
-
-
-
-        // TODO Loop through the AttributeTypeDefs and TypeDefs looking for matching external IDs
-
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName, this.getClass().getName(), repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                            this.getClass().getName(),
-                                            methodName,
-                                            errorMessage,
-                                            errorCode.getSystemAction(),
-                                            errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return the TypeDefs that match the search criteria.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param searchCriteria - String - search criteria.
-     * @return TypeDefs list - each entry in the list contains a typedef.  This is is a structure
-     * describing the TypeDef's category and properties.
-     * @throws InvalidParameterException - the searchCriteria is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> searchForTypeDefs(String userId,
-                                           String searchCriteria) throws InvalidParameterException,
-                                                                         RepositoryErrorException,
-                                                                         UserNotAuthorizedException
-    {
-        final String methodName                  = "searchForTypeDefs";
-        final String searchCriteriaParameterName = "searchCriteria";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateSearchCriteria(repositoryName, searchCriteriaParameterName, searchCriteria, methodName);
-
-        /*
-         * Perform operation
-         */
-        List<TypeDef>          matchedTypeDefs   = new ArrayList<>();
-
-        for (TypeDef  typeDef : repositoryStore.getTypeDefs())
-        {
-            if (typeDef != null)
-            {
-                if (typeDef.getName().matches(searchCriteria))
-                {
-                    matchedTypeDefs.add(typeDef);
-                }
-            }
-        }
-
-        if (matchedTypeDefs.isEmpty())
-        {
-            matchedTypeDefs = null;
-        }
-
-        return matchedTypeDefs;
-    }
-
-
-    /**
-     * Return the TypeDef identified by the GUID.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique id of the TypeDef.
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - The requested TypeDef is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDef getTypeDefByGUID(String    userId,
-                                    String    guid) throws InvalidParameterException,
-                                                           RepositoryErrorException,
-                                                           TypeDefNotKnownException,
-                                                           UserNotAuthorizedException
-    {
-        final String methodName        = "getTypeDefByGUID";
-        final String guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-        TypeDef             matchedTypeDef = repositoryStore.getTypeDef(guid);
-
-        if (matchedTypeDef != null)
-        {
-            return matchedTypeDef;
-        }
-
-        OMRSErrorCode errorCode = OMRSErrorCode.TYPEDEF_ID_NOT_KNOWN;
-
-        String errorMessage = errorCode.getErrorMessageId()
-                            + errorCode.getFormattedErrorMessage(guid, guidParameterName, methodName, repositoryName);
-
-        throw new TypeDefNotKnownException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the GUID.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique id of the TypeDef
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - The requested TypeDef is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  AttributeTypeDef getAttributeTypeDefByGUID(String    userId,
-                                                       String    guid) throws InvalidParameterException,
-                                                                              RepositoryErrorException,
-                                                                              TypeDefNotKnownException,
-                                                                              UserNotAuthorizedException
-    {
-        final String methodName        = "getAttributeTypeDefByGUID";
-        final String guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-        AttributeTypeDef             matchedAttributeTypeDef = repositoryStore.getAttributeTypeDef(guid);
-
-        if (matchedAttributeTypeDef != null)
-        {
-            return matchedAttributeTypeDef;
-        }
-
-        OMRSErrorCode errorCode = OMRSErrorCode.TYPEDEF_ID_NOT_KNOWN;
-
-        String errorMessage = errorCode.getErrorMessageId()
-                            + errorCode.getFormattedErrorMessage(guid, guidParameterName, methodName, repositoryName);
-
-        throw new TypeDefNotKnownException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return the TypeDef identified by the unique name.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - String name of the TypeDef.
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the name is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDef getTypeDefByName(String    userId,
-                                    String    name) throws InvalidParameterException,
-                                                           RepositoryErrorException,
-                                                           TypeDefNotKnownException,
-                                                           UserNotAuthorizedException
-    {
-        final String  methodName = "getTypeDefByName";
-        final String  nameParameterName = "name";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeName(repositoryName, nameParameterName, name, methodName);
-
-        /*
-         * Perform operation
-         */
-        for (TypeDef  typeDef : repositoryStore.getTypeDefs())
-        {
-            if (name.equals(typeDef.getName()))
-            {
-                return typeDef;
-            }
-        }
-
-        OMRSErrorCode errorCode = OMRSErrorCode.TYPEDEF_NAME_NOT_KNOWN;
-
-        String errorMessage = errorCode.getErrorMessageId()
-                            + errorCode.getFormattedErrorMessage(name, methodName, repositoryName);
-
-        throw new TypeDefNotKnownException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the unique name.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - String name of the TypeDef.
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the name is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  AttributeTypeDef getAttributeTypeDefByName(String    userId,
-                                                       String    name) throws InvalidParameterException,
-                                                                              RepositoryErrorException,
-                                                                              TypeDefNotKnownException,
-                                                                              UserNotAuthorizedException
-    {
-        final String  methodName = "getAttributeTypeDefByName";
-        final String  nameParameterName = "name";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeName(repositoryName, nameParameterName, name, methodName);
-
-        /*
-         * Perform operation
-         */
-        for (AttributeTypeDef  attributeTypeDef : repositoryStore.getAttributeTypeDefs())
-        {
-            if (name.equals(attributeTypeDef.getName()))
-            {
-                return attributeTypeDef;
-            }
-        }
-
-        OMRSErrorCode errorCode = OMRSErrorCode.ATTRIBUTE_TYPEDEF_NAME_NOT_KNOWN;
-
-        String errorMessage = errorCode.getErrorMessageId()
-                            + errorCode.getFormattedErrorMessage(name, methodName, repositoryName);
-
-        throw new TypeDefNotKnownException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Create a collection of related types.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newTypes - TypeDefGalleryResponse structure describing the new AttributeTypeDefs and TypeDefs.
-     * @throws InvalidParameterException - the new TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefKnownException - the TypeDef is already stored in the repository.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  void addTypeDefGallery(String          userId,
-                                   TypeDefGallery  newTypes) throws InvalidParameterException,
-                                                                    RepositoryErrorException,
-                                                                    TypeDefNotSupportedException,
-                                                                    TypeDefKnownException,
-                                                                    TypeDefConflictException,
-                                                                    InvalidTypeDefException,
-                                                                    UserNotAuthorizedException
-    {
-        final String  methodName = "addTypeDefGallery";
-        final String  galleryParameterName = "newTypes";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefGallery(repositoryName, galleryParameterName, newTypes, methodName);
-
-        /*
-         * Perform operation
-         */
-        List<AttributeTypeDef>   attributeTypeDefs = newTypes.getAttributeTypeDefs();
-        List<TypeDef>            typeDefs          = newTypes.getTypeDefs();
-
-        if (attributeTypeDefs != null)
-        {
-            for (AttributeTypeDef attributeTypeDef : attributeTypeDefs)
-            {
-                this.addAttributeTypeDef(userId, attributeTypeDef);
-            }
-        }
-
-        if (typeDefs != null)
-        {
-            for (TypeDef typeDef : typeDefs)
-            {
-                this.addTypeDef(userId, typeDef);
-            }
-        }
-    }
-
-
-    /**
-     * Create a definition of a new TypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newTypeDef - TypeDef structure describing the new TypeDef.
-     * @throws InvalidParameterException - the new TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefKnownException - the TypeDef is already stored in the repository.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public void addTypeDef(String       userId,
-                           TypeDef      newTypeDef) throws InvalidParameterException,
-                                                           RepositoryErrorException,
-                                                           TypeDefNotSupportedException,
-                                                           TypeDefKnownException,
-                                                           TypeDefConflictException,
-                                                           InvalidTypeDefException,
-                                                           UserNotAuthorizedException
-    {
-        final String  methodName = "addTypeDef";
-        final String  typeDefParameterName = "newTypeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDef(repositoryName, typeDefParameterName, newTypeDef, methodName);
-        repositoryValidator.validateUnknownTypeDef(repositoryName, typeDefParameterName, newTypeDef, methodName);
-
-        /*
-         * Perform operation
-         */
-        TypeDef  existingTypeDef = repositoryStore.getTypeDef(newTypeDef.getGUID());
-
-        if (existingTypeDef != null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.TYPEDEF_ALREADY_DEFINED;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(newTypeDef.getName(),
-                                                                            newTypeDef.getGUID(),
-                                                                            repositoryName);
-
-            throw new TypeDefKnownException(errorCode.getHTTPErrorCode(),
-                                            this.getClass().getName(),
-                                            methodName,
-                                            errorMessage,
-                                            errorCode.getSystemAction(),
-                                            errorCode.getUserAction());
-        }
-
-        repositoryStore.putTypeDef(newTypeDef);
-    }
-
-
-    /**
-     * Create a definition of a new AttributeTypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newAttributeTypeDef - TypeDef structure describing the new TypeDef.
-     * @throws InvalidParameterException - the new TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefKnownException - the TypeDef is already stored in the repository.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  void addAttributeTypeDef(String             userId,
-                                     AttributeTypeDef   newAttributeTypeDef) throws InvalidParameterException,
-                                                                                    RepositoryErrorException,
-                                                                                    TypeDefNotSupportedException,
-                                                                                    TypeDefKnownException,
-                                                                                    TypeDefConflictException,
-                                                                                    InvalidTypeDefException,
-                                                                                    UserNotAuthorizedException
-    {
-        final String  methodName           = "addAttributeTypeDef";
-        final String  typeDefParameterName = "newAttributeTypeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDef(repositoryName, typeDefParameterName, newAttributeTypeDef, methodName);
-        repositoryValidator.validateUnknownAttributeTypeDef(repositoryName, typeDefParameterName, newAttributeTypeDef, methodName);
-
-        /*
-         * Perform operation
-         */
-        AttributeTypeDef  existingTypeDef = repositoryStore.getAttributeTypeDef(newAttributeTypeDef.getGUID());
-
-        if (existingTypeDef != null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.ATTRIBUTE_TYPEDEF_ALREADY_DEFINED;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(newAttributeTypeDef.getName(),
-                                                                            newAttributeTypeDef.getGUID(),
-                                                                            repositoryName);
-
-            throw new TypeDefKnownException(errorCode.getHTTPErrorCode(),
-                                            this.getClass().getName(),
-                                            methodName,
-                                            errorMessage,
-                                            errorCode.getSystemAction(),
-                                            errorCode.getUserAction());
-        }
-
-        repositoryStore.putAttributeTypeDef(newAttributeTypeDef);
-    }
-
-
-    /**
-     * Verify that a definition of a TypeDef is either new - or matches the definition already stored.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param typeDef - TypeDef structure describing the TypeDef to test.
-     * @return boolean - true means the TypeDef matches the local definition - false means the TypeDef is not known.
-     * @throws InvalidParameterException - the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public boolean verifyTypeDef(String       userId,
-                                 TypeDef      typeDef) throws InvalidParameterException,
-                                                              RepositoryErrorException,
-                                                              TypeDefNotSupportedException,
-                                                              TypeDefConflictException,
-                                                              InvalidTypeDefException,
-                                                              UserNotAuthorizedException
-    {
-        final String  methodName           = "verifyTypeDef";
-        final String  typeDefParameterName = "typeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDef(repositoryName, typeDefParameterName, typeDef, methodName);
-
-        /*
-         * Perform operation
-         */
-        TypeDef  existingTypeDef = repositoryStore.getTypeDef(typeDef.getGUID());
-
-        // todo need to validate that the supplied type def matches the stored one
-
-        if (existingTypeDef == null)
-        {
-            return false;
-        }
-        else
-        {
-            return true;
-        }
-    }
-
-
-    /**
-     * Verify that a definition of an AttributeTypeDef is either new - or matches the definition already stored.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param attributeTypeDef - TypeDef structure describing the TypeDef to test.
-     * @return boolean - true means the TypeDef matches the local definition - false means the TypeDef is not known.
-     * @throws InvalidParameterException - the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  boolean verifyAttributeTypeDef(String            userId,
-                                           AttributeTypeDef  attributeTypeDef) throws InvalidParameterException,
-                                                                                      RepositoryErrorException,
-                                                                                      TypeDefNotSupportedException,
-                                                                                      TypeDefConflictException,
-                                                                                      InvalidTypeDefException,
-                                                                                      UserNotAuthorizedException
-    {
-        final String  methodName           = "verifyAttributeTypeDef";
-        final String  typeDefParameterName = "attributeTypeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDef(repositoryName, typeDefParameterName, attributeTypeDef, methodName);
-
-        /*
-         * Perform operation
-         */
-        AttributeTypeDef  existingAttributeTypeDef = repositoryStore.getAttributeTypeDef(attributeTypeDef.getGUID());
-
-        // todo need to validate that the supplied attribute type def matches the stored one
-
-        if (existingAttributeTypeDef == null)
-        {
-            return false;
-        }
-        else
-        {
-            return true;
-        }
-    }
-
-
-    /**
-     * Update one or more properties of the TypeDef.  The TypeDefPatch controls what types of updates
-     * are safe to make to the TypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param typeDefPatch - TypeDef patch describing change to TypeDef.
-     * @return updated TypeDef
-     * @throws InvalidParameterException - the TypeDefPatch is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws PatchErrorException - the TypeDef can not be updated because the supplied patch is incompatible
-     *                               with the stored TypeDef.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDef updateTypeDef(String       userId,
-                                 TypeDefPatch typeDefPatch) throws InvalidParameterException,
-                                                                   RepositoryErrorException,
-                                                                   TypeDefNotKnownException,
-                                                                   PatchErrorException,
-                                                                   UserNotAuthorizedException
-    {
-        final String  methodName           = "updateTypeDef";
-        final String  typeDefParameterName = "typeDefPatch";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefPatch(repositoryName, typeDefPatch, methodName);
-
-        /*
-         * Perform operation
-         */
-        TypeDef  existingTypeDef = repositoryStore.getTypeDef(typeDefPatch.getTypeDefGUID());
-
-        if (existingTypeDef == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.TYPEDEF_ID_NOT_KNOWN;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(typeDefPatch.getTypeDefGUID(),
-                                                                            typeDefParameterName,
-                                                                            methodName,
-                                                                            repositoryName);
-
-            throw new TypeDefNotKnownException(errorCode.getHTTPErrorCode(),
-                                            this.getClass().getName(),
-                                            methodName,
-                                            errorMessage,
-                                            errorCode.getSystemAction(),
-                                            errorCode.getUserAction());
-        }
-
-        TypeDef  updatedTypeDef = repositoryHelper.applyPatch(repositoryName, existingTypeDef, typeDefPatch);
-
-        repositoryStore.putTypeDef(updatedTypeDef);
-
-        return updatedTypeDef;
-    }
-
-
-    /**
-     * Delete the TypeDef.  This is only possible if the TypeDef has never been used to create instances or any
-     * instances of this TypeDef have been purged from the metadata collection.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param obsoleteTypeDefGUID - String unique identifier for the TypeDef.
-     * @param obsoleteTypeDefName - String unique name for the TypeDef.
-     * @throws InvalidParameterException - the one of TypeDef identifiers is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws TypeDefInUseException - the TypeDef can not be deleted because there are instances of this type in the
-     *                                 the metadata collection.  These instances need to be purged before the
-     *                                 TypeDef can be deleted.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public void deleteTypeDef(String    userId,
-                              String    obsoleteTypeDefGUID,
-                              String    obsoleteTypeDefName) throws InvalidParameterException,
-                                                                    RepositoryErrorException,
-                                                                    TypeDefNotKnownException,
-                                                                    TypeDefInUseException,
-                                                                    UserNotAuthorizedException
-    {
-        final String    methodName        = "deleteTypeDef";
-        final String    guidParameterName = "obsoleteTypeDefGUID";
-        final String    nameParameterName = "obsoleteTypeDefName";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               guidParameterName,
-                                               nameParameterName,
-                                               obsoleteTypeDefGUID,
-                                               obsoleteTypeDefName,
-                                               methodName);
-
-        /*
-         * Perform operation
-         */
-        TypeDef typeDef = repositoryStore.getTypeDef(obsoleteTypeDefGUID);
-
-        if (typeDef == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.TYPEDEF_ID_NOT_KNOWN;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(typeDef.getGUID(),
-                                                                            guidParameterName,
-                                                                            methodName,
-                                                                            repositoryName);
-
-            throw new TypeDefNotKnownException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction());
-        }
-
-        OMRSErrorCode errorCode    = OMRSErrorCode.TYPEDEF_IN_USE;
-        String        errorMessage = errorCode.getErrorMessageId()
-                                   + errorCode.getFormattedErrorMessage(obsoleteTypeDefName,
-                                                                        obsoleteTypeDefGUID,
-                                                                        repositoryName);
-
-        throw new TypeDefInUseException(errorCode.getHTTPErrorCode(),
-                                        this.getClass().getName(),
-                                        methodName,
-                                        errorMessage,
-                                        errorCode.getSystemAction(),
-                                        errorCode.getUserAction());
-    }
-
-
-    /**
-     * Delete an AttributeTypeDef.  This is only possible if the AttributeTypeDef has never been used to create
-     * instances or any instances of this AttributeTypeDef have been purged from the metadata collection.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param obsoleteTypeDefGUID - String unique identifier for the AttributeTypeDef.
-     * @param obsoleteTypeDefName - String unique name for the AttributeTypeDef.
-     * @throws InvalidParameterException - the one of AttributeTypeDef identifiers is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested AttributeTypeDef is not found in the metadata collection.
-     * @throws TypeDefInUseException - the AttributeTypeDef can not be deleted because there are instances of this type in the
-     *                                 the metadata collection.  These instances need to be purged before the
-     *                                 AttributeTypeDef can be deleted.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public void deleteAttributeTypeDef(String    userId,
-                                       String    obsoleteTypeDefGUID,
-                                       String    obsoleteTypeDefName) throws InvalidParameterException,
-                                                                             RepositoryErrorException,
-                                                                             TypeDefNotKnownException,
-                                                                             TypeDefInUseException,
-                                                                             UserNotAuthorizedException
-    {
-        final String    methodName        = "deleteAttributeTypeDef";
-        final String    guidParameterName = "obsoleteTypeDefGUID";
-        final String    nameParameterName = "obsoleteTypeDefName";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDefIds(repositoryName,
-                                                        guidParameterName,
-                                                        nameParameterName,
-                                                        obsoleteTypeDefGUID,
-                                                        obsoleteTypeDefName,
-                                                        methodName);
-
-        /*
-         * Perform operation
-         */
-        AttributeTypeDef  attributeTypeDef = repositoryStore.getAttributeTypeDef(obsoleteTypeDefGUID);
-
-        if (attributeTypeDef == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.TYPEDEF_ID_NOT_KNOWN;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(obsoleteTypeDefGUID,
-                                                                            guidParameterName,
-                                                                            methodName,
-                                                                            repositoryName);
-
-            throw new TypeDefNotKnownException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction());
-        }
-
-        OMRSErrorCode errorCode    = OMRSErrorCode.ATTRIBUTE_TYPEDEF_IN_USE;
-        String        errorMessage = errorCode.getErrorMessageId()
-                                   + errorCode.getFormattedErrorMessage(obsoleteTypeDefName,
-                                                                        obsoleteTypeDefGUID,
-                                                                        repositoryName);
-
-        throw new TypeDefInUseException(errorCode.getHTTPErrorCode(),
-                                        this.getClass().getName(),
-                                        methodName,
-                                        errorMessage,
-                                        errorCode.getSystemAction(),
-                                        errorCode.getUserAction());
-    }
-
-
-    /**
-     * Change the guid or name of an existing TypeDef to a new value.  This is used if two different
-     * TypeDefs are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param originalTypeDefGUID - the original guid of the TypeDef.
-     * @param originalTypeDefName - the original name of the TypeDef.
-     * @param newTypeDefGUID - the new identifier for the TypeDef.
-     * @param newTypeDefName - new name for this TypeDef.
-     * @return typeDef - new values for this TypeDef, including the new guid/name.
-     * @throws InvalidParameterException - one of the parameters is invalid or null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the TypeDef identified by the original guid/name is not found
-     *                                    in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  TypeDef reIdentifyTypeDef(String     userId,
-                                      String     originalTypeDefGUID,
-                                      String     originalTypeDefName,
-                                      String     newTypeDefGUID,
-                                      String     newTypeDefName) throws InvalidParameterException,
-                                                                        RepositoryErrorException,
-                                                                        TypeDefNotKnownException,
-                                                                        UserNotAuthorizedException
-    {
-        final String    methodName                = "reIdentifyTypeDef";
-        final String    originalGUIDParameterName = "originalTypeDefGUID";
-        final String    originalNameParameterName = "originalTypeDefName";
-        final String    newGUIDParameterName      = "newTypeDefGUID";
-        final String    newNameParameterName      = "newTypeDefName";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               originalGUIDParameterName,
-                                               originalNameParameterName,
-                                               originalTypeDefGUID,
-                                               originalTypeDefName,
-                                               methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               newGUIDParameterName,
-                                               newNameParameterName,
-                                               newTypeDefGUID,
-                                               newTypeDefName,
-                                               methodName);
-
-        /*
-         * Perform operation
-         */
-        TypeDef  existingTypeDef = repositoryStore.getTypeDef(originalTypeDefGUID);
-
-        if (existingTypeDef == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.TYPEDEF_ID_NOT_KNOWN;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(originalTypeDefGUID,
-                                                                            originalGUIDParameterName,
-                                                                            methodName,
-                                                                            repositoryName);
-
-            throw new TypeDefNotKnownException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction());
-        }
-
-        existingTypeDef.setGUID(newTypeDefGUID);
-        existingTypeDef.setName(newTypeDefName);
-
-        existingTypeDef.setVersion(existingTypeDef.getVersion() + 1);
-
-        repositoryStore.putTypeDef(existingTypeDef);
-
-        return existingTypeDef;
-    }
-
-
-    /**
-     * Change the guid or name of an existing TypeDef to a new value.  This is used if two different
-     * TypeDefs are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param originalAttributeTypeDefGUID - the original guid of the AttributeTypeDef.
-     * @param originalAttributeTypeDefName - the original name of the AttributeTypeDef.
-     * @param newAttributeTypeDefGUID - the new identifier for the AttributeTypeDef.
-     * @param newAttributeTypeDefName - new name for this AttributeTypeDef.
-     * @return attributeTypeDef - new values for this AttributeTypeDef, including the new guid/name.
-     * @throws InvalidParameterException - one of the parameters is invalid or null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the AttributeTypeDef identified by the original guid/name is not
-     *                                    found in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  AttributeTypeDef reIdentifyAttributeTypeDef(String     userId,
-                                                        String     originalAttributeTypeDefGUID,
-                                                        String     originalAttributeTypeDefName,
-                                                        String     newAttributeTypeDefGUID,
-                                                        String     newAttributeTypeDefName) throws InvalidParameterException,
-                                                                                                   RepositoryErrorException,
-                                                                                                   TypeDefNotKnownException,
-                                                                                                   UserNotAuthorizedException
-    {
-        final String    methodName                = "reIdentifyAttributeTypeDef";
-        final String    originalGUIDParameterName = "originalAttributeTypeDefGUID";
-        final String    originalNameParameterName = "originalAttributeTypeDefName";
-        final String    newGUIDParameterName      = "newAttributeTypeDefGUID";
-        final String    newNameParameterName      = "newAttributeTypeDefName";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               originalGUIDParameterName,
-                                               originalNameParameterName,
-                                               originalAttributeTypeDefGUID,
-                                               originalAttributeTypeDefName,
-                                               methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               newGUIDParameterName,
-                                               newNameParameterName,
-                                               newAttributeTypeDefGUID,
-                                               newAttributeTypeDefName,
-                                               methodName);
-
-        /*
-         * Perform operation
-         */
-        AttributeTypeDef  existingAttributeTypeDef = repositoryStore.getAttributeTypeDef(originalAttributeTypeDefGUID);
-
-        if (existingAttributeTypeDef == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.ATTRIBUTE_TYPEDEF_ID_NOT_KNOWN;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(originalAttributeTypeDefName,
-                                                                            originalAttributeTypeDefGUID,
-                                                                            repositoryName);
-
-            throw new TypeDefNotKnownException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction());
-        }
-
-        existingAttributeTypeDef.setGUID(newAttributeTypeDefGUID);
-        existingAttributeTypeDef.setName(newAttributeTypeDefName);
-
-        existingAttributeTypeDef.setVersion(existingAttributeTypeDef.getVersion() + 1);
-
-        repositoryStore.putAttributeTypeDef(existingAttributeTypeDef);
-
-        return existingAttributeTypeDef;
-    }
-
-
-    /* ===================================================
-     * Group 3: Locating entity and relationship instances
-     */
-
-
-    /**
-     * Returns a boolean indicating if the entity is stored in the metadata collection.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity.
-     * @return entity details if the entity is found in the metadata collection; otherwise return null.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public EntityDetail isEntityKnown(String     userId,
-                                      String     guid) throws InvalidParameterException,
-                                                              RepositoryErrorException,
-                                                              UserNotAuthorizedException
-    {
-        final String  methodName = "isEntityKnown";
-        final String  guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-        return repositoryStore.getEntity(guid);
-    }
-
-
-    /**
-     * Return the header and classifications for a specific entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity.
-     * @return EntitySummary structure
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public EntitySummary getEntitySummary(String     userId,
-                                          String     guid) throws InvalidParameterException,
-                                                                  RepositoryErrorException,
-                                                                  EntityNotKnownException,
-                                                                  UserNotAuthorizedException
-    {
-        final String  methodName        = "getEntitySummary";
-        final String  guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-        EntitySummary entity = repositoryStore.getEntity(guid);
-        if (entity == null)
-        {
-            entity = repositoryStore.getEntityProxy(guid);
-        }
-
-        repositoryValidator.validateEntityFromStore(repositoryName, guid, entity, methodName);
-
-        return entity;
-    }
-
-
-    /**
-     * Return the header, classifications and properties of a specific entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity.
-     * @return EntityDetail structure.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                 the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws EntityProxyOnlyException - the requested entity instance is only a proxy in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public EntityDetail getEntityDetail(String     userId,
-                                        String     guid) throws InvalidParameterException,
-                                                                RepositoryErrorException,
-                                                                EntityNotKnownException,
-                                                                EntityProxyOnlyException,
-                                                                UserNotAuthorizedException
-    {
-        final String  methodName        = "getEntityDetail";
-        final String  guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-        EntityDetail  entity = this.isEntityKnown(userId, guid);
-        if (entity == null)
-        {
-            EntityProxy  entityProxy = repositoryStore.getEntityProxy(guid);
-
-            if (entityProxy != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.ENTITY_PROXY_ONLY;
-                String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(guid,
-                                                                                                                repositoryName,
-                                                                                                                guidParameterName,
-                                                                                                                methodName);
-
-                throw new EntityProxyOnlyException(errorCode.getHTTPErrorCode(),
-                                                   this.getClass().getName(),
-                                                   methodName,
-                                                   errorMessage,
-                                                   errorCode.getSystemAction(),
-                                                   errorCode.getUserAction());
-            }
-        }
-
-        repositoryValidator.validateEntityFromStore(repositoryName, guid, entity, methodName);
-
-        return entity;
-    }
-
-
-    /**
-     * Return a historical version of an entity - includes the header, classifications and properties of the entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity.
-     * @param asOfTime - the time used to determine which version of the entity that is desired.
-     * @return EntityDetail structure.
-     * @throws InvalidParameterException - the guid or date is null or date is for a future time.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                 the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection
-     *                                   at the time requested.
-     * @throws EntityProxyOnlyException - the requested entity instance is only a proxy in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  EntityDetail getEntityDetail(String     userId,
-                                         String     guid,
-                                         Date       asOfTime) throws InvalidParameterException,
-                                                                     RepositoryErrorException,
-                                                                     EntityNotKnownException,
-                                                                     EntityProxyOnlyException,
-                                                                     UserNotAuthorizedException
-    {
-        final String  methodName        = "getEntityDetail";
-        final String  guidParameterName = "guid";
-        final String  asOfTimeParameter = "asOfTime";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-        repositoryValidator.validateAsOfTime(repositoryName, asOfTimeParameter, asOfTime, methodName);
-
-        /*
-         * Perform operation
-         */
-        EntityDetail  entity = repositoryStore.timeWarpEntityStore(asOfTime).get(guid);
-        if (entity == null)
-        {
-            EntityProxy  entityProxy = repositoryStore.getEntityProxy(guid);
-
-            if (entityProxy != null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.ENTITY_PROXY_ONLY;
-                String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(guid,
-                                                                                                                repositoryName,
-                                                                                                                guidParameterName,
-                                                                                                                methodName);
-
-                throw new EntityProxyOnlyException(errorCode.getHTTPErrorCode(),
-                                                   this.getClass().getName(),
-                                                   methodName,
-                                                   errorMessage,
-                                                   errorCode.getSystemAction(),
-                                                   errorCode.getUserAction());
-            }
-        }
-
-        repositoryValidator.validateEntityFromStore(repositoryName, guid, entity, methodName);
-
-        return entity;
-    }
-
-
-    /**
-     * Return the relationships for a specific entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param entityGUID - String unique identifier for the entity.
-     * @param relationshipTypeGUID - String GUID of the the type of relationship required (null for all).
-     * @param fromRelationshipElement - the starting element number of the relationships to return.
-     *                                This is used when retrieving elements
-     *                                beyond the first page of results. Zero means start from the first element.
-     * @param limitResultsByStatus - By default, relationships in all statuses are returned.  However, it is possible
-     *                             to specify a list of statuses (eg ACTIVE) to restrict the results to.  Null means all
-     *                             status values.
-     * @param asOfTime - Requests a historical query of the relationships for the entity.  Null means return the
-     *                 present values.
-     * @param sequencingProperty - String name of the property that is to be used to sequence the results.
-     *                           Null means do not sequence on a property name (see SequencingOrder).
-     * @param sequencingOrder - Enum defining how the results should be ordered.
-     * @param pageSize -- the maximum number of result classifications that can be returned on this request.  Zero means
-     *                 unrestricted return results size.
-     * @return Relationships list.  Null means no relationships associated with the entity.
-     * @throws InvalidParameterException - a parameter is invalid or null.
-     * @throws TypeErrorException - the type guid passed on the request is not known by the metadata collection.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws PropertyErrorException - the sequencing property is not valid for the attached classifications.
-     * @throws PagingErrorException - the paging/sequencing parameters are set up incorrectly.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<Relationship> getRelationshipsForEntity(String                     userId,
-                                                        String                     entityGUID,
-                                                        String                     relationshipTypeGUID,
-                                                        int                        fromRelationshipElement,
-                                                        List<InstanceStatus>       limitResultsByStatus,
-                                                        Date                       asOfTime,
-                                                        String                     sequencingProperty,
-                                                        SequencingOrder            sequencingOrder,
-                                                        int                        pageSize) throws InvalidParameterException,
-                                                                                                    TypeErrorException,
-                                                                                                    RepositoryErrorException,
-                                                                                                    EntityNotKnownException,
-                                                                                                    PropertyErrorException,
-                                                                                                    PagingErrorException,
-                                                                                                    UserNotAuthorizedException
-    {
-        final String  methodName = "getRelationshipsForEntity";
-        final String  guidParameterName = "entityGUID";
-        final String  typeGUIDParameterName = "relationshipTypeGUID";
-        final String  asOfTimeParameter = "asOfTime";
-        final String  pageSizeParameter = "pageSize";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, entityGUID, methodName);
-        repositoryValidator.validateAsOfTime(repositoryName, asOfTimeParameter, asOfTime, methodName);
-        repositoryValidator.validatePageSize(repositoryName, pageSizeParameter, pageSize, methodName);
-
-        this.validateTypeGUID(repositoryName, typeGUIDParameterName, relationshipTypeGUID, methodName);
-
-        /*
-         * Perform operation
-         */
-        EntitySummary  entity = this.getEntitySummary(userId, entityGUID);
-
-        repositoryValidator.validateEntityFromStore(repositoryName, entityGUID, entity, methodName);
-
-        List<Relationship> entityRelationships = new ArrayList<>();
-
-        HashMap<String, Relationship>   relationshipStore = repositoryStore.timeWarpRelationshipStore(asOfTime);
-
-        for (Relationship  storedRelationship : relationshipStore.values())
-        {
-            if (storedRelationship != null)
-            {
-                repositoryValidator.validRelationship(repositoryName, storedRelationship);
-
-                if (repositoryHelper.relatedEntity(repositoryName,
-                                                   entityGUID,
-                                                   storedRelationship))
-                {
-                    if (relationshipTypeGUID == null)
-                    {
-                        entityRelationships.add(storedRelationship);
-                    }
-                    else if (relationshipTypeGUID.equals(storedRelationship.getType().getTypeDefGUID()))
-                    {
-                        entityRelationships.add(storedRelationship);
-                    }
-                }
-            }
-        }
-
-        if (entityRelationships.isEmpty())
-        {
-            return null;
-        }
-
-        return formatRelationshipResults(entityRelationships,
-                                         fromRelationshipElement,
-                                         sequencingProperty,
-                                         sequencingOrder,
-                                         pageSize);
-    }
-
-
-    /**
-     * Return a list of entities that match the supplied properties according to the match criteria.  The results
-     * can be returned over many pages.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param entityTypeGUID - String unique identifier for the entity type of interest (null means any entity type).
-     * @param matchProperties - List of entity properties to match to (null means match on entityTypeGUID only).
-     * @param matchCriteria - Enum defining how the properties should be matched to the entities in the repository.
-     * @param fromEntityElement - the starting element number of the entities to return.
-     *                                This is used when retrieving elements
-     *                                beyond the first page of results. Zero means start from the first element.
-     * @param limitResultsByStatus - By default, entities in all statuses are returned.  However, it is possible
-     *                             to specify a list of statuses (eg ACTIVE) to restrict the results to.  Null means all
-     *                             status values.
-     * @param limitResultsByClassification - List of classifications that must be present on all returned entities.
-     * @param 

<TRUNCATED>

[15/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEventProcessor.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEventProcessor.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEventProcessor.java
deleted file mode 100644
index fea400b..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEventProcessor.java
+++ /dev/null
@@ -1,659 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityDetail;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceProvenanceType;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.Relationship;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-
-/**
- * OMRSInstanceEventProcessor is an interface implemented by a component that is able to process incoming
- * metadata instance events for an Open Metadata Repository.  Instance events are used to replicate metadata
- * instances across an Open Metadata Repository Cohort.
- */
-public interface OMRSInstanceEventProcessor
-{
-    /**
-     * A new entity has been created.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the new entity
-     */
-    void processNewEntityEvent(String       sourceName,
-                               String       originatorMetadataCollectionId,
-                               String       originatorServerName,
-                               String       originatorServerType,
-                               String       originatorOrganizationName,
-                               EntityDetail entity);
-
-
-    /**
-     * An existing entity has been updated.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the new version of the entity.
-     */
-    void processUpdatedEntityEvent(String       sourceName,
-                                   String       originatorMetadataCollectionId,
-                                   String       originatorServerName,
-                                   String       originatorServerType,
-                                   String       originatorOrganizationName,
-                                   EntityDetail entity);
-
-
-    /**
-     * An update to an entity has been undone.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the version of the entity that has been restored.
-     */
-    void processUndoneEntityEvent(String       sourceName,
-                                  String       originatorMetadataCollectionId,
-                                  String       originatorServerName,
-                                  String       originatorServerType,
-                                  String       originatorOrganizationName,
-                                  EntityDetail entity);
-
-
-    /**
-     * A new classification has been added to an entity.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the entity with the new classification added.
-     */
-    void processClassifiedEntityEvent(String       sourceName,
-                                      String       originatorMetadataCollectionId,
-                                      String       originatorServerName,
-                                      String       originatorServerType,
-                                      String       originatorOrganizationName,
-                                      EntityDetail entity);
-
-
-    /**
-     * A classification has been removed from an entity.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the entity after the classification has been removed.
-     */
-    void processDeclassifiedEntityEvent(String       sourceName,
-                                        String       originatorMetadataCollectionId,
-                                        String       originatorServerName,
-                                        String       originatorServerType,
-                                        String       originatorOrganizationName,
-                                        EntityDetail entity);
-
-
-    /**
-     * An existing classification has been changed on an entity.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the entity after the classification has been changed.
-     */
-    void processReclassifiedEntityEvent(String       sourceName,
-                                        String       originatorMetadataCollectionId,
-                                        String       originatorServerName,
-                                        String       originatorServerType,
-                                        String       originatorOrganizationName,
-                                        EntityDetail entity);
-
-
-    /**
-     * An existing entity has been deleted.  This is a soft delete. This means it is still in the repository
-     * but it is no longer returned on queries.
-     *
-     * All relationships to the entity are also soft-deleted and will no longer be usable.  These deleted relationships
-     * will be notified through separate events.
-     *
-     * Details of the TypeDef are included with the entity's unique id (guid) to ensure the right entity is deleted in
-     * the remote repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - deleted entity
-     */
-    void processDeletedEntityEvent(String       sourceName,
-                                   String       originatorMetadataCollectionId,
-                                   String       originatorServerName,
-                                   String       originatorServerType,
-                                   String       originatorOrganizationName,
-                                   EntityDetail entity);
-
-
-    /**
-     * A deleted entity has been permanently removed from the repository.  This request can not be undone.
-     *
-     * Details of the TypeDef are included with the entity's unique id (guid) to ensure the right entity is purged in
-     * the remote repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - unique identifier for this entity's TypeDef
-     * @param typeDefName - name of this entity's TypeDef
-     * @param instanceGUID - unique identifier for the entity
-     */
-    void processPurgedEntityEvent(String       sourceName,
-                                  String       originatorMetadataCollectionId,
-                                  String       originatorServerName,
-                                  String       originatorServerType,
-                                  String       originatorOrganizationName,
-                                  String       typeDefGUID,
-                                  String       typeDefName,
-                                  String       instanceGUID);
-
-
-    /**
-     * A deleted entity has been restored to the state it was before it was deleted.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the version of the entity that has been restored.
-     */
-    void processRestoredEntityEvent(String       sourceName,
-                                    String       originatorMetadataCollectionId,
-                                    String       originatorServerName,
-                                    String       originatorServerType,
-                                    String       originatorOrganizationName,
-                                    EntityDetail entity);
-
-
-    /**
-     * An existing entity has had its type changed.  Typically this action is taken to move an entity's
-     * type to either a super type (so the subtype can be deleted) or a new subtype (so additional properties can be
-     * added.)  However, the type can be changed to any compatible type.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalTypeDef - description of this entity's original TypeDef.
-     * @param entity - new values for this entity, including the new type information.
-     */
-    void processReTypedEntityEvent(String         sourceName,
-                                   String         originatorMetadataCollectionId,
-                                   String         originatorServerName,
-                                   String         originatorServerType,
-                                   String         originatorOrganizationName,
-                                   TypeDefSummary originalTypeDef,
-                                   EntityDetail   entity);
-
-
-    /**
-     * An existing entity has changed home repository.  This action is taken for example, if a repository
-     * becomes permanently unavailable, or if the user community updating this entity move to working
-     * from a different repository in the open metadata repository cluster.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalHomeMetadataCollectionId - unique identifier for the original home metadata collection/repository.
-     * @param entity - new values for this entity, including the new home information.
-     */
-    void processReHomedEntityEvent(String       sourceName,
-                                   String       originatorMetadataCollectionId,
-                                   String       originatorServerName,
-                                   String       originatorServerType,
-                                   String       originatorOrganizationName,
-                                   String       originalHomeMetadataCollectionId,
-                                   EntityDetail entity);
-
-    /**
-     * The guid of an existing entity has been changed to a new value.  This is used if two different
-     * entities are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalEntityGUID - the existing identifier for the entity.
-     * @param entity - new values for this entity, including the new guid.
-     */
-    void processReIdentifiedEntityEvent(String       sourceName,
-                                        String       originatorMetadataCollectionId,
-                                        String       originatorServerName,
-                                        String       originatorServerType,
-                                        String       originatorOrganizationName,
-                                        String       originalEntityGUID,
-                                        EntityDetail entity);
-
-
-    /**
-     * The local repository is requesting that an entity from another repository's metadata collection is
-     * refreshed so the local repository can create a reference copy.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - - unique identifier for this entity's TypeDef
-     * @param typeDefName - name of this entity's TypeDef
-     * @param instanceGUID - unique identifier for the entity
-     * @param homeMetadataCollectionId - metadata collection id for the home of this instance.
-     */
-    void processRefreshEntityRequested(String       sourceName,
-                                       String       originatorMetadataCollectionId,
-                                       String       originatorServerName,
-                                       String       originatorServerType,
-                                       String       originatorOrganizationName,
-                                       String       typeDefGUID,
-                                       String       typeDefName,
-                                       String       instanceGUID,
-                                       String       homeMetadataCollectionId);
-
-
-    /**
-     * A remote repository in the cohort has sent entity details in response to a refresh request.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the requested entity
-     */
-    void processRefreshEntityEvent(String       sourceName,
-                                   String       originatorMetadataCollectionId,
-                                   String       originatorServerName,
-                                   String       originatorServerType,
-                                   String       originatorOrganizationName,
-                                   EntityDetail entity);
-
-    /**
-     * A new relationship has been created.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - details of the new relationship
-     */
-    void processNewRelationshipEvent(String       sourceName,
-                                     String       originatorMetadataCollectionId,
-                                     String       originatorServerName,
-                                     String       originatorServerType,
-                                     String       originatorOrganizationName,
-                                     Relationship relationship);
-
-
-    /**
-     * An existing relationship has been updated.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - details of the new version of the relationship.
-     */
-    void processUpdatedRelationshipEvent(String       sourceName,
-                                         String       originatorMetadataCollectionId,
-                                         String       originatorServerName,
-                                         String       originatorServerType,
-                                         String       originatorOrganizationName,
-                                         Relationship relationship);
-
-
-    /**
-     * An update to a relationship has been undone.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - details of the version of the relationship that has been restored.
-     */
-    void processUndoneRelationshipEvent(String       sourceName,
-                                        String       originatorMetadataCollectionId,
-                                        String       originatorServerName,
-                                        String       originatorServerType,
-                                        String       originatorOrganizationName,
-                                        Relationship relationship);
-
-
-    /**
-     * An existing relationship has been deleted.  This is a soft delete. This means it is still in the repository
-     * but it is no longer returned on queries.
-     *
-     * Details of the TypeDef are included with the relationship's unique id (guid) to ensure the right
-     * relationship is deleted in the remote repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - deleted relationship
-     */
-    void processDeletedRelationshipEvent(String       sourceName,
-                                         String       originatorMetadataCollectionId,
-                                         String       originatorServerName,
-                                         String       originatorServerType,
-                                         String       originatorOrganizationName,
-                                         Relationship relationship);
-
-
-    /**
-     * A deleted relationship has been permanently removed from the repository.  This request can not be undone.
-     *
-     * Details of the TypeDef are included with the relationship's unique id (guid) to ensure the right
-     * relationship is purged in the remote repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - unique identifier for this relationship's TypeDef.
-     * @param typeDefName - name of this relationship's TypeDef.
-     * @param instanceGUID - unique identifier for the relationship.
-     */
-    void processPurgedRelationshipEvent(String       sourceName,
-                                        String       originatorMetadataCollectionId,
-                                        String       originatorServerName,
-                                        String       originatorServerType,
-                                        String       originatorOrganizationName,
-                                        String       typeDefGUID,
-                                        String       typeDefName,
-                                        String       instanceGUID);
-
-
-    /**
-     * A deleted relationship has been restored to the state it was before it was deleted.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - details of the version of the relationship that has been restored.
-     */
-    void processRestoredRelationshipEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          Relationship relationship);
-
-
-    /**
-     * An existing relationship has had its type changed.  Typically this action is taken to move a relationship's
-     * type to either a super type (so the subtype can be deleted) or a new subtype (so additional properties can be
-     * added.)  However, the type can be changed to any compatible type.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalTypeDef -  description of this relationship's original TypeDef.
-     * @param relationship - new values for this relationship, including the new type information.
-     */
-    void processReTypedRelationshipEvent(String         sourceName,
-                                         String         originatorMetadataCollectionId,
-                                         String         originatorServerName,
-                                         String         originatorServerType,
-                                         String         originatorOrganizationName,
-                                         TypeDefSummary originalTypeDef,
-                                         Relationship   relationship);
-
-
-    /**
-     * An existing relationship has changed home repository.  This action is taken for example, if a repository
-     * becomes permanently unavailable, or if the user community updating this relationship move to working
-     * from a different repository in the open metadata repository cluster.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalHomeMetadataCollectionId - unique identifier for the original home repository.
-     * @param relationship - new values for this relationship, including the new home information.
-     */
-    void processReHomedRelationshipEvent(String       sourceName,
-                                         String       originatorMetadataCollectionId,
-                                         String       originatorServerName,
-                                         String       originatorServerType,
-                                         String       originatorOrganizationName,
-                                         String       originalHomeMetadataCollectionId,
-                                         Relationship relationship);
-
-
-    /**
-     * The guid of an existing relationship has changed.  This is used if two different
-     * relationships are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalRelationshipGUID - the existing identifier for the relationship.
-     * @param relationship - new values for this relationship, including the new guid.
-     */
-    void processReIdentifiedRelationshipEvent(String       sourceName,
-                                              String       originatorMetadataCollectionId,
-                                              String       originatorServerName,
-                                              String       originatorServerType,
-                                              String       originatorOrganizationName,
-                                              String       originalRelationshipGUID,
-                                              Relationship relationship);
-
-
-
-    /**
-     * An open metadata repository has requested the home repository of a relationship send details of the relationship so
-     * its local metadata collection can create a reference copy of the instance.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - unique identifier for this instance's TypeDef
-     * @param typeDefName - name of this relationship's TypeDef
-     * @param instanceGUID - unique identifier for the instance
-     * @param homeMetadataCollectionId - metadata collection id for the home of this instance.
-     */
-    void processRefreshRelationshipRequest(String       sourceName,
-                                           String       originatorMetadataCollectionId,
-                                           String       originatorServerName,
-                                           String       originatorServerType,
-                                           String       originatorOrganizationName,
-                                           String       typeDefGUID,
-                                           String       typeDefName,
-                                           String       instanceGUID,
-                                           String       homeMetadataCollectionId);
-
-
-    /**
-     * An open metadata repository is refreshing the information about a relationship for the other
-     * repositories in the cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - relationship details
-     */
-    void processRefreshRelationshipEvent(String       sourceName,
-                                         String       originatorMetadataCollectionId,
-                                         String       originatorServerName,
-                                         String       originatorServerType,
-                                         String       originatorOrganizationName,
-                                         Relationship relationship);
-
-
-    /**
-     * An open metadata repository has detected two metadata instances with the same identifier (guid).
-     * This is a serious error because it could lead to corruption of the metadata collections within the cohort.
-     * When this occurs, all repositories in the cohort delete their reference copies of the metadata instances and
-     * at least one of the instances has its GUID changed in its respective home repository.  The updated instance(s)
-     * are redistributed around the cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - metadata collection id of the repository reporting the conflicting instance
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param targetMetadataCollectionId - metadata collection id of other repository with the conflicting instance
-     * @param targetTypeDef - details of the target instance's TypeDef
-     * @param targetInstanceGUID - unique identifier for the source instance
-     * @param otherOrigin - origin of the other (older) metadata instance
-     * @param otherMetadataCollectionId - metadata collection of the other (older) metadata instance
-     * @param otherTypeDef - details of the other (older) instance's TypeDef
-     * @param otherInstanceGUID - unique identifier for the other (older) instance
-     * @param errorMessage - description of the error.
-     */
-    void processConflictingInstancesEvent(String                 sourceName,
-                                          String                 originatorMetadataCollectionId,
-                                          String                 originatorServerName,
-                                          String                 originatorServerType,
-                                          String                 originatorOrganizationName,
-                                          String                 targetMetadataCollectionId,
-                                          TypeDefSummary         targetTypeDef,
-                                          String                 targetInstanceGUID,
-                                          String                 otherMetadataCollectionId,
-                                          InstanceProvenanceType otherOrigin,
-                                          TypeDefSummary         otherTypeDef,
-                                          String                 otherInstanceGUID,
-                                          String                 errorMessage);
-
-
-    /**
-     * An open metadata repository has detected an inconsistency in the version number of the type used in an updated metadata
-     * instance compared to its stored version.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - metadata collection id of the repository reporting the conflicting instance
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param targetMetadataCollectionId - metadata collection id of other repository with the conflicting instance
-     * @param targetTypeDef - description of the target instance's TypeDef
-     * @param targetInstanceGUID - unique identifier for the source instance
-     * @param otherTypeDef - details of the other (older) instance's TypeDef
-     * @param errorMessage - description of the error.
-     */
-    void processConflictingTypeEvent(String                 sourceName,
-                                     String                 originatorMetadataCollectionId,
-                                     String                 originatorServerName,
-                                     String                 originatorServerType,
-                                     String                 originatorOrganizationName,
-                                     String                 targetMetadataCollectionId,
-                                     TypeDefSummary         targetTypeDef,
-                                     String                 targetInstanceGUID,
-                                     TypeDefSummary         otherTypeDef,
-                                     String                 errorMessage);
-}
-

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEventType.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEventType.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEventType.java
deleted file mode 100644
index 8d94980..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEventType.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-/**
- * OMRSInstanceEventType defines the different types of instance events in the open metadata repository services
- * protocol.
- */
-public enum OMRSInstanceEventType
-{
-    UNKNOWN_INSTANCE_EVENT          (0,  "UnknownInstanceEvent",
-                                         "An event that is not recognized by the local server."),
-    NEW_ENTITY_EVENT                (1,  "NewEntityEvent",
-                                         "A new entity has been created."),
-    UPDATED_ENTITY_EVENT            (2,  "UpdatedEntityEvent",
-                                         "An existing entity has been updated."),
-    UNDONE_ENTITY_EVENT             (3,  "UndoneEntityEvent",
-                                         "An update to an entity has been undone."),
-    CLASSIFIED_ENTITY_EVENT         (4,  "ClassifiedEntityEvent",
-                                         "A new classification has been added to an entity."),
-    DECLASSIFIED_ENTITY_EVENT       (5,  "DeclassifiedEntityEvent",
-                                         "A classification has been removed from an entity."),
-    RECLASSIFIED_ENTITY_EVENT       (6,  "ReclassifiedEntityEvent",
-                                         "An existing classification has been changed on an entity."),
-    DELETED_ENTITY_EVENT            (7,  "DeletedEntityEvent",
-                                         "An existing entity has been deleted.  This is a soft delete. " +
-                                          "This means it is still in the repository " +
-                                          "but it is no longer returned on queries."),
-    PURGED_ENTITY_EVENT             (8,  "PurgedEntityEvent",
-                                         "A deleted entity has been permanently removed from the repository. " +
-                                          "This request can not be undone."),
-    RESTORED_ENTITY_EVENT           (9,  "RestoredEntityEvent",
-                                         "A deleted entity has been restored to the state it was before it was deleted."),
-    RE_IDENTIFIED_ENTITY_EVENT      (10, "ReIdentifiedEntityEvent",
-                                         "The guid of an existing entity has been changed to a new value."),
-    RETYPED_ENTITY_EVENT            (11, "ReTypedEntityEvent",
-                                         "An existing entity has had its type changed."),
-    RE_HOMED_ENTITY_EVENT           (12, "ReHomedEntityEvent",
-                                         "An existing entity has changed home repository."),
-    REFRESH_ENTITY_REQUEST          (13, "RefreshEntityRequestEvent",
-                                         "The local repository is requesting that an entity from another repository's " +
-                                          "metadata collection is " +
-                                          "refreshed so the local repository can create a reference copy."),
-    REFRESHED_ENTITY_EVENT          (14, "RefreshedEntityEvent",
-                                         "A remote repository in the cohort has sent entity details in response " +
-                                          "to a refresh request."),
-    NEW_RELATIONSHIP_EVENT          (15, "NewRelationshipEvent",
-                                         "A new relationship has been created."),
-    UPDATED_RELATIONSHIP_EVENT      (16, "UpdateRelationshipEvent",
-                                         "An existing relationship has been updated."),
-    UNDONE_RELATIONSHIP_EVENT       (17, "UndoneRelationshipEvent",
-                                         "An earlier change to a relationship has been undone."),
-    DELETED_RELATIONSHIP_EVENT      (18, "DeletedRelationshipEvent",
-                                         "An existing relationship has been deleted.  This is a soft delete. " +
-                                          "This means it is still in the repository " +
-                                          "but it is no longer returned on queries."),
-    PURGED_RELATIONSHIP_EVENT       (19, "PurgedRelationshipEvent",
-                                         "A deleted relationship has been permanently removed from the repository. " +
-                                          "This request can not be undone."),
-    RESTORED_RELATIONSHIP_EVENT     (20, "RestoredRelationshipEvent",
-                                         "A deleted relationship has been restored to the state it was before it was deleted."),
-    RE_IDENTIFIED_RELATIONSHIP_EVENT(21, "ReIdentifiedRelationshipEvent",
-                                         "The guid of an existing relationship has changed."),
-    RETYPED_RELATIONSHIP_EVENT      (22, "ReTypedRelationshipEvent",
-                                         "An existing relationship has had its type changed."),
-    RE_HOMED_RELATIONSHIP_EVENT     (23, "ReHomedRelationshipEvent",
-                                         "An existing relationship has changed home repository."),
-    REFRESH_RELATIONSHIP_REQUEST    (24, "RefreshRelationshipRequestEvent",
-                                         "A repository has requested the home repository of a relationship send " +
-                                                "details of hte relationship so " +
-                                                "the local repository can create a reference copy of the instance."),
-    REFRESHED_RELATIONSHIP_EVENT    (25, "RefreshedRelationshipEvent",
-                                         "The local repository is refreshing the information about a relationship for the " +
-                                          "other repositories in the cohort."),
-    INSTANCE_ERROR_EVENT            (99, "InstanceErrorEvent",
-                                         "An error has been detected in the exchange of instances between members of the cohort.")
-    ;
-
-
-    private  int      eventTypeCode;
-    private  String   eventTypeName;
-    private  String   eventTypeDescription;
-
-
-    /**
-     * Default Constructor - sets up the specific values for this instance of the enum.
-     *
-     * @param eventTypeCode - int identifier used for indexing based on the enum.
-     * @param eventTypeName - string name used for messages that include the enum.
-     * @param eventTypeDescription - default description for the enum value - used when natural resource
-     *                                     bundle is not available.
-     */
-    OMRSInstanceEventType(int eventTypeCode, String eventTypeName, String eventTypeDescription)
-    {
-        this.eventTypeCode = eventTypeCode;
-        this.eventTypeName = eventTypeName;
-        this.eventTypeDescription = eventTypeDescription;
-    }
-
-
-    /**
-     * Return the int identifier used for indexing based on the enum.
-     *
-     * @return int identifier code
-     */
-    public int getInstanceEventTypeCode()
-    {
-        return eventTypeCode;
-    }
-
-
-    /**
-     * Return the string name used for messages that include the enum.
-     *
-     * @return String name
-     */
-    public String getInstanceEventTypeName()
-    {
-        return eventTypeName;
-    }
-
-
-    /**
-     * Return the default description for the enum value - used when natural resource
-     * bundle is not available.
-     *
-     * @return String default description
-     */
-    public String getInstanceEventTypeDescription()
-    {
-        return eventTypeDescription;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEvent.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEvent.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEvent.java
deleted file mode 100644
index 9650219..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEvent.java
+++ /dev/null
@@ -1,266 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.omrs.eventmanagement.events.v1.OMRSEventV1;
-import org.apache.atlas.omrs.eventmanagement.events.v1.OMRSEventV1RegistrySection;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-
-/**
- * OMRSRegistryEvent provides the conversion between the properties of a registry event and the serialized event body.
- * It supports conversion in either direction through its inner class called OMRSRegistryEventPayload:
- * <ul>
- *     <li>
- *         Converting from registry event properties to an OMRSEvent body for sending outbound events.
- *     </li>
- *     <li>
- *         Converting from an event body to registry event properties for inbound events.
- *     </li>
- * </ul>
- * OMRSRegistryEvent also provides a specialized interface to allow the cohort registry to work effectively
- * with registry events.
- */
-public class OMRSRegistryEvent extends OMRSEvent
-{
-    /*
-     * The type of the registry event that defines how the rest of the values should be interpreted.
-     */
-    private  OMRSRegistryEventType       registryEventType               = OMRSRegistryEventType.UNKNOWN_REGISTRY_EVENT;
-
-    /*
-     * Registration information describing a specific repository.
-     */
-    private  Date                        registrationTimestamp           = null;
-    private  Connection                  remoteConnection                = null;
-
-    /*
-     * Specific variables only used in error reporting.  It defines the subset of error codes from OMRSEvent
-     * that are specific to registry events.
-     */
-    private  OMRSRegistryEventErrorCode  errorCode                       = OMRSRegistryEventErrorCode.NOT_IN_USE;
-
-
-    private static final Logger log = LoggerFactory.getLogger(OMRSRegistryEvent.class);
-
-
-    /**
-     * Inbound event constructor that takes the object created by the Jackson JSON mapper and unpacks the
-     * properties into the registry event.
-     *
-     * @param inboundEvent - incoming Event.
-     */
-    public OMRSRegistryEvent(OMRSEventV1 inboundEvent)
-    {
-        super(inboundEvent);
-
-        OMRSEventV1RegistrySection registrySection = inboundEvent.getRegistryEventSection();
-
-        if (registrySection != null)
-        {
-            this.registryEventType     = registrySection.getRegistryEventType();
-            this.registrationTimestamp = registrySection.getRegistrationTimestamp();
-            this.remoteConnection      = registrySection.getRemoteConnection();
-        }
-
-        if (super.genericErrorCode != null)
-        {
-            switch (errorCode)
-            {
-                case BAD_REMOTE_CONNECTION:
-                    this.errorCode = OMRSRegistryEventErrorCode.BAD_REMOTE_CONNECTION;
-                    break;
-
-                case CONFLICTING_COLLECTION_ID:
-                    this.errorCode = OMRSRegistryEventErrorCode.CONFLICTING_COLLECTION_ID;
-                    break;
-
-                default:
-                    this.errorCode = OMRSRegistryEventErrorCode.UNKNOWN_ERROR_CODE;
-            }
-        }
-    }
-
-
-    /**
-     * Constructor for a normal outbound event.  It sets the event type and the other parameters
-     * used in a registry event payload.
-     *
-     * @param registryEventType - type of event (REGISTRATION_EVENT, REFRESH_REGISTRATION_REQUEST, RE_REGISTRATION_EVENT)
-     * @param registrationTimestamp - time that the local repository registered.
-     * @param remoteConnection - remote connection to this local repository.
-     */
-    public OMRSRegistryEvent(OMRSRegistryEventType          registryEventType,
-                             Date                           registrationTimestamp,
-                             Connection                     remoteConnection)
-    {
-        super(OMRSEventCategory.REGISTRY);
-
-        this.registryEventType           = registryEventType;
-        this.registrationTimestamp       = registrationTimestamp;
-        this.remoteConnection            = remoteConnection;
-    }
-
-
-    /**
-     * Constructor for an UnRegistration Event.
-     *
-     * @param registryEventType - the type of event
-     */
-    public OMRSRegistryEvent(OMRSRegistryEventType          registryEventType)
-    {
-        super(OMRSEventCategory.REGISTRY);
-
-        this.registryEventType           = registryEventType;
-    }
-
-
-    /**
-     * Constructor for the REGISTRATION_ERROR_EVENT outbound event.
-     *
-     * @param errorCode - detailed error code
-     * @param errorMessage - Optional error message
-     * @param targetMetadataCollectionId - the identifier of the server that sent bad information.
-     * @param remoteConnection - remote connection to the target repository. (Optional - only supplied if
-     *                              relevant to the reported error; otherwise null.)
-     */
-    public OMRSRegistryEvent(OMRSRegistryEventErrorCode errorCode,
-                             String                     errorMessage,
-                             String                     targetMetadataCollectionId,
-                             Connection                 remoteConnection)
-    {
-        super(OMRSEventCategory.REGISTRY,
-              errorCode.getErrorCodeEncoding(),
-              errorMessage,
-              targetMetadataCollectionId,
-              remoteConnection);
-
-        this.registryEventType = OMRSRegistryEventType.REGISTRATION_ERROR_EVENT;
-    }
-
-
-    /**
-     * Return the specific registry event type.
-     *
-     * @return registry event type enum
-     */
-    public OMRSRegistryEventType getRegistryEventType()
-    {
-        return registryEventType;
-    }
-
-
-    /**
-     * Return the date/time that the repository registered with the open metadata repository cohort.
-     * If this is a normal registry event then this timestamp is the registration time for the local repository.
-     * If this an error event, then this is the registration time for the target repository.
-     *
-     * @return Date object for timestamp
-     */
-    public Date getRegistrationTimestamp()
-    {
-        return registrationTimestamp;
-    }
-
-
-    /**
-     * Return the remote connection used to create a connector used to call the repository across the network.
-     * If this is a normal registry event then this connection is for the local repository.
-     * If this an error event, then this is the connection for the target repository.
-     *
-     * @return Connection object
-     */
-    public Connection getRemoteConnection()
-    {
-        return remoteConnection;
-    }
-
-
-    /**
-     * Return the error code for the event.  This property is only used for error events.
-     *
-     * @return OMRSRegistryEventErrorCode enum
-     */
-    public OMRSRegistryEventErrorCode getErrorCode()
-    {
-        return errorCode;
-    }
-
-
-    /**
-     * Returns an OMRSEvent populated with details from this RegistryEvent
-     *
-     * @return OMRSEvent (Version 1) object
-     */
-    public OMRSEventV1  getOMRSEventV1()
-    {
-        OMRSEventV1     omrsEvent = super.getOMRSEventV1();
-
-        OMRSEventV1RegistrySection registrySection  = new OMRSEventV1RegistrySection();
-
-        registrySection.setRegistryEventType(this.registryEventType);
-        registrySection.setRegistrationTimestamp(this.registrationTimestamp);
-        registrySection.setRemoteConnection(this.remoteConnection);
-
-        omrsEvent.setRegistryEventSection(registrySection);
-
-        return omrsEvent;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return JSON style description of variables.
-     */
-    @Override
-    public String toString()
-    {
-        return "OMRSRegistryEvent{" +
-                "registryEventType=" + registryEventType +
-                ", registrationTimestamp=" + registrationTimestamp +
-                ", remoteConnection=" + remoteConnection +
-                ", errorCode=" + errorCode +
-                ", eventTimestamp=" + eventTimestamp +
-                ", eventDirection=" + eventDirection +
-                ", eventCategory=" + eventCategory +
-                ", eventOriginator=" + eventOriginator +
-                ", genericErrorCode=" + genericErrorCode +
-                ", errorMessage='" + errorMessage + '\'' +
-                ", targetMetadataCollectionId='" + targetMetadataCollectionId + '\'' +
-                ", targetRemoteConnection=" + targetRemoteConnection +
-                ", targetTypeDefSummary=" + targetTypeDefSummary +
-                ", targetAttributeTypeDef=" + targetAttributeTypeDef +
-                ", targetInstanceGUID='" + targetInstanceGUID + '\'' +
-                ", otherOrigin=" + otherOrigin +
-                ", otherMetadataCollectionId='" + otherMetadataCollectionId + '\'' +
-                ", otherTypeDefSummary=" + otherTypeDefSummary +
-                ", otherTypeDef=" + otherTypeDef +
-                ", otherAttributeTypeDef=" + otherAttributeTypeDef +
-                ", otherInstanceGUID='" + otherInstanceGUID + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEventErrorCode.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEventErrorCode.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEventErrorCode.java
deleted file mode 100644
index 19a77eb..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEventErrorCode.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-
-/**
- * OMRSRegistryEventErrorCode defines the list of error codes that are used to record errors in the registration
- * process that is used by the cluster registries when managing the membership of the open metadata repository cluster.
- * <ul>
- *     <li>
- *         NOT_IN_USE - There has been no error detected and so the error code is not in use.
- *     </li>
- *     <li>
- *         CONFLICTING_REPOSITORY_ID - Remote server/repository is using the same metadata collection id as the local server.
- *     </li>
- *     <li>
- *         CONFLICTING_TYPEDEFS - There are conflicting type definitions (TypeDefs) detected between two repositories
- *         in the open metadata repository cluster.
- *     </li>
- * </ul>
- */
-public enum OMRSRegistryEventErrorCode
-{
-    NOT_IN_USE                (0, "No Error",
-                                  "There has been no error detected and so the error code is not in use.",
-                               null),
-    CONFLICTING_COLLECTION_ID (1, "Conflicting metadata collection Id",
-                               "Remote server/repository is using the same metadata collection id as the local server.",
-                               OMRSEventErrorCode.CONFLICTING_COLLECTION_ID),
-    BAD_REMOTE_CONNECTION     (2, "Unusable Remote Connection to Repository",
-                                  "The remote connection send by one of the member of the cohort is resulting in errors " +
-                                          "when it is used to create an OMRS Connector to the repository.",
-                               OMRSEventErrorCode.BAD_REMOTE_CONNECTION),
-    UNKNOWN_ERROR_CODE        (99, "Unknown Error Code",
-                               "Unrecognized error code from incoming event.",
-                               null)
-    ;
-
-
-    private  int                 errorCodeId;
-    private  String              errorCodeName;
-    private  String              errorCodeDescription;
-    private  OMRSEventErrorCode  errorCodeEncoding ;
-
-
-    /**
-     * Typical constructor sets up the values for this enum instance.
-     *
-     * @param errorCodeId - int identifier for the enum, used for indexing arrays etc with the enum.
-     * @param errorCodeName - String name for the enum, used for message content.
-     * @param errorCodeDescription - String default description for the enum, used when there is not natural
-     *                             language resource bundle available.
-     * @param errorCodeEncoding - code value to use in OMRSEvents
-     */
-    OMRSRegistryEventErrorCode(int                  errorCodeId,
-                               String               errorCodeName,
-                               String               errorCodeDescription,
-                               OMRSEventErrorCode   errorCodeEncoding)
-    {
-        this.errorCodeId = errorCodeId;
-        this.errorCodeName = errorCodeName;
-        this.errorCodeDescription = errorCodeDescription;
-        this.errorCodeEncoding = errorCodeEncoding;
-    }
-
-
-    /**
-     * Return the identifier for the enum, used for indexing arrays etc with the enum.
-     *
-     * @return int identifier
-     */
-    public int getErrorCodeId()
-    {
-        return errorCodeId;
-    }
-
-
-    /**
-     * Return the name for the enum, used for message content.
-     *
-     * @return String name
-     */
-    public String getErrorCodeName()
-    {
-        return errorCodeName;
-    }
-
-
-    /**
-     * Return the default description for the enum, used when there is not natural
-     * language resource bundle available.
-     *
-     * @return String default description
-     */
-    public String getErrorCodeDescription()
-    {
-        return errorCodeDescription;
-    }
-
-
-    /**
-     * Return the encoding to use in OMRSEvents.
-     *
-     * @return String OMRSEvent encoding for this errorCode
-     */
-    public OMRSEventErrorCode getErrorCodeEncoding()
-    {
-        return errorCodeEncoding;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEventProcessor.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEventProcessor.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEventProcessor.java
deleted file mode 100644
index 27e6059..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEventProcessor.java
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-
-import org.apache.atlas.ocf.properties.beans.Connection;
-
-import java.util.Date;
-
-/**
- * OMRSRegistryEventProcessor is an interface implemented by a component that is able to process
- * registry events for an Open Metadata Repository's membership of an Open Metadata Repository Cohort.
- */
-public interface OMRSRegistryEventProcessor
-{
-    /**
-     * Introduces a new server/repository to the metadata repository cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection that is registering with the cohort.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param registrationTimestamp - the time that the server/repository issued the registration request.
-     * @param remoteConnection - the Connection properties for the connector used to call the registering server.
-     * @return flag indicating if the event was sent or not.
-     */
-    boolean processRegistrationEvent(String                    sourceName,
-                                     String                    originatorMetadataCollectionId,
-                                     String                    originatorServerName,
-                                     String                    originatorServerType,
-                                     String                    originatorOrganizationName,
-                                     Date                      registrationTimestamp,
-                                     Connection                remoteConnection);
-
-
-    /**
-     * Requests that the other servers in the cohort send re-registration events.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @return flag indicating if the event was sent or not.
-     */
-    boolean processRegistrationRefreshRequest(String                    sourceName,
-                                              String                    originatorServerName,
-                                              String                    originatorServerType,
-                                              String                    originatorOrganizationName);
-
-
-    /**
-     * Refreshes the other servers in the cohort with the originating server's registration.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection that is registering with the cohort.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param registrationTimestamp - the time that the server/repository first registered with the cohort.
-     * @param remoteConnection - the Connection properties for the connector used to call the registering server.
-     * @return flag indicating if the event was sent or not.
-     */
-    boolean processReRegistrationEvent(String                    sourceName,
-                                       String                    originatorMetadataCollectionId,
-                                       String                    originatorServerName,
-                                       String                    originatorServerType,
-                                       String                    originatorOrganizationName,
-                                       Date                      registrationTimestamp,
-                                       Connection                remoteConnection);
-
-
-    /**
-     * A server/repository is being removed from the metadata repository cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - metadata collectionId of originator.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @return flag indicating if the event was sent or not.
-     */
-    boolean processUnRegistrationEvent(String                    sourceName,
-                                       String                    originatorMetadataCollectionId,
-                                       String                    originatorServerName,
-                                       String                    originatorServerType,
-                                       String                    originatorOrganizationName);
-
-
-    /**
-     * There is more than one member of the open metadata repository cohort that is using the same metadata
-     * collection Id.  This means that their metadata instances can be updated in more than one server and their
-     * is a potential for data integrity issues.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - metadata collectionId of originator.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param conflictingMetadataCollectionId - unique identifier for the metadata collection that is registering with the cohort.
-     * @param errorMessage - details of the conflict
-     */
-    void processConflictingCollectionIdEvent(String  sourceName,
-                                             String  originatorMetadataCollectionId,
-                                             String  originatorServerName,
-                                             String  originatorServerType,
-                                             String  originatorOrganizationName,
-                                             String  conflictingMetadataCollectionId,
-                                             String  errorMessage);
-
-
-    /**
-     * A connection to one of the members of the open metadata repository cohort is not usable by one of the members.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - metadata collectionId of originator.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param targetMetadataCollectionId - Id for the repository with the bad remote connection.
-     * @param remoteConnection - the Connection properties for the connector used to call the registering server.
-     * @param errorMessage - details of the error that occurs when the connection is used.
-     */
-    void processBadConnectionEvent(String     sourceName,
-                                   String     originatorMetadataCollectionId,
-                                   String     originatorServerName,
-                                   String     originatorServerType,
-                                   String     originatorOrganizationName,
-                                   String     targetMetadataCollectionId,
-                                   Connection remoteConnection,
-                                   String     errorMessage);
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEventType.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEventType.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEventType.java
deleted file mode 100644
index 5dcd411..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSRegistryEventType.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-/**
- * OMRSRegistryEventType defines the different types of registry events in the open metadata repository services
- * protocol.  There are 4 basic values.
- * <ul>
- *     <li>
- *         UNKNOWN_REGISTRY_EVENT - the event is not recognized by this local server, probably because it is back-level
- *         from other servers in the cohort.  It is logged in the audit log and then ignored.  The registration
- *         protocol should evolve so that new message types can be ignored by back-level servers without damage
- *         to the cohort's integrity.
- *     </li>
- *     <li>
- *         REGISTRATION_EVENT - this event is a server's first contact with the cohort.  It publicises the id of the
- *         local repository, the connection information needed to connect remotely to this local server's
- *         repository (localServerRemoteConnection) plus a list of typedef names and GUIDs.  Other servers in the
- *         cohort will respond either with a RE_REGISTRATION_EVENT if all is ok or REGISTRATION_ERROR if there
- *         is a problem with any information in the REGISTRATION_EVENT.
- *     </li>
- *     <li>
- *         REFRESH_REGISTRATION_EVENT - this event is used after a local server has experienced configuration issues
- *         and needs to receive the registration information from other members of the cohort again.
- *     </li>
- *     <li>
- *         RE_REGISTRATION_EVENT - this event is used by a previously registered server to broadcast its current
- *         configuration.  It is used in response to a REGISTRATION_EVENT and a REFRESH_REGISTRATION_EVENT to
- *         let the other servers know about its configuration, or whenever its configuration may have changed
- *         (such as after a server restart or administrator action).
- *     </li>
- *     <li>
- *         UN_REGISTRATION_EVENT - this event is used when a server is being removed from the cohort.  The other
- *         servers can choose whether to remove its replicated metadata from their repository, or mark it as
- *         deregistered repository's metadata.
- *     </li>
- *     <li>
- *         REGISTRATION_ERROR_EVENT - ths event is used to report anomalies in the registration information being
- *         passed between the repositories and the actions taken.  Each of these errors should be investigated
- *         since they should not occur.
- *     </li>
- * </ul>
- */
-public enum OMRSRegistryEventType
-{
-    UNKNOWN_REGISTRY_EVENT       (0, "UnknownRegistryEvent",
-                                     "An event that is not recognized by the local server."),
-    REGISTRATION_EVENT           (1, "RegistrationEvent",
-                                     "Introduces a new server/repository to the metadata repository cohort."),
-    REFRESH_REGISTRATION_REQUEST (2, "RefreshRegistrationRequest",
-                                     "Requests that the other servers in the cohort send re-registration events."),
-    RE_REGISTRATION_EVENT        (3, "ReRegistrationEvent",
-                                     "Refreshes the other servers in the cohort with the local server's configuration."),
-    UN_REGISTRATION_EVENT        (4, "UnRegistrationEvent",
-                                     "A server/repository is being removed from the metadata repository cohort."),
-    REGISTRATION_ERROR_EVENT     (99, "RegistrationErrorEvent",
-                                      "An anomaly has been detected in the information received from a member in the metadata repository cohort.");
-
-
-    private  int      registryEventTypeCode;
-    private  String   registryEventTypeName;
-    private  String   registryEventTypeDescription;
-
-
-    /**
-     * Default Constructor - sets up the specific values for this instance of the enum.
-     *
-     * @param registryEventTypeCode - int identifier used for indexing based on the enum.
-     * @param registryEventTypeName - string name used for messages that include the enum.
-     * @param registryEventTypeDescription - default description for the enum value - used when natural resource
-     *                                     bundle is not available.
-     */
-    OMRSRegistryEventType(int registryEventTypeCode, String registryEventTypeName, String registryEventTypeDescription)
-    {
-        this.registryEventTypeCode = registryEventTypeCode;
-        this.registryEventTypeName = registryEventTypeName;
-        this.registryEventTypeDescription = registryEventTypeDescription;
-    }
-
-
-    /**
-     * Return the int identifier used for indexing based on the enum.
-     *
-     * @return int identifier code
-     */
-    public int getRegistryEventTypeCode()
-    {
-        return registryEventTypeCode;
-    }
-
-
-    /**
-     * Return the string name used for messages that include the enum.
-     *
-     * @return String name
-     */
-    public String getRegistryEventTypeName()
-    {
-        return registryEventTypeName;
-    }
-
-
-    /**
-     * Return the default description for the enum value - used when natural resource
-     * bundle is not available.
-     *
-     * @return String default description
-     */
-    public String getRegistryEventTypeDescription()
-    {
-        return registryEventTypeDescription;
-    }
-}


[21/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSMetadataCollection.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSMetadataCollection.java b/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSMetadataCollection.java
deleted file mode 100644
index 5b0165f..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSMetadataCollection.java
+++ /dev/null
@@ -1,6737 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.enterprise.repositoryconnector;
-
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.*;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollection;
-import org.apache.atlas.omrs.metadatacollection.properties.MatchCriteria;
-import org.apache.atlas.omrs.metadatacollection.properties.SequencingOrder;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.*;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.*;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.ArrayList;
-import java.util.Date;
-
-
-/**
- * EnterpriseOMRSMetadataCollection executes the calls to the open metadata repositories registered
- * with the OMRSEnterpriseConnectorManager.  The effect is a federated view over these open metadata
- * repositories.
- * <p>
- *     EnterpriseOMRSMetadataCollection is part of an EnterpriseOMRSRepositoryConnector.  The EnterpriseOMRSRepositoryConnector
- *     holds the list of OMRS Connectors, one for each of the metadata repositories.  This list may change
- *     over time as metadata repositories register and deregister with the connected cohorts.
- *     The EnterpriseOMRSRepositoryConnector is responsible for keeping the list of connectors up-to-date through
- *     contact with the OMRSEnterpriseConnectorManager.
- * </p>
- * <p>
- *     When a request is made to the EnterpriseOMRSMetadataCollection, it calls the EnterpriseOMRSRepositoryConnector
- *     to request the appropriate list of metadata collection for the request.  Then the EnterpriseOMRSConnector
- *     calls the appropriate remote connectors.
- * </p>
- * <p>
- *     The first OMRS Connector in the list is the OMRS Repository Connector for the "local" repository.
- *     The local repository is favoured when new metadata is to be created, unless the type of metadata
- *     is not supported by the local repository. In which case, the EnterpriseOMRSMetadataCollection searches its
- *     list looking for the first metadata repository that supports the metadata type and stores it there.
- * </p>
- * <p>
- *     Updates and deletes are routed to the owning (home) repository.  Searches are made to each repository in turn
- *     and the duplicates are removed.  Queries are directed to the local repository and then the remote repositories
- *     until all of the requested metadata is assembled.
- * </p>
- */
-public class EnterpriseOMRSMetadataCollection extends OMRSMetadataCollection
-{
-
-    /*
-     * Private variables for a metadata collection instance
-     */
-    private EnterpriseOMRSRepositoryConnector enterpriseParentConnector;
-
-
-    /**
-     * Constructor ensures the metadata collection is linked to its connector and knows its metadata collection Id.
-     *
-     * @param enterpriseParentConnector - connector that this metadata collection supports.  The connector has the information
-     *                        to call the metadata repository.
-     * @param repositoryName - name of the repository - used for logging.
-     * @param repositoryHelper - class used to build type definitions and instances.
-     * @param repositoryValidator - class used to validate type definitions and instances.
-     * @param metadataCollectionId - unique Identifier of the metadata collection Id.
-     */
-    public EnterpriseOMRSMetadataCollection(EnterpriseOMRSRepositoryConnector enterpriseParentConnector,
-                                            String                            repositoryName,
-                                            OMRSRepositoryHelper              repositoryHelper,
-                                            OMRSRepositoryValidator           repositoryValidator,
-                                            String                            metadataCollectionId)
-    {
-        /*
-         * The metadata collection Id is the unique identifier for the metadata collection.  It is managed by the super class.
-         */
-        super(enterpriseParentConnector, repositoryName, metadataCollectionId, repositoryHelper, repositoryValidator);
-
-        /*
-         * Save enterpriseParentConnector since this has the connection information and
-         * access to the metadata about the open metadata repository cohort.
-         */
-        this.enterpriseParentConnector = enterpriseParentConnector;
-
-    }
-
-
-    /* ======================================================================
-     * Group 1: Confirm the identity of the metadata repository being called.
-     */
-
-    /**
-     * Returns the identifier of the metadata repository.  This is the identifier used to register the
-     * metadata repository with the metadata repository cohort.  It is also the identifier used to
-     * identify the home repository of a metadata instance.
-     *
-     * @return String - metadata collection id.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     */
-    public String      getMetadataCollectionId() throws RepositoryErrorException
-    {
-        final String methodName = "getMetadataCollectionId";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        /*
-         * Perform operation
-         */
-        return super.metadataCollectionId;
-    }
-
-
-    /* ==============================
-     * Group 2: Working with typedefs
-     */
-
-    /**
-     * Returns the list of different types of metadata organized into two groups.  The first are the
-     * attribute type definitions (AttributeTypeDefs).  These provide types for properties in full
-     * type definitions.  Full type definitions (TypeDefs) describe types for entities, relationships
-     * and classifications.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @return TypeDefs - List of different categories of TypeDefs.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDefGallery getAllTypes(String userId) throws RepositoryErrorException,
-                                                            UserNotAuthorizedException
-    {
-        final String                       methodName = "getAllTypes";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and will be returned if
-         * there are no results from any repository.
-         */
-        HashMap<String, TypeDef>               combinedTypeDefResults          = new HashMap<>();
-        HashMap<String, AttributeTypeDef>      combinedAttributeTypeDefResults = new HashMap<>();
-
-        UserNotAuthorizedException  userNotAuthorizedException      = null;
-        RepositoryErrorException    repositoryErrorException        = null;
-        Throwable                   anotherException                = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request
-                     */
-                    TypeDefGallery     results = metadataCollection.getAllTypes(userId);
-
-                    /*
-                     * Step through the list of returned TypeDefs and consolidate.
-                     */
-                    if (results != null)
-                    {
-                        combinedAttributeTypeDefResults = this.addUniqueAttributeTypeDefs(combinedAttributeTypeDefResults,
-                                                                                          results.getAttributeTypeDefs(),
-                                                                                          cohortConnector.getServerName(),
-                                                                                          cohortConnector.getMetadataCollectionId(),
-                                                                                          methodName);
-                        combinedTypeDefResults = this.addUniqueTypeDefs(combinedTypeDefResults,
-                                                                        results.getTypeDefs(),
-                                                                        cohortConnector.getServerName(),
-                                                                        cohortConnector.getMetadataCollectionId(),
-                                                                        methodName);
-                    }
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        return validatedTypeDefGalleryResults(repositoryName,
-                                              combinedTypeDefResults,
-                                              combinedAttributeTypeDefResults,
-                                              userNotAuthorizedException,
-                                              repositoryErrorException,
-                                              anotherException,
-                                              methodName);
-    }
-
-
-    /**
-     * Returns a list of type definitions that have the specified name.  Type names should be unique.  This
-     * method allows wildcard character to be included in the name.  These are * (asterisk) for an
-     * arbitrary string of characters and ampersand for an arbitrary character.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - name of the TypeDefs to return (including wildcard characters).
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the name of the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDefGallery findTypesByName(String   userId,
-                                          String   name) throws InvalidParameterException,
-                                                                RepositoryErrorException,
-                                                                UserNotAuthorizedException
-    {
-        final String   methodName        = "findTypesByName";
-        final String   nameParameterName = "name";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeName(repositoryName, nameParameterName, name, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and will be returned if
-         * there are no results from any repository.
-         */
-        HashMap<String, TypeDef>               combinedTypeDefResults          = new HashMap<>();
-        HashMap<String, AttributeTypeDef>      combinedAttributeTypeDefResults = new HashMap<>();
-
-        UserNotAuthorizedException  userNotAuthorizedException      = null;
-        RepositoryErrorException    repositoryErrorException        = null;
-        Throwable                   anotherException                = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request
-                     */
-                    TypeDefGallery     results = metadataCollection.findTypesByName(userId, name);
-
-                    /*
-                     * Step through the list of returned TypeDefs and consolidate.
-                     */
-                    if (results != null)
-                    {
-                        combinedAttributeTypeDefResults = this.addUniqueAttributeTypeDefs(combinedAttributeTypeDefResults,
-                                                                                          results.getAttributeTypeDefs(),
-                                                                                          cohortConnector.getServerName(),
-                                                                                          cohortConnector.getMetadataCollectionId(),
-                                                                                          methodName);
-                        combinedTypeDefResults = this.addUniqueTypeDefs(combinedTypeDefResults,
-                                                                        results.getTypeDefs(),
-                                                                        cohortConnector.getServerName(),
-                                                                        cohortConnector.getMetadataCollectionId(),
-                                                                        methodName);
-                    }
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        return validatedTypeDefGalleryResults(repositoryName,
-                                              combinedTypeDefResults,
-                                              combinedAttributeTypeDefResults,
-                                              userNotAuthorizedException,
-                                              repositoryErrorException,
-                                              anotherException,
-                                              methodName);
-    }
-
-
-    /**
-     * Returns all of the TypeDefs for a specific category.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param category - enum value for the category of TypeDef to return.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the TypeDefCategory is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> findTypeDefsByCategory(String          userId,
-                                                TypeDefCategory category) throws InvalidParameterException,
-                                                                                 RepositoryErrorException,
-                                                                                 UserNotAuthorizedException
-    {
-        final String methodName            = "findTypeDefsByCategory";
-        final String categoryParameterName = "category";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefCategory(repositoryName, categoryParameterName, category, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and will be returned if
-         * there are no results from any repository.
-         */
-        HashMap<String, TypeDef>   combinedResults            = new HashMap<>();
-        UserNotAuthorizedException userNotAuthorizedException = null;
-        RepositoryErrorException   repositoryErrorException   = null;
-        Throwable                  anotherException           = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request
-                     */
-                    List<TypeDef> results  = metadataCollection.findTypeDefsByCategory(userId, category);
-
-                    /*
-                     * Step through the list of returned TypeDefs and remove duplicates.
-                     */
-                    combinedResults = this.addUniqueTypeDefs(combinedResults,
-                                                             results,
-                                                             cohortConnector.getServerName(),
-                                                             cohortConnector.getMetadataCollectionId(),
-                                                             methodName);
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        return validatedTypeDefListResults(repositoryName,
-                                           combinedResults,
-                                           userNotAuthorizedException,
-                                           repositoryErrorException,
-                                           anotherException,
-                                           methodName);
-    }
-
-
-    /**
-     * Returns all of the AttributeTypeDefs for a specific category.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param category - enum value for the category of an AttributeTypeDef to return.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the TypeDefCategory is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<AttributeTypeDef> findAttributeTypeDefsByCategory(String                   userId,
-                                                                  AttributeTypeDefCategory category) throws InvalidParameterException,
-                                                                                                            RepositoryErrorException,
-                                                                                                            UserNotAuthorizedException
-    {
-        final String methodName            = "findAttributeTypeDefsByCategory";
-        final String categoryParameterName = "category";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDefCategory(repositoryName, categoryParameterName, category, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and will be returned if
-         * there are no results from any repository.
-         */
-        HashMap<String, AttributeTypeDef>   combinedResults   = new HashMap<>();
-
-        UserNotAuthorizedException userNotAuthorizedException = null;
-        RepositoryErrorException   repositoryErrorException   = null;
-        Throwable                  anotherException           = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request
-                     */
-                    List<AttributeTypeDef> results  = metadataCollection.findAttributeTypeDefsByCategory(userId, category);
-
-                    /*
-                     * Step through the list of returned TypeDefs and remove duplicates.
-                     */
-                    combinedResults = this.addUniqueAttributeTypeDefs(combinedResults,
-                                                                      results,
-                                                                      cohortConnector.getServerName(),
-                                                                      cohortConnector.getMetadataCollectionId(),
-                                                                      methodName);
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        return validatedAttributeTypeDefListResults(repositoryName,
-                                                    combinedResults,
-                                                    userNotAuthorizedException,
-                                                    repositoryErrorException,
-                                                    anotherException,
-                                                    methodName);
-    }
-
-
-    /**
-     * Return the TypeDefs that have the properties matching the supplied match criteria.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param matchCriteria - TypeDefProperties - a list of property names and values.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the matchCriteria is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> findTypeDefsByProperty(String            userId,
-                                                TypeDefProperties matchCriteria) throws InvalidParameterException,
-                                                                                        RepositoryErrorException,
-                                                                                        UserNotAuthorizedException
-    {
-        final String  methodName                 = "findTypeDefsByProperty";
-        final String  matchCriteriaParameterName = "matchCriteria";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateMatchCriteria(repositoryName, matchCriteriaParameterName, matchCriteria, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and will be returned if
-         * there are no results from any repository.
-         */
-        HashMap<String, TypeDef>   combinedResults            = new HashMap<>();
-        UserNotAuthorizedException userNotAuthorizedException = null;
-        RepositoryErrorException   repositoryErrorException   = null;
-        Throwable                  anotherException           = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request
-                     */
-                    List<TypeDef> results  = metadataCollection.findTypeDefsByProperty(userId, matchCriteria);
-
-                    /*
-                     * Step through the list of returned TypeDefs and remove duplicates.
-                     */
-                    combinedResults = this.addUniqueTypeDefs(combinedResults,
-                                                             results,
-                                                             cohortConnector.getServerName(),
-                                                             cohortConnector.getMetadataCollectionId(),
-                                                             methodName);
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        return validatedTypeDefListResults(repositoryName,
-                                           combinedResults,
-                                           userNotAuthorizedException,
-                                           repositoryErrorException,
-                                           anotherException,
-                                           methodName);
-    }
-
-
-    /**
-     * Return the types that are linked to the elements from the specified standard.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param standard - name of the standard - null means any.
-     * @param organization - name of the organization - null means any.
-     * @param identifier - identifier of the element in the standard - null means any.
-     * @return TypeDefs list - each entry in the list contains a typedef.  This is is a structure
-     * describing the TypeDef's category and properties.
-     * @throws InvalidParameterException - all attributes of the external Id are null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  List<TypeDef> findTypesByExternalID(String    userId,
-                                                String    standard,
-                                                String    organization,
-                                                String    identifier) throws InvalidParameterException,
-                                                                             RepositoryErrorException,
-                                                                             UserNotAuthorizedException
-    {
-        final String                       methodName = "findTypesByExternalID";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateExternalId(repositoryName, standard, organization, identifier, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and one selected to
-         * be returned if there are no results from any repository.
-         */
-        HashMap<String, TypeDef>   combinedResults            = new HashMap<>();
-        UserNotAuthorizedException userNotAuthorizedException = null;
-        RepositoryErrorException   repositoryErrorException   = null;
-        Throwable                  anotherException           = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request
-                     */
-                    List<TypeDef> results  = metadataCollection.findTypesByExternalID(userId, standard, organization, identifier);
-
-                    /*
-                     * Step through the list of returned TypeDefs and remove duplicates.
-                     */
-                    combinedResults = this.addUniqueTypeDefs(combinedResults,
-                                                             results,
-                                                             cohortConnector.getServerName(),
-                                                             cohortConnector.getMetadataCollectionId(),
-                                                             methodName);
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        return validatedTypeDefListResults(repositoryName,
-                                           combinedResults,
-                                           userNotAuthorizedException,
-                                           repositoryErrorException,
-                                           anotherException,
-                                           methodName);
-    }
-
-
-    /**
-     * Return the TypeDefs that match the search criteria.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param searchCriteria - String - search criteria.
-     * @return TypeDefs list - each entry in the list contains a typedef.  This is is a structure
-     * describing the TypeDef's category and properties.
-     * @throws InvalidParameterException - the searchCriteria is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> searchForTypeDefs(String userId,
-                                           String searchCriteria) throws InvalidParameterException,
-                                                                         RepositoryErrorException,
-                                                                         UserNotAuthorizedException
-    {
-        final String methodName                  = "searchForTypeDefs";
-        final String searchCriteriaParameterName = "searchCriteria";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateSearchCriteria(repositoryName, searchCriteriaParameterName, searchCriteria, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and will be returned if
-         * there are no results from any repository.
-         */
-        HashMap<String, TypeDef>   combinedResults            = new HashMap<>();
-        UserNotAuthorizedException userNotAuthorizedException = null;
-        RepositoryErrorException   repositoryErrorException   = null;
-        Throwable                  anotherException           = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request
-                     */
-                    List<TypeDef> results  = metadataCollection.searchForTypeDefs(userId, searchCriteria);
-
-                    /*
-                     * Step through the list of returned TypeDefs and remove duplicates.
-                     */
-                    combinedResults = this.addUniqueTypeDefs(combinedResults,
-                                                             results,
-                                                             cohortConnector.getServerName(),
-                                                             cohortConnector.getMetadataCollectionId(),
-                                                             methodName);
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        return validatedTypeDefListResults(repositoryName,
-                                           combinedResults,
-                                           userNotAuthorizedException,
-                                           repositoryErrorException,
-                                           anotherException,
-                                           methodName);
-    }
-
-
-    /**
-     * Return the TypeDef identified by the GUID.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique Id of the TypeDef
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - The requested TypeDef is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDef getTypeDefByGUID(String    userId,
-                                    String    guid) throws InvalidParameterException,
-                                                           RepositoryErrorException,
-                                                           TypeDefNotKnownException,
-                                                           UserNotAuthorizedException
-    {
-        final String methodName        = "getTypeDefByGUID";
-        final String guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and one selected to
-         * be returned if there are no results from any repository.
-         */
-        TypeDefNotKnownException   typeDefNotKnownException   = null;
-        UserNotAuthorizedException userNotAuthorizedException = null;
-        RepositoryErrorException   repositoryErrorException   = null;
-        Throwable                  anotherException           = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request and return if it succeeds
-                     */
-                    return metadataCollection.getTypeDefByGUID(userId, guid);
-                }
-                catch (TypeDefNotKnownException error)
-                {
-                    typeDefNotKnownException = error;
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        throwCapturedRepositoryErrorException(repositoryErrorException);
-        throwCapturedUserNotAuthorizedException(userNotAuthorizedException);
-        throwCapturedThrowableException(anotherException, methodName);
-        throwCapturedTypeDefNotKnownException(typeDefNotKnownException);
-
-        return null;
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the GUID.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique id of the TypeDef
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - The requested TypeDef is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  AttributeTypeDef getAttributeTypeDefByGUID(String    userId,
-                                                       String    guid) throws InvalidParameterException,
-                                                                              RepositoryErrorException,
-                                                                              TypeDefNotKnownException,
-                                                                              UserNotAuthorizedException
-    {
-        final String methodName        = "getAttributeTypeDefByGUID";
-        final String guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and one selected to
-         * be returned if there are no results from any repository.
-         */
-        TypeDefNotKnownException   typeDefNotKnownException   = null;
-        UserNotAuthorizedException userNotAuthorizedException = null;
-        RepositoryErrorException   repositoryErrorException   = null;
-        Throwable                  anotherException           = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request and return if it succeeds
-                     */
-                    return metadataCollection.getAttributeTypeDefByGUID(userId, guid);
-                }
-                catch (TypeDefNotKnownException error)
-                {
-                    typeDefNotKnownException = error;
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        throwCapturedRepositoryErrorException(repositoryErrorException);
-        throwCapturedUserNotAuthorizedException(userNotAuthorizedException);
-        throwCapturedThrowableException(anotherException, methodName);
-
-        if (typeDefNotKnownException != null)
-        {
-            throw typeDefNotKnownException;
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Return the TypeDef identified by the unique name.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - String name of the TypeDef.
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the name is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     */
-    public TypeDef getTypeDefByName(String    userId,
-                                    String    name) throws InvalidParameterException,
-                                                           RepositoryErrorException,
-                                                           TypeDefNotKnownException,
-                                                           UserNotAuthorizedException
-    {
-        final String  methodName = "getTypeDefByName";
-        final String  nameParameterName = "name";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeName(repositoryName, nameParameterName, name, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and one selected to
-         * be returned if there are no results from any repository.
-         */
-        TypeDefNotKnownException   typeDefNotKnownException   = null;
-        UserNotAuthorizedException userNotAuthorizedException = null;
-        RepositoryErrorException   repositoryErrorException   = null;
-        Throwable                  anotherException           = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request and return if it succeeds
-                     */
-                    return metadataCollection.getTypeDefByName(userId, name);
-                }
-                catch (TypeDefNotKnownException error)
-                {
-                    typeDefNotKnownException = error;
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        throwCapturedRepositoryErrorException(repositoryErrorException);
-        throwCapturedUserNotAuthorizedException(userNotAuthorizedException);
-        throwCapturedThrowableException(anotherException, methodName);
-        throwCapturedTypeDefNotKnownException(typeDefNotKnownException);
-
-        return null;
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the unique name.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - String name of the TypeDef.
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the name is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  AttributeTypeDef getAttributeTypeDefByName(String    userId,
-                                                       String    name) throws InvalidParameterException,
-                                                                              RepositoryErrorException,
-                                                                              TypeDefNotKnownException,
-                                                                              UserNotAuthorizedException
-    {
-        final String  methodName = "getAttributeTypeDefByName";
-        final String  nameParameterName = "name";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeName(repositoryName, nameParameterName, name, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and one selected to
-         * be returned if there are no results from any repository.
-         */
-        TypeDefNotKnownException   typeDefNotKnownException   = null;
-        UserNotAuthorizedException userNotAuthorizedException = null;
-        RepositoryErrorException   repositoryErrorException   = null;
-        Throwable                  anotherException           = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request and return if it succeeds
-                     */
-                    return metadataCollection.getAttributeTypeDefByName(userId, name);
-                }
-                catch (TypeDefNotKnownException error)
-                {
-                    typeDefNotKnownException = error;
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        throwCapturedRepositoryErrorException(repositoryErrorException);
-        throwCapturedUserNotAuthorizedException(userNotAuthorizedException);
-        throwCapturedThrowableException(anotherException, methodName);
-        throwCapturedTypeDefNotKnownException(typeDefNotKnownException);
-
-        return null;
-    }
-
-
-    /**
-     * Create a collection of related types.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newTypes - TypeDefGalleryResponse structure describing the new AttributeTypeDefs and TypeDefs.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     */
-    public  void addTypeDefGallery(String          userId,
-                                   TypeDefGallery  newTypes) throws FunctionNotSupportedException
-
-    {
-        final String    methodName = "addTypeDefGallery()";
-
-        throwNotEnterpriseFunction(methodName);
-    }
-
-
-    /**
-     * Create a definition of a new TypeDef.   This new TypeDef is pushed to each repository that will accept it.
-     * An exception is passed to the caller if the TypeDef is invalid, or if none of the repositories accept it.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newTypeDef - TypeDef structure describing the new TypeDef.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     */
-    public void addTypeDef(String       userId,
-                           TypeDef      newTypeDef) throws FunctionNotSupportedException
-    {
-        final String    methodName = "addTypeDef()";
-
-        throwNotEnterpriseFunction(methodName);
-    }
-
-
-    /**
-     * Create a definition of a new AttributeTypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newAttributeTypeDef - TypeDef structure describing the new TypeDef.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     */
-    public  void addAttributeTypeDef(String             userId,
-                                     AttributeTypeDef   newAttributeTypeDef) throws FunctionNotSupportedException
-    {
-        final String    methodName = "addAttributeTypeDef()";
-
-        throwNotEnterpriseFunction(methodName);
-    }
-
-
-    /**
-     * Verify that a definition of a TypeDef is either new - or matches the definition already stored.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param typeDef - TypeDef structure describing the TypeDef to test.
-     * @return boolean - true means the TypeDef matches the local definition - false means the TypeDef is not known.
-     * @throws InvalidParameterException - the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public boolean verifyTypeDef(String       userId,
-                                 TypeDef      typeDef) throws InvalidParameterException,
-                                                              RepositoryErrorException,
-                                                              TypeDefNotSupportedException,
-                                                              TypeDefConflictException,
-                                                              InvalidTypeDefException,
-                                                              UserNotAuthorizedException
-    {
-        final String  methodName           = "verifyTypeDef";
-        final String  typeDefParameterName = "typeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDef(repositoryName, typeDefParameterName, typeDef, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and one selected to
-         * be returned if there are no results from any repository.
-         */
-        TypeDefNotSupportedException   typeDefNotSupportedException = null;
-        UserNotAuthorizedException     userNotAuthorizedException   = null;
-        RepositoryErrorException       repositoryErrorException     = null;
-        Throwable                      anotherException             = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request and return if it succeeds (TypeDefConflictException is also returned
-                     * immediately.)
-                     */
-                    return metadataCollection.verifyTypeDef(userId, typeDef);
-                }
-                catch (TypeDefNotSupportedException error)
-                {
-                    typeDefNotSupportedException = error;
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        throwCapturedRepositoryErrorException(repositoryErrorException);
-        throwCapturedUserNotAuthorizedException(userNotAuthorizedException);
-        throwCapturedThrowableException(anotherException, methodName);
-        throwCapturedTypeDefNotSupportedException(typeDefNotSupportedException);
-
-        return false;
-    }
-
-
-    /**
-     * Verify that a definition of an AttributeTypeDef is either new - or matches the definition already stored.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param attributeTypeDef - TypeDef structure describing the TypeDef to test.
-     * @return boolean - true means the TypeDef matches the local definition - false means the TypeDef is not known.
-     * @throws InvalidParameterException - the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  boolean verifyAttributeTypeDef(String            userId,
-                                           AttributeTypeDef  attributeTypeDef) throws InvalidParameterException,
-                                                                                      RepositoryErrorException,
-                                                                                      TypeDefNotSupportedException,
-                                                                                      TypeDefConflictException,
-                                                                                      InvalidTypeDefException,
-                                                                                      UserNotAuthorizedException
-    {
-        final String  methodName           = "verifyAttributeTypeDef";
-        final String  typeDefParameterName = "attributeTypeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDef(repositoryName, typeDefParameterName, attributeTypeDef, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and one selected to
-         * be returned if there are no results from any repository.
-         */
-        TypeDefNotSupportedException   typeDefNotSupportedException = null;
-        UserNotAuthorizedException     userNotAuthorizedException   = null;
-        RepositoryErrorException       repositoryErrorException     = null;
-        Throwable                      anotherException             = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request and return if it succeeds (TypeDefConflictException is also returned
-                     * immediately.)
-                     */
-                    return metadataCollection.verifyAttributeTypeDef(userId, attributeTypeDef);
-                }
-                catch (TypeDefNotSupportedException error)
-                {
-                    typeDefNotSupportedException = error;
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        throwCapturedRepositoryErrorException(repositoryErrorException);
-        throwCapturedUserNotAuthorizedException(userNotAuthorizedException);
-        throwCapturedThrowableException(anotherException, methodName);
-        throwCapturedTypeDefNotSupportedException(typeDefNotSupportedException);
-
-        return false;
-    }
-
-
-    /**
-     * Update one or more properties of the TypeDef.  The TypeDefPatch controls what types of updates
-     * are safe to make to the TypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param typeDefPatch - TypeDef patch describing change to TypeDef.
-     * @return updated TypeDef
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-
-     */
-    public TypeDef updateTypeDef(String       userId,
-                                 TypeDefPatch typeDefPatch) throws FunctionNotSupportedException
-    {
-        final String                       methodName = "updateTypeDef()";
-
-        throwNotEnterpriseFunction(methodName);
-
-        return null;
-    }
-
-
-    /**
-     * Delete the TypeDef.  This is only possible if the TypeDef has never been used to create instances or any
-     * instances of this TypeDef have been purged from the metadata collection.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param obsoleteTypeDefGUID - String unique identifier for the TypeDef.
-     * @param obsoleteTypeDefName - String unique name for the TypeDef.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     */
-    public void deleteTypeDef(String    userId,
-                              String    obsoleteTypeDefGUID,
-                              String    obsoleteTypeDefName) throws FunctionNotSupportedException
-    {
-        final String                       methodName = "deleteTypeDef()";
-
-        throwNotEnterpriseFunction(methodName);
-    }
-
-
-    /**
-     * Delete an AttributeTypeDef.  This is only possible if the AttributeTypeDef has never been used to create
-     * instances or any instances of this AttributeTypeDef have been purged from the metadata collection.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param obsoleteTypeDefGUID - String unique identifier for the AttributeTypeDef.
-     * @param obsoleteTypeDefName - String unique name for the AttributeTypeDef.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     */
-    public void deleteAttributeTypeDef(String    userId,
-                                       String    obsoleteTypeDefGUID,
-                                       String    obsoleteTypeDefName) throws FunctionNotSupportedException
-    {
-        final String                       methodName = "deleteAttributeTypeDef()";
-
-        throwNotEnterpriseFunction(methodName);
-    }
-
-
-    /**
-     * Change the guid or name of an existing TypeDef to a new value.  This is used if two different
-     * TypeDefs are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param originalTypeDefGUID - the original guid of the TypeDef.
-     * @param originalTypeDefName - the original name of the TypeDef.
-     * @param newTypeDefGUID - the new identifier for the TypeDef.
-     * @param newTypeDefName - new name for this TypeDef.
-     * @return typeDef - new values for this TypeDef, including the new guid/name.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     */
-    public  TypeDef reIdentifyTypeDef(String     userId,
-                                      String     originalTypeDefGUID,
-                                      String     originalTypeDefName,
-                                      String     newTypeDefGUID,
-                                      String     newTypeDefName) throws FunctionNotSupportedException
-    {
-        final String                       methodName = "reIdentifyTypeDef()";
-
-        throwNotEnterpriseFunction(methodName);
-
-        return null;
-    }
-
-
-    /**
-     * Change the guid or name of an existing TypeDef to a new value.  This is used if two different
-     * TypeDefs are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param originalAttributeTypeDefGUID - the original guid of the AttributeTypeDef.
-     * @param originalAttributeTypeDefName - the original name of the AttributeTypeDef.
-     * @param newAttributeTypeDefGUID - the new identifier for the AttributeTypeDef.
-     * @param newAttributeTypeDefName - new name for this AttributeTypeDef.
-     * @return attributeTypeDef - new values for this AttributeTypeDef, including the new guid/name.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     */
-    public  AttributeTypeDef reIdentifyAttributeTypeDef(String     userId,
-                                                        String     originalAttributeTypeDefGUID,
-                                                        String     originalAttributeTypeDefName,
-                                                        String     newAttributeTypeDefGUID,
-                                                        String     newAttributeTypeDefName) throws FunctionNotSupportedException
-    {
-        final String                       methodName = "reIdentifyAttributeTypeDef()";
-
-        throwNotEnterpriseFunction(methodName);
-
-        return null;
-    }
-
-
-    /* ===================================================
-     * Group 3: Locating entity and relationship instances
-     */
-
-
-    /**
-     * Returns a boolean indicating if the entity is stored in the metadata collection.  This entity may be a full
-     * entity object, or an entity proxy.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity
-     * @return the entity details if the entity is found in the metadata collection; otherwise return null
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public EntityDetail isEntityKnown(String    userId,
-                                      String    guid) throws InvalidParameterException,
-                                                             RepositoryErrorException,
-                                                             UserNotAuthorizedException
-    {
-        final String  methodName = "isEntityKnown";
-        final String  guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and one selected to
-         * be returned if there are no results from any repository.
-         */
-        UserNotAuthorizedException userNotAuthorizedException = null;
-        RepositoryErrorException   repositoryErrorException   = null;
-        Throwable                  anotherException           = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request and return if it succeeds
-                     */
-                    EntityDetail     entity = this.isEntityKnown(userId, guid);
-
-                    repositoryValidator.validateEntityFromStore(repositoryName, guid, entity, methodName);
-
-                    return entity;
-                }
-
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        throwCapturedRepositoryErrorException(repositoryErrorException);
-        throwCapturedUserNotAuthorizedException(userNotAuthorizedException);
-        throwCapturedThrowableException(anotherException, methodName);
-
-        return null;
-    }
-
-
-    /**
-     * Return the header and classifications for a specific entity.  The returned entity summary may be from
-     * a full entity object or an entity proxy.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity
-     * @return EntitySummary structure
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public EntitySummary getEntitySummary(String    userId,
-                                          String    guid) throws InvalidParameterException,
-                                                                 RepositoryErrorException,
-                                                                 EntityNotKnownException,
-                                                                 UserNotAuthorizedException
-    {
-        final String  methodName        = "getEntitySummary";
-        final String  guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and one selected to
-         * be returned if there are no results from any repository.
-         */
-        EntityNotKnownException    entityNotKnownException    = null;
-        UserNotAuthorizedException userNotAuthorizedException = null;
-        RepositoryErrorException   repositoryErrorException   = null;
-        Throwable                  anotherException           = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request and return if it succeeds
-                     */
-                    EntitySummary     entity = this.getEntitySummary(userId, guid);
-
-                    repositoryValidator.validateEntityFromStore(repositoryName, guid, entity, methodName);
-
-                    return entity;
-                }
-                catch (EntityNotKnownException error)
-                {
-                    entityNotKnownException = error;
-                }
-                catch (RepositoryErrorException error)
-                {
-                    repositoryErrorException = error;
-                }
-                catch (UserNotAuthorizedException error)
-                {
-                    userNotAuthorizedException = error;
-                }
-                catch (Throwable error)
-                {
-                    anotherException = error;
-                }
-            }
-        }
-
-        throwCapturedRepositoryErrorException(repositoryErrorException);
-        throwCapturedUserNotAuthorizedException(userNotAuthorizedException);
-        throwCapturedThrowableException(anotherException, methodName);
-        throwCapturedEntityNotKnownException(entityNotKnownException);
-
-        return null;
-    }
-
-
-    /**
-     * Return the header, classifications and properties of a specific entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity.
-     * @return EntityDetail structure.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                 the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws EntityProxyOnlyException - the requested entity instance is only a proxy in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public EntityDetail getEntityDetail(String    userId,
-                                        String    guid) throws InvalidParameterException,
-                                                               RepositoryErrorException,
-                                                               EntityNotKnownException,
-                                                               EntityProxyOnlyException,
-                                                               UserNotAuthorizedException
-    {
-        final String  methodName        = "getEntityDetail";
-        final String  guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * The list of cohort connectors are retrieved for each request to ensure that any changes in
-         * the shape of the cohort are reflected immediately.
-         */
-        List<OMRSRepositoryConnector> cohortConnectors = enterpriseParentConnector.getCohortConnectors(methodName);
-
-        /*
-         * Ready to process the request.  Search results need to come from all members of the cohort.
-         * They need to be combined and then duplicates removed to create the final list of results.
-         * Some repositories may produce exceptions.  These exceptions are saved and one selected to
-         * be returned if there are no results from any repository.
-         */
-        EntityNotKnownException    entityNotKnownException    = null;
-        EntityProxyOnlyException   entityProxyOnlyException   = null;
-        UserNotAuthorizedException userNotAuthorizedException = null;
-        RepositoryErrorException   repositoryErrorException   = null;
-        Throwable                  anotherException           = null;
-
-        /*
-         * Loop through the metadata collections extracting the typedefs from each repository.
-         */
-        for (OMRSRepositoryConnector cohortConnector : cohortConnectors)
-        {
-            if (cohortConnector != null)
-            {
-                OMRSMetadataCollection   metadataCollection = cohortConnector.getMetadataCollection();
-
-                validateMetadataCollection(metadataCollection, methodName);
-
-                try
-                {
-                    /*
-                     * Issue the request and return if it succeeds
-                     */
-                    EntityDetail     entity = this.getEntityDetail(userId, guid);
-
-                    repositoryValidator.validateEntityFromStore(repositoryName, guid, entity, methodName);
-
-                    return entity;
-                }
-                catch (EntityNotKnownException error)
-                {
-                    entityNotKnownException = error;
-                }
-                catch (EntityProxyOnlyException error)
-                {
-                    entityProxyOnlyException = error;
-           

<TRUNCATED>

[18/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSRepositoryEventExchangeRule.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSRepositoryEventExchangeRule.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSRepositoryEventExchangeRule.java
deleted file mode 100644
index 90402d9..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSRepositoryEventExchangeRule.java
+++ /dev/null
@@ -1,332 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement;
-
-import org.apache.atlas.omrs.admin.properties.OpenMetadataExchangeRule;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.OMRSLogicErrorException;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryContentManager;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceHeader;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceType;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-
-import java.util.HashMap;
-import java.util.List;
-
-/**
- * OMRSRepositoryEventExchangeRule determines if particular types of events should be exchanged on the OMRS Topic.
- */
-public class OMRSRepositoryEventExchangeRule
-{
-    private String                             sourceName;
-    private OMRSRepositoryContentManager       repositoryContentManager;
-    private OpenMetadataExchangeRule           exchangeRule;
-    private HashMap<String, TypeDefSummary>    selectedTypesToProcess = new HashMap<>();
-
-
-    /**
-     * Constructor provides all of the objects used in the event exchange decision.
-     *
-     * @param sourceName - name of the caller
-     * @param repositoryContentManager - local manager of the type definitions (TypeDefs) used by the local repository.
-     * @param exchangeRule - enum detailing the types of events to process.
-     * @param selectedTypesToProcess - supplementary list to support selective processing of events.
-     */
-    public OMRSRepositoryEventExchangeRule(String                       sourceName,
-                                           OMRSRepositoryContentManager repositoryContentManager,
-                                           OpenMetadataExchangeRule     exchangeRule,
-                                           List<TypeDefSummary>         selectedTypesToProcess)
-    {
-        final String  methodName = "OMRSRepositoryEventExchangeRule constructor";
-
-        /*
-         * Validate the supplied parameters.
-         */
-        if (sourceName == null)
-        {
-            OMRSErrorCode  errorCode = OMRSErrorCode.NULL_SOURCE_NAME;
-
-            String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-        if (repositoryContentManager == null)
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_CONTENT_MANAGER;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-        if (exchangeRule == null)
-        {
-            OMRSErrorCode  errorCode = OMRSErrorCode.NULL_EXCHANGE_RULE;
-
-            String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-
-        this.sourceName = sourceName;
-        this.repositoryContentManager = repositoryContentManager;
-        this.exchangeRule = exchangeRule;
-
-        /*
-         * The selected types are loaded into a hash map for easy retrieval.
-         */
-        if (selectedTypesToProcess != null)
-        {
-            for (TypeDefSummary  typeDefSummary : selectedTypesToProcess)
-            {
-                if (typeDefSummary != null)
-                {
-                    String   typeDefSummaryGUID = typeDefSummary.getGUID();
-
-                    if (typeDefSummaryGUID != null)
-                    {
-                        this.selectedTypesToProcess.put(typeDefSummaryGUID, typeDefSummary);
-                    }
-                }
-            }
-        }
-    }
-
-
-    /**
-     * Determine if TypeDef events should be processed.  TypeDef events are processed unless the rule is set
-     * to registration events only.
-     *
-     * @return boolean flag indicating if the event should be processed.
-     */
-    public boolean processTypeDefEvents()
-    {
-        if (exchangeRule != OpenMetadataExchangeRule.REGISTRATION_ONLY)
-        {
-            return true;
-        }
-        else
-        {
-            return false;
-        }
-    }
-
-
-    /**
-     * Determine from the type of the instance if an instance event should be processed.
-     *
-     * @param typeDefGUID - unique identifier of the type
-     * @param typeDefName - unique name of the type
-     * @return boolean flag
-     */
-    public boolean processInstanceEvent(String   typeDefGUID, String   typeDefName)
-    {
-        if (repositoryContentManager == null)
-        {
-            /*
-             * A set up error
-             */
-            return false;
-        }
-        else if ((exchangeRule == OpenMetadataExchangeRule.REGISTRATION_ONLY) ||
-                 (exchangeRule == OpenMetadataExchangeRule.JUST_TYPEDEFS))
-        {
-            /*
-             * The rule says not to process instances
-             */
-            return false;
-        }
-        else if ((typeDefGUID == null) || (typeDefName == null))
-        {
-            /*
-             * The instance is invalid - this will be logged elsewhere.
-             */
-            return false;
-        }
-        else
-        {
-            /*
-             * Only active types should be processed.
-             */
-            if (repositoryContentManager.isActiveType(sourceName, typeDefGUID, typeDefName))
-            {
-                if (exchangeRule == OpenMetadataExchangeRule.ALL)
-                {
-                    /*
-                     * All active types should be processed
-                     */
-                    return true;
-                }
-                else
-                {
-                    /*
-                     * The exchange rule is either SELECTED_TYPES or LEARNED_TYPES - for either, the instance
-                     * is processed if its type is in the selectedTypesToProcess list.
-                     */
-                    if (selectedTypesToProcess.get(typeDefGUID) != null)
-                    {
-                        return true;
-                    }
-                }
-            }
-
-            return false;
-        }
-    }
-
-
-    /**
-     * Determine from the type of the instance if an instance event should be processed.
-     *
-     * @param typeDefSummary - details of the type
-     * @return boolean flag
-     */
-    public boolean processInstanceEvent(TypeDefSummary   typeDefSummary)
-    {
-        if (repositoryContentManager == null)
-        {
-            return false;
-        }
-        if (typeDefSummary == null)
-        {
-            return false;
-        }
-        else
-        {
-            return this.processInstanceEvent(typeDefSummary.getGUID(), typeDefSummary.getName());
-        }
-    }
-
-
-    /**
-     * Determine from the type of the instance if an instance event should be processed.
-     *
-     * @param instance - details of the instance to test
-     * @return boolean flag
-     */
-    public boolean processInstanceEvent(InstanceHeader instance)
-    {
-        if (repositoryContentManager == null)
-        {
-            return false;
-        }
-        else if (instance == null)
-        {
-            return false;
-        }
-        else
-        {
-            InstanceType type = instance.getType();
-
-            if (type == null)
-            {
-                return false;
-            }
-            else
-            {
-                return this.processInstanceEvent(type.getTypeDefGUID(), type.getTypeDefName());
-            }
-        }
-    }
-
-
-    /**
-     * If the rule is in learning mode, determine if the type of the instance should be added to the list
-     * of types being processed.  For this to happen, the instance header must include a valid type, the type
-     * must be an active type for this server and not already included in the list.
-     *
-     * Any errors discovered in the types, of this rule's set up result in a false result.  No diagnostics are
-     * created because this method is called very frequently and the errors will be trapped and logged elsewhere.
-     *
-     * @param instance - details of the instance to test
-     * @return boolean flag - true if the instance should be saved as a learned instance.
-     */
-    public boolean learnInstanceEvent(InstanceHeader instance)
-    {
-        final String methodName = "learnInstanceEvent";
-        final String parameterName = "instance";
-
-        if (repositoryContentManager == null)
-        {
-            /*
-             * This is a logic error the cause of which has probably already been logged.
-             */
-            return false;
-        }
-        else if (exchangeRule == OpenMetadataExchangeRule.LEARNED_TYPES)
-        {
-            InstanceType type = instance.getType();
-
-            if (type != null)
-            {
-                if (repositoryContentManager.isActiveType(sourceName, type.getTypeDefGUID(), type.getTypeDefName()))
-                {
-                    /*
-                     * All active types should be learned and added to the rule so save copies are updated by
-                     * incoming events.
-                     */
-                    if (selectedTypesToProcess.get(type.getTypeDefGUID()) == null)
-                    {
-                        try
-                        {
-                            TypeDef typeDef = repositoryContentManager.getTypeDef(sourceName,
-                                                                                  parameterName,
-                                                                                  parameterName,
-                                                                                  type.getTypeDefGUID(),
-                                                                                  type.getTypeDefName(),
-                                                                                  methodName);
-
-                            if (typeDef != null)
-                            {
-                                selectedTypesToProcess.put(typeDef.getGUID(), typeDef);
-                            }
-                        }
-                        catch (Throwable  error)
-                        {
-                            return false; /* Problem with type */
-                        }
-                    }
-
-                    /*
-                     * The instance should be saved if it is not already known.
-                     */
-                    return true;
-                }
-            }
-        }
-
-        return false; /* rule is not set to LEARNED_TYPES (or a problem with the instance) */
-    }
-}


[05/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSRepositoryValidator.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSRepositoryValidator.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSRepositoryValidator.java
deleted file mode 100644
index 3873e39..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSRepositoryValidator.java
+++ /dev/null
@@ -1,3299 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository.repositorycontentmanager;
-
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.*;
-import org.apache.atlas.omrs.metadatacollection.properties.MatchCriteria;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.*;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.*;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.Date;
-import java.util.Iterator;
-import java.util.List;
-
-/**
- * OMRSRepositoryValidator provides methods to validate TypeDefs and Instances returned from
- * an open metadata repository.  It is typically used by OMRS repository connectors and
- * repository event mappers.
- */
-public class OMRSRepositoryValidator implements OMRSTypeDefValidator, OMRSInstanceValidator
-{
-    private static OMRSRepositoryContentManager    defaultRepositoryContentManager = null;
-
-    private        OMRSRepositoryContentManager    repositoryContentManager;
-
-    private static final Logger log = LoggerFactory.getLogger(OMRSRepositoryValidator.class);
-
-
-
-    /**
-     * Default constructor - deprecated as a repository connector should get its repository validator
-     * from its superclass.
-     */
-    @Deprecated
-    public OMRSRepositoryValidator()
-    {
-        repositoryContentManager = defaultRepositoryContentManager;
-    }
-
-
-    /**
-     * Typical constructor used by the OMRS to create a repository validator for a repository connector.
-     *
-     * @param repositoryContentManager - holds details of valid types and provides the implementation of
-     *                                 the repository validator methods
-     */
-    public OMRSRepositoryValidator(OMRSRepositoryContentManager repositoryContentManager)
-    {
-        this.repositoryContentManager = repositoryContentManager;
-    }
-
-    /**
-     * Set up the local repository's content manager.  This maintains a cache of the local repository's type
-     * definitions and rules to provide helpers and validators for TypeDefs and instances that are
-     * exchanged amongst the open metadata repositories and open metadata access services (OMAS).
-     *
-     * @param repositoryContentManager - link to repository content manager.
-     */
-    public static synchronized void setRepositoryContentManager(OMRSRepositoryContentManager  repositoryContentManager)
-    {
-        OMRSRepositoryHelper.setRepositoryContentManager(repositoryContentManager);
-    }
-
-
-    /**
-     * Return a boolean flag indicating whether the list of TypeDefs passed are compatible with the
-     * all known typedefs.
-     *
-     * A valid TypeDef is one that matches name, GUID and version to the full list of TypeDefs.
-     * If a new TypeDef is present, it is added to the enterprise list.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefs - list of TypeDefs.
-     * @throws RepositoryErrorException - a conflicting or invalid TypeDef has been returned
-     */
-    public void   validateEnterpriseTypeDefs(String        sourceName,
-                                             List<TypeDef> typeDefs,
-                                             String        methodName) throws RepositoryErrorException
-    {
-        validateRepositoryContentManager(methodName);
-
-        repositoryContentManager.validateEnterpriseTypeDefs(sourceName, typeDefs, methodName);
-    }
-
-
-    /**
-     * Return a boolean flag indicating whether the list of TypeDefs passed are compatible with the
-     * all known typedefs.
-     *
-     * A valid TypeDef is one that matches name, GUID and version to the full list of TypeDefs.
-     * If a new TypeDef is present, it is added to the enterprise list.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDefs - list of AttributeTypeDefs.
-     * @throws RepositoryErrorException - a conflicting or invalid AttributeTypeDef has been returned
-     */
-    public void   validateEnterpriseAttributeTypeDefs(String                 sourceName,
-                                                      List<AttributeTypeDef> attributeTypeDefs,
-                                                      String                 methodName) throws RepositoryErrorException
-    {
-        validateRepositoryContentManager(methodName);
-
-        repositoryContentManager.validateEnterpriseAttributeTypeDefs(sourceName, attributeTypeDefs, methodName);
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef/AttributeTypeDef is in use in the repository.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @param typeName - unique name of the type
-     * @return boolean flag
-     */
-    public boolean isActiveType(String   sourceName, String typeGUID, String typeName)
-    {
-        final String  methodName = "isActiveType";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.isActiveType(sourceName, typeGUID, typeName);
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef/AttributeTypeDef is in use in the repository.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @return boolean flag
-     */
-    public boolean isActiveTypeId(String   sourceName, String typeGUID)
-    {
-        final String  methodName = "isActiveTypeId";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.isActiveTypeId(sourceName, typeGUID);
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef is one of the open metadata types.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @param typeName - unique name of the type
-     * @return boolean flag
-     */
-    public boolean isOpenType(String   sourceName, String typeGUID, String typeName)
-    {
-        final String  methodName = "isOpenType";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.isOpenType(sourceName, typeGUID, typeName);
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef is one of the open metadata types.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @return boolean flag
-     */
-    public boolean isOpenTypeId(String   sourceName, String typeGUID)
-    {
-        final String  methodName = "isOpenTypeId";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.isOpenTypeId(sourceName, typeGUID);
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef/AttributeTypeDef is in use in the repository.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @param typeName - unique name of the type
-     * @return boolean flag
-     */
-    public boolean isKnownType(String   sourceName, String typeGUID, String typeName)
-    {
-        final String  methodName = "isKnownType";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.isKnownType(sourceName, typeGUID, typeName);
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef/AttributeTypeDef is in use in the repository.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @return boolean flag
-     */
-    public boolean isKnownTypeId(String   sourceName, String typeGUID)
-    {
-        final String  methodName = "isKnownTypeId";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.isKnownTypeId(sourceName, typeGUID);
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef identifiers are from a single known type or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the TypeDef
-     * @param typeName - unique name of the TypeDef
-     * @return boolean result
-     */
-    public boolean validTypeId(String          sourceName,
-                               String typeGUID,
-                               String typeName)
-    {
-        final String  methodName = "validTypeId";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.validTypeId(sourceName, typeGUID, typeName);
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef identifiers are from a single known type or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefGUID - unique identifier of the TypeDef
-     * @param typeDefName - unique name of the TypeDef
-     * @param category - category for the TypeDef
-     * @return boolean result
-     */
-    public boolean validTypeDefId(String          sourceName,
-                                  String          typeDefGUID,
-                                  String          typeDefName,
-                                  TypeDefCategory category)
-    {
-        final String  methodName = "validTypeDefId";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.validTypeDefId(sourceName, typeDefGUID, typeDefName, category);
-    }
-
-    /**
-     * Return boolean indicating whether the AttributeTypeDef identifiers are from a single known type or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDefGUID - unique identifier of the AttributeTypeDef
-     * @param attributeTypeDefName - unique name of the AttributeTypeDef
-     * @param category - category for the AttributeTypeDef
-     * @return boolean result
-     */
-    public boolean validAttributeTypeDefId(String                   sourceName,
-                                           String                   attributeTypeDefGUID,
-                                           String                   attributeTypeDefName,
-                                           AttributeTypeDefCategory category)
-    {
-        final String  methodName = "validAttributeTypeDefId";
-
-        validateRepositoryContentManager(methodName);
-
-       return repositoryContentManager.validAttributeTypeDefId(sourceName,
-                                                               attributeTypeDefGUID,
-                                                               attributeTypeDefName,
-                                                               category);
-    }
-
-
-
-    /**
-     * Return boolean indicating whether the TypeDef identifiers are from a single known type or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefGUID - unique identifier of the TypeDef
-     * @param typeDefName - unique name of the TypeDef
-     * @param typeDefVersion - version of the type
-     * @param category - category for the TypeDef
-     * @return boolean result
-     */
-    public boolean validTypeDefId(String          sourceName,
-                                  String          typeDefGUID,
-                                  String          typeDefName,
-                                  long            typeDefVersion,
-                                  TypeDefCategory category)
-    {
-        final String  methodName = "validTypeDefId";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.validTypeDefId(sourceName,
-                                                       typeDefGUID,
-                                                       typeDefName,
-                                                       typeDefVersion,
-                                                       category);
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef identifiers are from a single known type or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDefGUID - unique identifier of the TypeDef
-     * @param attributeTypeDefName - unique name of the TypeDef
-     * @param attributeTypeDefVersion - version of the type
-     * @param category - category for the TypeDef
-     * @return boolean result
-     */
-    public boolean validAttributeTypeDefId(String                   sourceName,
-                                           String                   attributeTypeDefGUID,
-                                           String                   attributeTypeDefName,
-                                           long                     attributeTypeDefVersion,
-                                           AttributeTypeDefCategory category)
-    {
-        final String  methodName = "validAttributeTypeDefId";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.validAttributeTypeDefId(sourceName,
-                                                                attributeTypeDefGUID,
-                                                                attributeTypeDefName,
-                                                                attributeTypeDefVersion,
-                                                                category);
-    }
-
-
-
-    /**
-     * Return boolean indicating whether the supplied TypeDef is valid or not.
-     *
-     * @param sourceName - source of the TypeDef (used for logging)
-     * @param typeDef - TypeDef to test
-     * @return boolean result
-     */
-    public boolean validTypeDef(String         sourceName,
-                                TypeDef        typeDef)
-    {
-        final String methodName = "validTypeDef";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.validTypeDef(sourceName, typeDef);
-    }
-
-
-    /**
-     * Return boolean indicating whether the supplied AttributeTypeDef is valid or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDef - TypeDef to test
-     * @return boolean result
-     */
-    public boolean validAttributeTypeDef(String           sourceName,
-                                         AttributeTypeDef attributeTypeDef)
-    {
-        final String  methodName = "validAttributeTypeDef";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.validAttributeTypeDef(sourceName, attributeTypeDef);
-    }
-
-
-    /**
-     * Return boolean indicating whether the supplied TypeDefSummary is valid or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefSummary - TypeDefSummary to test.
-     * @return boolean result.
-     */
-    public boolean validTypeDefSummary(String                sourceName,
-                                       TypeDefSummary        typeDefSummary)
-    {
-        final String  methodName = "validTypeDefSummary";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.validTypeDefSummary(sourceName, typeDefSummary);
-    }
-
-
-
-    /*
-     * =====================
-     * OMRSInstanceValidator
-     */
-
-    /**
-     * Test that the supplied entity is valid.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param entity - entity to test
-     * @return boolean result
-     */
-    public boolean validEntity(String        sourceName,
-                               EntitySummary entity)
-    {
-        if (entity == null)
-        {
-            log.error("Null entity from " + sourceName);
-            return false;
-        }
-
-        InstanceType instanceType = entity.getType();
-
-        if (instanceType == null)
-        {
-            log.error("Null instance type in entity from " + sourceName);
-            return false;
-        }
-
-        if (! validInstanceId(sourceName,
-                              instanceType.getTypeDefGUID(),
-                              instanceType.getTypeDefName(),
-                              instanceType.getTypeDefCategory(),
-                              entity.getGUID()))
-        {
-            log.error("Null entity guid from " + sourceName);
-            return false;
-        }
-
-        return true;
-    }
-
-
-    /**
-     * Test that the supplied entity is valid.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param entity - entity to test
-     * @return boolean result
-     */
-    public boolean validEntity(String      sourceName,
-                               EntityProxy entity)
-    {
-        return this.validEntity(sourceName, (EntitySummary)entity);
-    }
-
-
-    /**
-     * Test that the supplied entity is valid.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param entity - entity to test
-     * @return boolean result
-     */
-    public boolean validEntity(String       sourceName,
-                               EntityDetail entity)
-    {
-        return this.validEntity(sourceName, (EntitySummary)entity);
-    }
-
-
-    /**
-     * Test that the supplied relationship is valid.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param relationship - relationship to test
-     * @return boolean result
-     */
-    public boolean validRelationship(String       sourceName,
-                                     Relationship relationship)
-    {
-        if (relationship == null)
-        {
-            log.error("Null relationship from " + sourceName);
-            return false;
-        }
-
-        InstanceType instanceType = relationship.getType();
-
-        if (instanceType == null)
-        {
-            log.error("Null instance type in relationship from " + sourceName);
-            return false;
-        }
-
-        if (! validInstanceId(sourceName,
-                              instanceType.getTypeDefGUID(),
-                              instanceType.getTypeDefName(),
-                              instanceType.getTypeDefCategory(),
-                              relationship.getGUID()))
-        {
-            log.error("Null relationship guid from " + sourceName);
-            return false;
-        }
-
-        String          homeMetadataCollectionId = relationship.getMetadataCollectionId();
-
-        if (homeMetadataCollectionId == null)
-        {
-            log.error("Null home metadata collection id for relationship " + relationship.getGUID() + " from " + sourceName);
-            return false;
-        }
-
-        return true;
-    }
-
-
-    /**
-     * Verify that the identifiers for an instance are correct.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefGUID - unique identifier for the type.
-     * @param typeDefName - unique name for the type.
-     * @param category - expected category of the instance.
-     * @param instanceGUID - unique identifier for the instance.
-     * @return boolean indicating whether the identifiers are ok.
-     */
-    public boolean validInstanceId(String           sourceName,
-                                   String           typeDefGUID,
-                                   String           typeDefName,
-                                   TypeDefCategory  category,
-                                   String           instanceGUID)
-    {
-        if (instanceGUID == null)
-        {
-            log.error("Null instance guid from " + sourceName);
-            return false;
-        }
-
-        if (! validTypeDefId(sourceName,
-                             typeDefGUID,
-                             typeDefName,
-                             category))
-        {
-            /*
-             * Error messages already logged
-             */
-            return false;
-        }
-
-        return true;
-    }
-
-
-    /* ==============================================================
-     * Simple parameter validation methods needed by all repositories
-     * ==============================================================
-     */
-
-
-    /**
-     * Validate that the supplied user Id is not null.
-     *
-     * @param sourceName - name of source of request.
-     * @param userId - userId passed on call to this metadata collection.
-     * @param methodName - name of method requesting the validation.
-     * @throws UserNotAuthorizedException - the userId is invalid
-     */
-    public  void validateUserId(String  sourceName,
-                                String  userId,
-                                String  methodName) throws UserNotAuthorizedException
-    {
-        if ("".equals(userId))
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_USER_ID;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage("userId", methodName, sourceName);
-
-            throw new UserNotAuthorizedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 methodName,
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that a TypeDef's identifiers are not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param guidParameterName - name of the parameter that passed the guid.
-     * @param nameParameterName - name of the parameter that passed the name.
-     * @param guid - unique identifier for a type or an instance passed on the request
-     * @param name - name of TypeDef.
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no guid provided
-     */
-    public  void validateTypeDefIds(String sourceName,
-                                    String guidParameterName,
-                                    String nameParameterName,
-                                    String guid,
-                                    String name,
-                                    String methodName) throws InvalidParameterException
-    {
-        if (guid == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_TYPEDEF_IDENTIFIER;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(guidParameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-        else if (name == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NO_TYPEDEF_NAME;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(nameParameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that an AttributeTypeDef's identifiers are not null and are recognized.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param guidParameterName - name of the parameter that passed the guid.
-     * @param nameParameterName - name of the parameter that passed the name.
-     * @param guid - unique identifier for a type or an instance passed on the request
-     * @param name - name of TypeDef.
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no guid, or name provided
-     */
-    public  void validateAttributeTypeDefIds(String sourceName,
-                                             String guidParameterName,
-                                             String nameParameterName,
-                                             String guid,
-                                             String name,
-                                             String methodName) throws InvalidParameterException
-    {
-        if (guid == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_ATTRIBUTE_TYPEDEF_IDENTIFIER;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(guidParameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-        else if (name == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NO_ATTRIBUTE_TYPEDEF_NAME;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(nameParameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that type's identifier is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param guidParameterName - name of the parameter that passed the guid.
-     * @param guid - unique identifier for a type or an instance passed on the request
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no guid provided
-     * @throws TypeErrorException - guid is not for a recognized type
-     */
-    public  void validateTypeGUID(String sourceName,
-                                  String guidParameterName,
-                                  String guid,
-                                  String methodName) throws InvalidParameterException,
-                                                            TypeErrorException
-    {
-        if (guid == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_TYPEDEF_IDENTIFIER;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(guidParameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-
-        validateOptionalTypeGUID(sourceName, guidParameterName, guid, methodName);
-    }
-
-
-    /**
-     * Validate that type's identifier is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param guidParameterName - name of the parameter that passed the guid.
-     * @param guid - unique identifier for a type or an instance passed on the request
-     * @param methodName - method receiving the call
-     * @throws TypeErrorException - unknown type guid
-     */
-    public  void validateOptionalTypeGUID(String sourceName,
-                                          String guidParameterName,
-                                          String guid,
-                                          String methodName) throws TypeErrorException
-    {
-        if (guid != null)
-        {
-            if (! isKnownTypeId(sourceName, guid))
-            {
-                OMRSErrorCode errorCode    = OMRSErrorCode.TYPEDEF_ID_NOT_KNOWN;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(guid,
-                                                                                guidParameterName,
-                                                                                methodName,
-                                                                                sourceName);
-
-                throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                             this.getClass().getName(),
-                                             methodName,
-                                             errorMessage,
-                                             errorCode.getSystemAction(),
-                                             errorCode.getUserAction());
-            }
-        }
-    }
-
-
-    /**
-     * Verify that a TypeDefPatch is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param patch - patch to test
-     * @param methodName - calling method
-     * @throws InvalidParameterException - the patch is null
-     * @throws PatchErrorException - the patch is invalid
-     */
-    public void validateTypeDefPatch(String       sourceName,
-                                     TypeDefPatch patch,
-                                     String       methodName) throws InvalidParameterException, PatchErrorException
-    {
-        if (patch == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_TYPEDEF_PATCH;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that if a type's identifier is passed then it is valid.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param guidParameterName - name of the parameter that passed the guid.
-     * @param guid - unique identifier for a type or an instance passed on the request
-     * @param methodName - method receiving the call
-     * @throws TypeErrorException - invalid provided
-     */
-    public  void validateInstanceTypeGUID(String sourceName,
-                                          String guidParameterName,
-                                          String guid,
-                                          String methodName) throws TypeErrorException
-    {
-        if (guid == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.BAD_TYPEDEF_ID_FOR_INSTANCE;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(guidParameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that type's name is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param nameParameterName - name of the parameter that passed the name.
-     * @param name - unique identifier for a type or an instance passed on the request
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no name provided
-     */
-    public  void validateTypeName(String sourceName,
-                                  String nameParameterName,
-                                  String name,
-                                  String methodName) throws InvalidParameterException
-    {
-        if (name == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NO_TYPEDEF_NAME;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(nameParameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that a TypeDef's category is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param nameParameterName - name of the parameter that passed the name.
-     * @param category - category of TypeDef
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no name provided
-     */
-    public  void validateTypeDefCategory(String          sourceName,
-                                         String          nameParameterName,
-                                         TypeDefCategory category,
-                                         String          methodName) throws InvalidParameterException
-    {
-        if (category == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NO_TYPEDEF_CATEGORY;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(nameParameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that a AttributeTypeDef's category is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param nameParameterName - name of the parameter that passed the name.
-     * @param category - category of TypeDef
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no name provided
-     */
-    public  void validateAttributeTypeDefCategory(String                   sourceName,
-                                                  String                   nameParameterName,
-                                                  AttributeTypeDefCategory category,
-                                                  String                   methodName) throws InvalidParameterException
-    {
-        if (category == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NO_ATTRIBUTE_TYPEDEF_CATEGORY;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(nameParameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate the content of a new TypeDef is valid.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the parameter that passed the typeDef.
-     * @param typeDef - unique identifier for a type or an instance passed on the request
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no typeDef provided
-     * @throws InvalidTypeDefException - invalid typeDef provided
-     */
-    public  void validateTypeDef(String  sourceName,
-                                 String  parameterName,
-                                 TypeDef typeDef,
-                                 String  methodName) throws InvalidParameterException, InvalidTypeDefException
-    {
-        if (typeDef == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_TYPEDEF;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(parameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-
-        validateTypeDefIds(sourceName,
-                           parameterName + ".getGUID",
-                           parameterName + ".getName",
-                           typeDef.getGUID(),
-                           typeDef.getName(),
-                           methodName);
-
-        validateTypeDefCategory(sourceName,
-                                parameterName + ".getCategory",
-                                typeDef.getCategory(),
-                                methodName);
-
-
-    }
-
-
-    /**
-     * Validate the content of a new TypeDef is known.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the parameter that passed the typeDef.
-     * @param typeDef - unique identifier for a type or an instance passed on the request
-     * @param methodName - method receiving the call
-     * @throws TypeDefNotKnownException - no recognized typeDef provided
-     */
-    public  void validateKnownTypeDef(String  sourceName,
-                                      String  parameterName,
-                                      TypeDef typeDef,
-                                      String  methodName) throws TypeDefNotKnownException
-    {
-        final String  thisMethodName = "validateKnownTypeDef";
-
-        validateRepositoryContentManager(thisMethodName);
-
-        if (! repositoryContentManager.isKnownType(sourceName, typeDef.getGUID(), typeDef.getName()))
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.TYPEDEF_NOT_KNOWN;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(typeDef.getName(),
-                                                                            typeDef.getGUID(),
-                                                                            parameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new TypeDefNotKnownException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction());
-
-        }
-    }
-
-
-    /**
-     * Validate the content of a new TypeDef is known.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the parameter that passed the typeDef.
-     * @param typeDef - unique identifier for a type or an instance passed on the request
-     * @param methodName - method receiving the call
-     * @throws TypeDefKnownException - the TypeDef is already defined
-     * @throws TypeDefConflictException - the TypeDef is already defined - but differently
-     */
-    public  void validateUnknownTypeDef(String  sourceName,
-                                        String  parameterName,
-                                        TypeDef typeDef,
-                                        String  methodName) throws TypeDefKnownException,
-                                                                   TypeDefConflictException
-    {
-        final String  thisMethodName = "validateUnknownTypeDef";
-
-        validateRepositoryContentManager(thisMethodName);
-
-        if (repositoryContentManager.isKnownType(sourceName, typeDef.getGUID(), typeDef.getName()))
-        {
-            // todo validate that the existing typeDef matches the new one.
-
-            OMRSErrorCode errorCode = OMRSErrorCode.TYPEDEF_ALREADY_DEFINED;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(typeDef.getName(),
-                                                                                                     typeDef.getGUID(),
-                                                                                                     sourceName);
-
-            throw new TypeDefKnownException(errorCode.getHTTPErrorCode(),
-                                            this.getClass().getName(),
-                                            methodName,
-                                            errorMessage,
-                                            errorCode.getSystemAction(),
-                                            errorCode.getUserAction());
-
-        }
-    }
-
-
-    /**
-     * Validate the content of a new TypeDef is known.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the parameter that passed the typeDef.
-     * @param attributeTypeDef - unique identifier for an attribute type or an instance passed on the request
-     * @param methodName - method receiving the call
-     * @throws TypeDefKnownException - the TypeDef is already defined
-     * @throws TypeDefConflictException - the TypeDef is already defined - but differently
-     */
-    public  void validateUnknownAttributeTypeDef(String           sourceName,
-                                                 String           parameterName,
-                                                 AttributeTypeDef attributeTypeDef,
-                                                 String           methodName) throws TypeDefKnownException,
-                                                                                     TypeDefConflictException
-    {
-        final String  thisMethodName = "validateUnknownTypeDef";
-
-        validateRepositoryContentManager(thisMethodName);
-
-        if (repositoryContentManager.isKnownType(sourceName,
-                                                 attributeTypeDef.getGUID(),
-                                                 attributeTypeDef.getName()))
-        {
-            // todo validate that the existing typeDef matches the new one.
-
-            OMRSErrorCode errorCode = OMRSErrorCode.ATTRIBUTE_TYPEDEF_ALREADY_DEFINED;
-            String errorMessage = errorCode.getErrorMessageId()
-                    + errorCode.getFormattedErrorMessage(attributeTypeDef.getName(),
-                                                         attributeTypeDef.getGUID(),
-                                                         sourceName);
-
-            throw new TypeDefKnownException(errorCode.getHTTPErrorCode(),
-                                            this.getClass().getName(),
-                                            methodName,
-                                            errorMessage,
-                                            errorCode.getSystemAction(),
-                                            errorCode.getUserAction());
-
-        }
-    }
-
-
-    /**
-     * Validate the content of a TypeDef associated with a metadata instance.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the parameter that passed the typeDef.
-     * @param typeDef - unique identifier for a type or an instance passed on the request
-     * @param methodName - method receiving the call
-     * @throws TypeErrorException - no typeDef provided
-     * @throws RepositoryErrorException - the TypeDef from the repository is in error.
-     */
-    public  void validateTypeDefForInstance(String  sourceName,
-                                            String  parameterName,
-                                            TypeDef typeDef,
-                                            String  methodName) throws TypeErrorException,
-                                                                       RepositoryErrorException
-    {
-        if (typeDef == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_TYPEDEF;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(parameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-
-        try
-        {
-            validateTypeDefIds(sourceName,
-                               parameterName + ".getGUID",
-                               parameterName + ".getName",
-                               typeDef.getGUID(),
-                               typeDef.getName(),
-                               methodName);
-
-            validateTypeDefCategory(sourceName,
-                                    parameterName + ".getCategory",
-                                    typeDef.getCategory(),
-                                    methodName);
-        }
-        catch (Throwable    error)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.BAD_TYPEDEF;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(parameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that the supplied TypeDef GUID and name matches the type associated with a metadata instance.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefGUID - the supplied typeDef GUID.
-     * @param typeDefName - the supplied typeDef name.
-     * @param instance - instance retrieved from the store with the supplied instance guid
-     * @param methodName - method making this call
-     * @throws InvalidParameterException - incompatibility detected between the TypeDef and the instance's type
-     * @throws RepositoryErrorException - the instance from the repository is in error.
-     */
-    public  void validateTypeForInstanceDelete(String         sourceName,
-                                               String         typeDefGUID,
-                                               String         typeDefName,
-                                               InstanceHeader instance,
-                                               String         methodName) throws InvalidParameterException,
-                                                                                 RepositoryErrorException
-    {
-        /*
-         * Just make sure the instance has a type :)
-         */
-        this.validateInstanceType(sourceName, instance);
-
-
-        /*
-         * Both the GUID and the name must match
-         */
-        if ((! typeDefGUID.equals(instance.getType().getTypeDefGUID())) ||
-            (! typeDefName.equals(instance.getType().getTypeDefName())))
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.BAD_TYPEDEF_IDS_FOR_DELETE;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(typeDefName,
-                                                                            typeDefGUID,
-                                                                            methodName,
-                                                                            instance.getGUID(),
-                                                                            sourceName);
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-
-    }
-
-
-    /**
-     * Validate the content of a new AttributeTypeDef.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the parameter that passed the attributeTypeDef.
-     * @param attributeTypeDef - unique identifier for a type or an instance passed on the request
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no attributeTypeDef provided
-     * @throws InvalidTypeDefException - bad attributeTypeDef provided
-     */
-    public  void validateAttributeTypeDef(String           sourceName,
-                                          String           parameterName,
-                                          AttributeTypeDef attributeTypeDef,
-                                          String           methodName) throws InvalidParameterException,
-                                                                              InvalidTypeDefException
-    {
-        if (attributeTypeDef == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_ATTRIBUTE_TYPEDEF;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(parameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-
-        validateAttributeTypeDefIds(sourceName,
-                                    parameterName + ".getGUID",
-                                    parameterName + ".getName",
-                                    attributeTypeDef.getGUID(),
-                                    attributeTypeDef.getName(),
-                                    methodName);
-
-        validateAttributeTypeDefCategory(sourceName,
-                                         parameterName + ".getCategory",
-                                         attributeTypeDef.getCategory(),
-                                         methodName);
-    }
-
-
-    /**
-     * Validate that type's name is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the parameter that passed the name.
-     * @param gallery - typeDef gallery
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no name provided
-     */
-    public  void validateTypeDefGallery(String         sourceName,
-                                        String         parameterName,
-                                        TypeDefGallery gallery,
-                                        String         methodName) throws InvalidParameterException
-    {
-        if (gallery == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_TYPEDEF_GALLERY;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(parameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that the type's name is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param standard - name of the standard - null means any.
-     * @param organization - name of the organization - null means any.
-     * @param identifier - identifier of the element in the standard - null means any.
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no name provided
-     */
-    public  void validateExternalId(String sourceName,
-                                    String standard,
-                                    String organization,
-                                    String identifier,
-                                    String methodName) throws InvalidParameterException
-    {
-        if ((standard == null) && (organization == null) || (identifier == null))
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NO_EXTERNAL_ID;
-
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                     sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that an entity's identifier is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param guidParameterName - name of the parameter that passed the guid.
-     * @param guid - unique identifier for a type or an instance passed on the request
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no guid provided
-     */
-    public  void validateGUID(String sourceName,
-                              String guidParameterName,
-                              String guid,
-                              String methodName) throws InvalidParameterException
-    {
-        if (guid == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NO_GUID;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(guidParameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that a home metadata collection identifier is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param guidParameterName - name of the parameter that passed the guid.
-     * @param guid - unique identifier for a type or an instance passed on the request
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no guid provided
-     */
-    public  void validateHomeMetadataGUID(String sourceName,
-                                          String guidParameterName,
-                                          String guid,
-                                          String methodName) throws InvalidParameterException
-    {
-        if (guid == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_HOME_METADATA_COLLECTION_ID;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(guidParameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-
-    /**
-     * Validate that a home metadata collection identifier in an instance is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param instance - instance to test.
-     * @param methodName - method receiving the call
-     * @throws RepositoryErrorException - no guid provided
-     */
-    public  void validateHomeMetadataGUID(String           sourceName,
-                                          InstanceHeader   instance,
-                                          String           methodName) throws RepositoryErrorException
-    {
-        final String  thisMethodName = "validateHomeMetadataGUID";
-
-        if (instance == null)
-        {
-            this.throwValidatorLogicError(sourceName, methodName, thisMethodName);
-        }
-
-        if (instance.getMetadataCollectionId() == null)
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_INSTANCE_METADATA_COLLECTION_ID;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(instance.getGUID(),
-                                                                                                     sourceName,
-                                                                                                     methodName,
-                                                                                                     instance.toString());
-
-            throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that the asOfTime parameter is not for the future.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the parameter that passed the guid.
-     * @param asOfTime - unique name for a classification type
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - asOfTime is for the future
-     */
-    public  void validateAsOfTime(String sourceName,
-                                  String parameterName,
-                                  Date   asOfTime,
-                                  String methodName) throws InvalidParameterException
-    {
-        if (asOfTime != null)
-        {
-            Date   now = new Date();
-
-            if (asOfTime.after(now))
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.REPOSITORY_NOT_CRYSTAL_BALL;
-                String errorMessage = errorCode.getErrorMessageId()
-                        + errorCode.getFormattedErrorMessage(asOfTime.toString(),
-                                                             parameterName,
-                                                             methodName,
-                                                             sourceName);
-
-                throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                    this.getClass().getName(),
-                                                    methodName,
-                                                    errorMessage,
-                                                    errorCode.getSystemAction(),
-                                                    errorCode.getUserAction());
-            }
-        }
-    }
-
-
-    /**
-     * Validate that a page size parameter is not negative.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the parameter that passed the guid.
-     * @param pageSize - number of elements to return on a request
-     * @param methodName - method receiving the call
-     * @throws PagingErrorException - pageSize is negative
-     */
-    public  void validatePageSize(String sourceName,
-                                  String parameterName,
-                                  int    pageSize,
-                                  String methodName) throws PagingErrorException
-    {
-        if (pageSize < 0)
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NEGATIVE_PAGE_SIZE;
-            String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage(Integer.toString(pageSize),
-                                                                     parameterName,
-                                                                     methodName,
-                                                                     sourceName);
-
-            throw new PagingErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-
-        }
-    }
-
-
-    /**
-     * Validate that a classification name is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the parameter that passed the guid.
-     * @param classificationName - unique name for a classification type
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - classification name is null
-     */
-    public  void validateClassificationName(String sourceName,
-                                            String parameterName,
-                                            String classificationName,
-                                            String methodName) throws InvalidParameterException
-    {
-        if (classificationName == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_CLASSIFICATION_NAME;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(parameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that a classification is valid for the entity.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param classificationName - unique name for a classification type
-     * @param propertiesParameterName - name of the parameter that passed the properties.
-     * @param classificationProperties - properties to test
-     * @param methodName - method receiving the call
-     * @throws PropertyErrorException - classification name is null
-     * @throws TypeErrorException - the classification is invalid for this entity
-     */
-    public  void validateClassificationProperties(String             sourceName,
-                                                  String             classificationName,
-                                                  String             propertiesParameterName,
-                                                  InstanceProperties classificationProperties,
-                                                  String             methodName) throws PropertyErrorException,
-                                                                                        TypeErrorException
-    {
-        validateRepositoryContentManager(methodName);
-
-        TypeDef   classificationTypeDef = repositoryContentManager.getTypeDefByName(sourceName, classificationName);
-
-        if (classificationTypeDef != null)
-        {
-            validatePropertiesForType(sourceName, propertiesParameterName, classificationTypeDef, classificationProperties, methodName);
-        }
-        else
-        {
-            /*
-             * Logic error as the type should be valid
-             */
-            final String   thisMethodName = "validateClassificationProperties";
-
-            throwValidatorLogicError(sourceName, methodName, thisMethodName);
-        }
-    }
-
-
-    /**
-     * Validate that a classification is valid for the entity.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param classificationParameterName - name of the parameter that passed the guid.
-     * @param classificationName - unique name for a classification type
-     * @param entityTypeName - name of entity type
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - classification name is null
-     * @throws ClassificationErrorException - the classification is invalid for this entity
-     */
-    public  void validateClassification(String             sourceName,
-                                        String             classificationParameterName,
-                                        String             classificationName,
-                                        String             entityTypeName,
-                                        String             methodName) throws InvalidParameterException,
-                                                                              ClassificationErrorException
-    {
-        validateRepositoryContentManager(methodName);
-
-        this.validateClassificationName(sourceName, classificationParameterName, classificationName, methodName);
-
-        if (entityTypeName != null)
-        {
-            if (!repositoryContentManager.isValidClassificationForEntity(sourceName,
-                                                                             classificationName,
-                                                                             entityTypeName,
-                                                                             methodName))
-            {
-                OMRSErrorCode errorCode    = OMRSErrorCode.INVALID_CLASSIFICATION_FOR_ENTITY;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(sourceName,
-                                                                                classificationName,
-                                                                                entityTypeName);
-
-                throw new ClassificationErrorException(errorCode.getHTTPErrorCode(),
-                                                       this.getClass().getName(),
-                                                       methodName,
-                                                       errorMessage,
-                                                       errorCode.getSystemAction(),
-                                                       errorCode.getUserAction());
-            }
-        }
-    }
-
-
-    /**
-     * Validate that a classification is valid for the entity.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the parameter that passed the guid.
-     * @param classifications - list of classifications
-     * @param entityTypeName - name of entity type
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - classification name is null
-     * @throws ClassificationErrorException - the classification is invalid for this entity
-     * @throws PropertyErrorException - the classification's properties are invalid for its type
-     * @throws TypeErrorException - the classification's type is invalid
-     */
-    public  void validateClassificationList(String               sourceName,
-                                            String               parameterName,
-                                            List<Classification> classifications,
-                                            String               entityTypeName,
-                                            String               methodName) throws InvalidParameterException,
-                                                                                    ClassificationErrorException,
-                                                                                    PropertyErrorException,
-                                                                                    TypeErrorException
-    {
-        validateRepositoryContentManager(methodName);
-
-        if (classifications != null)
-        {
-            for (Classification classification : classifications)
-            {
-                if (classification != null)
-                {
-
-                    this.validateClassification(sourceName,
-                                                parameterName,
-                                                classification.getName(),
-                                                entityTypeName,
-                                                methodName);
-
-
-                    this.validatePropertiesForType(sourceName,
-                                                   parameterName,
-                                                   repositoryContentManager.getTypeDefByName(sourceName,
-                                                                                             classification.getName()),
-                                                   classification.getProperties(),
-                                                   methodName);
-                }
-                else
-                {
-                    OMRSErrorCode errorCode    = OMRSErrorCode.NULL_CLASSIFICATION_NAME;
-                    String        errorMessage = errorCode.getErrorMessageId()
-                                               + errorCode.getFormattedErrorMessage(parameterName,
-                                                                                    methodName,
-                                                                                    sourceName);
-
-                    throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                        this.getClass().getName(),
-                                                        methodName,
-                                                        errorMessage,
-                                                        errorCode.getSystemAction(),
-                                                        errorCode.getUserAction());
-                }
-            }
-        }
-    }
-
-
-    /**
-     * Validate that a TypeDef match criteria set of properties is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the parameter that passed the match criteria.
-     * @param matchCriteria - match criteria properties
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no guid provided
-     */
-    public  void validateMatchCriteria(String            sourceName,
-                                       String            parameterName,
-                                       TypeDefProperties matchCriteria,
-                                       String            methodName) throws InvalidParameterException
-    {
-        if (matchCriteria == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NO_MATCH_CRITERIA;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(parameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that a metadata instance match criteria and set of properties are either both null or
-     * both not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param matchCriteriaParameterName - name of the parameter that passed the match criteria.
-     * @param matchPropertiesParameterName - name of the parameter that passed the match criteria.
-     * @param matchCriteria - match criteria enum
-     * @param matchProperties - match properties
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no guid provided
-     */
-    public  void validateMatchCriteria(String             sourceName,
-                                       String             matchCriteriaParameterName,
-                                       String             matchPropertiesParameterName,
-                                       MatchCriteria      matchCriteria,
-                                       InstanceProperties matchProperties,
-                                       String             methodName) throws InvalidParameterException
-    {
-        if ((matchCriteria == null) && (matchProperties == null))
-        {
-            return;
-        }
-
-        if (matchCriteria == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NO_MATCH_CRITERIA;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(matchCriteriaParameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-
-        if (matchProperties == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NO_MATCH_CRITERIA;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(matchPropertiesParameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that a search criteria  is not null.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the parameter that passed the search criteria.
-     * @param searchCriteria - match criteria properties
-     * @param methodName - method receiving the call
-     * @throws InvalidParameterException - no guid provided
-     */
-    public  void validateSearchCriteria(String sourceName,
-                                        String parameterName,
-                                        String searchCriteria,
-                                        String methodName) throws InvalidParameterException
-    {
-        if ((searchCriteria == null) || ("".equals(searchCriteria)))
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NO_SEARCH_CRITERIA;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(parameterName,
-                                                                            methodName,
-                                                                            sourceName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that the properties for a metadata instance match its TypeDef
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of the properties parameter.
-     * @param typeDef - type information to validate against.
-     * @param properties - proposed properties
-     * @param methodName - method receiving the call
-     * @throws PropertyErrorException - invalid property
-     */
-    public  void validatePropertiesForType(String             sourceName,
-                                           String             parameterName,
-                                           TypeDef            typeDef,
-                                           InstanceProperties properties,
-                                           String             methodName) throws PropertyErrorException
-    {
-        if (typeDef == null)
-        {
-            /*
-             * Logic error as the type should be valid
-             */
-            final String   thisMethodName = "validatePropertiesForType";
-
-            throwValidatorLogicError(sourceName, methodName, thisMethodName);
-        }
-
-        if (properties == null)
-        {
-            /*
-             * No properties to evaluate so return
-             */
-            return;
-        }
-
-
-        String  typeDefCategoryName = null;
-        String  typeDefName         = typeDef.getName();
-
-        if (typeDef.getCategory() != null)
-        {
-            typeDefCategoryName = typeDef.getCategory().getTypeName();
-        }
-
-        List<TypeDefAttribute>  typeDefAttributes = typeDef.getPropertiesDefinition();
-
-        if (typeDefAttributes == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NO_PROPERTIES_FOR_TYPE;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(typeDefCategoryName,
-                                                                            typeDefName,
-                                                                            sourceName);
-
-            throw new PropertyErrorException(errorCode.getHTTPErrorCode(),
-                                             this.getClass().getName(),
-                                             methodName,
-                                             errorMessage,
-                                             errorCode.getSystemAction(),
-                                             errorCode.getUserAction());
-        }
-
-        /*
-         * Need to step through each of the proposed properties and validate that the name and value are
-         * present and they match the typeDef
-         */
-        Iterator    propertyList = properties.getPropertyNames();
-
-        while (propertyList.hasNext())
-        {
-            String   propertyName = propertyList.next().toString();
-
-            if (propertyName == null)
-            {
-                OMRSErrorCode errorCode    = OMRSErrorCode.NULL_PROPERTY_NAME_FOR_INSTANCE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(parameterName,
-                                                                                methodName,
-                                                                                sourceName);
-
-                throw new PropertyErro

<TRUNCATED>

[04/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSTypeDefHelper.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSTypeDefHelper.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSTypeDefHelper.java
deleted file mode 100644
index ed2ed81..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSTypeDefHelper.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository.repositorycontentmanager;
-
-import org.apache.atlas.omrs.ffdc.exception.TypeErrorException;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.AttributeTypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefGallery;
-
-
-/**
- * OMRSTypeDefHelper provides methods for manipulating TypeDefs and creating metadata instances with the correct TypeDef
- * headers
- */
-public interface OMRSTypeDefHelper
-{
-    /**
-     * Return the list of typedefs active in the local repository.
-     *
-     * @return TypeDef gallery
-     */
-    TypeDefGallery   getActiveTypeDefGallery();
-
-
-    /**
-     * Return the list of typedefs known by the local repository.
-     *
-     * @return TypeDef gallery
-     */
-    TypeDefGallery   getKnownTypeDefGallery();
-
-
-    /**
-     * Return the TypeDef identified by the name supplied by the caller.  This is used in the connectors when
-     * validating the actual types of the repository with the known open metadata types - looking specifically
-     * for types of the same name but with different content.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefName - unique name for the TypeDef
-     * @return TypeDef object or null if TypeDef is not known.
-     */
-    TypeDef  getTypeDefByName (String    sourceName,
-                               String    typeDefName);
-
-
-    /**
-     * Return the AttributeTypeDef identified by the name supplied by the caller.  This is used in the connectors when
-     * validating the actual types of the repository with the known open metadata types - looking specifically
-     * for types of the same name but with different content.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDefName - unique name for the TypeDef
-     * @return AttributeTypeDef object or null if AttributeTypeDef is not known.
-     */
-    AttributeTypeDef getAttributeTypeDefByName (String    sourceName,
-                                                String    attributeTypeDefName);
-
-
-    /**
-     * Return the TypeDefs identified by the name supplied by the caller.  The TypeDef name may have wild
-     * card characters in it which is why the results are returned in a list.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefName - unique name for the TypeDef
-     * @return TypeDef object or null if TypeDef is not known.
-     */
-    TypeDefGallery getActiveTypesByWildCardName (String    sourceName,
-                                                 String    typeDefName);
-
-
-    /**
-     * Return the TypeDef identified by the guid supplied by the caller.  This call is used when
-     * retrieving a type that only the guid is known.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param parameterName - name of parameter
-     * @param typeDefGUID - unique identifier for the TypeDef
-     * @param methodName - calling method
-     * @return TypeDef object
-     * @throws TypeErrorException - unknown or invalid type
-     */
-    TypeDef  getTypeDef (String    sourceName,
-                         String    parameterName,
-                         String    typeDefGUID,
-                         String    methodName) throws TypeErrorException;
-
-
-    /**
-     * Return the AttributeTypeDef identified by the guid and name supplied by the caller.  This call is used when
-     * retrieving a type that only the guid is known.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDefGUID - unique identifier for the AttributeTypeDef
-     * @return TypeDef object
-     * @throws TypeErrorException - unknown or invalid type
-     */
-    AttributeTypeDef  getAttributeTypeDef (String    sourceName,
-                                           String    attributeTypeDefGUID,
-                                           String    methodName) throws TypeErrorException;
-
-
-
-    /**
-     * Return the TypeDef identified by the guid and name supplied by the caller.  This call is used when
-     * retrieving a type that should exist.  For example, retrieving the type of a metadata instance.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param guidParameterName - name of guid parameter
-     * @param nameParameterName - name of name parameter
-     * @param typeDefGUID - unique identifier for the TypeDef
-     * @param typeDefName - unique name for the TypeDef
-     * @param methodName - calling method
-     * @return TypeDef object
-     * @throws TypeErrorException - unknown or invalid type
-     */
-    TypeDef  getTypeDef (String    sourceName,
-                         String    guidParameterName,
-                         String    nameParameterName,
-                         String    typeDefGUID,
-                         String    typeDefName,
-                         String    methodName) throws TypeErrorException;
-
-
-    /**
-     * Return the AttributeTypeDef identified by the guid and name supplied by the caller.  This call is used when
-     * retrieving a type that should exist.  For example, retrieving the type definition of a metadata instance's
-     * property.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDefGUID - unique identifier for the AttributeTypeDef
-     * @param attributeTypeDefName - unique name for the AttributeTypeDef
-     * @param methodName - calling method
-     * @return TypeDef object
-     * @throws TypeErrorException - unknown or invalid type
-     */
-    AttributeTypeDef  getAttributeTypeDef (String    sourceName,
-                                           String    attributeTypeDefGUID,
-                                           String    attributeTypeDefName,
-                                           String    methodName) throws TypeErrorException;
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSTypeDefManager.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSTypeDefManager.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSTypeDefManager.java
deleted file mode 100644
index c4f125a..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSTypeDefManager.java
+++ /dev/null
@@ -1,196 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository.repositorycontentmanager;
-
-import org.apache.atlas.omrs.ffdc.exception.TypeErrorException;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceStatus;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceType;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.AttributeTypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefCategory;
-
-
-/**
- * OMRSTypeDefManager provides maintenance methods for managing the TypeDefs in the local cache.
- */
-public interface OMRSTypeDefManager
-{
-    /**
-     * Cache a definition of a new TypeDef.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param newTypeDef - TypeDef structure describing the new TypeDef.
-     */
-    void addTypeDef(String  sourceName, TypeDef      newTypeDef);
-
-
-    /**
-     * Cache a definition of a new AttributeTypeDef.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param newAttributeTypeDef - AttributeTypeDef structure describing the new TypeDef.
-     */
-    void addAttributeTypeDef(String  sourceName, AttributeTypeDef newAttributeTypeDef);
-
-
-    /**
-     * Update one or more properties of a cached TypeDef.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDef - TypeDef structure.
-     */
-    void updateTypeDef(String  sourceName, TypeDef   typeDef);
-
-
-    /**
-     * Delete a cached TypeDef.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param obsoleteTypeDefGUID - String unique identifier for the TypeDef.
-     * @param obsoleteTypeDefName - String unique name for the TypeDef.
-     */
-    void deleteTypeDef(String    sourceName,
-                       String    obsoleteTypeDefGUID,
-                       String    obsoleteTypeDefName);
-
-
-    /**
-     * Delete a cached AttributeTypeDef.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param obsoleteAttributeTypeDefGUID - String unique identifier for the AttributeTypeDef.
-     * @param obsoleteAttributeTypeDefName - String unique name for the AttributeTypeDef.
-     */
-    void deleteAttributeTypeDef(String    sourceName,
-                                String    obsoleteAttributeTypeDefGUID,
-                                String    obsoleteAttributeTypeDefName);
-
-
-    /**
-     * Change the identifiers for a TypeDef.
-     *
-     * @param sourceName - source of the request (used for logging).
-     * @param originalTypeDefGUID - TypeDef's original unique identifier.
-     * @param originalTypeDefName - TypeDef's original unique name.
-     * @param newTypeDef - updated TypeDef with new identifiers.
-     */
-    void reIdentifyTypeDef(String   sourceName,
-                           String   originalTypeDefGUID,
-                           String   originalTypeDefName,
-                           TypeDef  newTypeDef);
-
-
-    /**
-     * Change the identifiers for an AttributeTypeDef.
-     *
-     * @param sourceName - source of the request (used for logging).
-     * @param originalAttributeTypeDefGUID - AttributeTypeDef's original unique identifier.
-     * @param originalAttributeTypeDefName - AttributeTypeDef's original unique name.
-     * @param newAttributeTypeDef - updated AttributeTypeDef with new identifiers
-     */
-    void reIdentifyAttributeTypeDef(String            sourceName,
-                                    String            originalAttributeTypeDefGUID,
-                                    String            originalAttributeTypeDefName,
-                                    AttributeTypeDef  newAttributeTypeDef);
-
-
-    /**
-     * Return a boolean indicating that the type name matches the category.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param category - TypeDefCategory enum value to test
-     * @param typeName - type name to test
-     * @param methodName - name of calling method.
-     * @return - boolean flag indicating that the type name is of the specified category
-     * @throws TypeErrorException - the type name is not a recognized type or the category is incorrect or there
-     *                              is an error in the type definition (TypeDef) cached.
-     */
-    boolean    isValidTypeCategory(String            sourceName,
-                                   TypeDefCategory   category,
-                                   String            typeName,
-                                   String            methodName) throws TypeErrorException;
-
-
-    /**
-     * Return boolean indicating if a classification type can be applied to a specified entity.  This
-     * uses the list of valid entity types located in the ClassificationDef.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param classificationTypeName - name of the classification's type (ClassificationDef)
-     * @param entityTypeName - name of the entity's type (EntityDef)
-     * @param methodName - name of calling method.
-     * @return boolean indicating if the classification is valid for the entity.
-     * @throws TypeErrorException - the type name is not a recognized type or the category is incorrect or there
-     *                              is an error in the type definition (TypeDef) cached.
-     */
-    boolean    isValidClassificationForEntity(String  sourceName,
-                                              String  classificationTypeName,
-                                              String  entityTypeName,
-                                              String  methodName) throws TypeErrorException;
-
-
-    /**
-     * Return identifiers for the TypeDef that matches the supplied type name.  If the type name is not recognized,
-     * null is returned.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param category - category of type
-     * @param typeName - String type name - the type name is not recognized or of the wrong category.
-     * @param methodName - name of calling method.
-     * @return InstanceType object containing TypeDef unique identifier (guid), typeDef name and version
-     * @throws TypeErrorException - the type name is not a recognized type or the category is incorrect or there
-     *                              is an error in the type definition (TypeDef) cached.
-     */
-    InstanceType getInstanceType(String            sourceName,
-                                 TypeDefCategory   category,
-                                 String            typeName,
-                                 String            methodName) throws TypeErrorException;
-
-
-    /**
-     * Return the initial status set up for the instance.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeName - name of the type to extract the initial status from.
-     * @return InstanceStatus enum
-     * @throws TypeErrorException - the type name is not recognized.
-     */
-    InstanceStatus getInitialStatus(String sourceName,
-                                    String typeName,
-                                    String methodName) throws TypeErrorException;
-
-
-    /**
-     * Return the URL string to use for direct access to the metadata instance.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param guid - unique identifier for the instance.
-     * @return String URL with placeholder for variables such as userId.
-     */
-    String getEntityURL(String sourceName, String guid);
-
-
-    /**
-     * Return the URL string to use for direct access to the metadata instance.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param guid - unique identifier for the instance.
-     * @return String URL with placeholder for variables such as userId.
-     */
-    String getRelationshipURL(String sourceName, String guid);
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSTypeDefValidator.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSTypeDefValidator.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSTypeDefValidator.java
deleted file mode 100644
index fc58cdf..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSTypeDefValidator.java
+++ /dev/null
@@ -1,236 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository.repositorycontentmanager;
-
-import org.apache.atlas.omrs.ffdc.exception.RepositoryErrorException;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.*;
-
-import java.util.List;
-
-/**
- * OMRSTypeDefValidator describes a component that is able to manage TypeDefs for the local metadata repository.
- */
-public interface OMRSTypeDefValidator
-{
-    /**
-     * Return a boolean flag indicating whether the list of TypeDefs passed are compatible with the
-     * all known typedefs.
-     *
-     * A valid TypeDef is one that matches name, GUID and version to the full list of TypeDefs.
-     * If a new TypeDef is present, it is added to the enterprise list.
-     *
-     * @param sourceName - source of the TypeDef (used for logging)
-     * @param typeDefs - list of TypeDefs.
-     * @param methodName - name of calling method
-     * @throws RepositoryErrorException - a conflicting or invalid TypeDef has been returned
-     */
-    void   validateEnterpriseTypeDefs(String        sourceName,
-                                      List<TypeDef> typeDefs,
-                                      String        methodName) throws RepositoryErrorException;
-
-
-    /**
-     * Return a boolean flag indicating whether the list of TypeDefs passed are compatible with the
-     * all known typedefs.
-     *
-     * A valid TypeDef is one that matches name, GUID and version to the full list of TypeDefs.
-     * If a new TypeDef is present, it is added to the enterprise list.
-     *
-     * @param sourceName - source of the TypeDef (used for logging)
-     * @param attributeTypeDefs - list of AttributeTypeDefs.
-     * @param methodName - name of calling method
-     * @throws RepositoryErrorException - a conflicting or invalid AttributeTypeDef has been returned
-     */
-    void   validateEnterpriseAttributeTypeDefs(String                 sourceName,
-                                               List<AttributeTypeDef> attributeTypeDefs,
-                                               String                 methodName) throws RepositoryErrorException;
-
-
-    /**
-     * Return boolean indicating whether the TypeDef is one of the standard open metadata types.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @param typeName - unique name of the type
-     * @return boolean result
-     */
-    boolean isOpenType(String  sourceName, String   typeGUID, String   typeName);
-
-
-    /**
-     * Return boolean indicating whether the TypeDef is one of the standard open metadata types.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @return boolean result
-     */
-    boolean isOpenTypeId(String  sourceName, String   typeGUID);
-
-
-    /**
-     * Return boolean indicating whether the TypeDef/AttributeTypeDef is known, either as an open type, or one defined
-     * by one or more of the members of the cohort.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @param typeName - unique name of the type
-     * @return boolean result
-     */
-    boolean isKnownType(String  sourceName, String   typeGUID, String   typeName);
-
-
-    /**
-     * Return boolean indicating whether the TypeDef/AttributeTypeDef is known, either as an open type, or one defined
-     * by one or more of the members of the cohort.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @return boolean result
-     */
-    boolean isKnownTypeId(String  sourceName, String   typeGUID);
-
-
-    /**
-     * Return boolean indicating whether the TypeDef/AttributeTypeDef is in use in the local repository.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @param typeName - unique name of the type
-     * @return boolean result
-     */
-    boolean isActiveType(String  sourceName, String   typeGUID, String   typeName);
-
-
-    /**
-     * Return boolean indicating whether the TypeDef/AttributeTypeDef is in use in the local repository.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @return boolean result
-     */
-    boolean isActiveTypeId(String  sourceName, String   typeGUID);
-
-
-    /**
-     * Return boolean indicating whether the TypeDef/AttributeTypeDef identifiers are from a single known type or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the TypeDef
-     * @param typeName - unique name of the TypeDef
-     * @return boolean result
-     */
-    boolean validTypeId(String          sourceName,
-                        String          typeGUID,
-                        String          typeName);
-
-
-    /**
-     * Return boolean indicating whether the TypeDef identifiers are from a single known type or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefGUID - unique identifier of the TypeDef
-     * @param typeDefName - unique name of the TypeDef
-     * @param category - category for the TypeDef
-     * @return boolean result
-     */
-    boolean validTypeDefId(String          sourceName,
-                           String          typeDefGUID,
-                           String          typeDefName,
-                           TypeDefCategory category);
-
-
-    /**
-     * Return boolean indicating whether the AttributeTypeDef identifiers are from a single known type or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDefGUID - unique identifier of the AttributeTypeDef
-     * @param attributeTypeDefName - unique name of the AttributeTypeDef
-     * @param category - category for the AttributeTypeDef
-     * @return boolean result
-     */
-    boolean validAttributeTypeDefId(String                   sourceName,
-                                    String                   attributeTypeDefGUID,
-                                    String                   attributeTypeDefName,
-                                    AttributeTypeDefCategory category);
-
-
-    /**
-     * Return boolean indicating whether the TypeDef identifiers are from a single known type or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefGUID - unique identifier of the TypeDef
-     * @param typeDefName - unique name of the TypeDef
-     * @param typeDefVersion - version of the type
-     * @param category - category for the TypeDef
-     * @return boolean result
-     */
-    boolean validTypeDefId(String          sourceName,
-                           String          typeDefGUID,
-                           String          typeDefName,
-                           long            typeDefVersion,
-                           TypeDefCategory category);
-
-
-    /**
-     * Return boolean indicating whether the TypeDef identifiers are from a single known type or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDefGUID - unique identifier of the TypeDef
-     * @param attributeTypeDefName - unique name of the TypeDef
-     * @param attributeTypeDefVersion - version of the type
-     * @param category - category for the TypeDef
-     * @return boolean result
-     */
-    boolean validAttributeTypeDefId(String                   sourceName,
-                                    String                   attributeTypeDefGUID,
-                                    String                   attributeTypeDefName,
-                                    long                     attributeTypeDefVersion,
-                                    AttributeTypeDefCategory category);
-
-
-    /**
-     * Return boolean indicating whether the supplied TypeDef is valid or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDef - TypeDef to test
-     * @return boolean result
-     */
-    boolean validTypeDef(String         sourceName,
-                         TypeDef        typeDef);
-
-
-    /**
-     * Return boolean indicating whether the supplied AttributeTypeDef is valid or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDef - TypeDef to test
-     * @return boolean result
-     */
-    boolean validAttributeTypeDef(String           sourceName,
-                                  AttributeTypeDef attributeTypeDef);
-
-    /**
-     * Return boolean indicating whether the supplied TypeDefSummary is valid or not.
-     *
-     * @param sourceName - source of the TypeDefSummary (used for logging)
-     * @param typeDefSummary - TypeDefSummary to test.
-     * @return boolean result.
-     */
-    boolean validTypeDefSummary(String                sourceName,
-                                TypeDefSummary        typeDefSummary);
-}


[47/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalIdentifier.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalIdentifier.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalIdentifier.java
deleted file mode 100644
index 90b7e23..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalIdentifier.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-/**
- * ExternalIdentifier stores information about an identifier for the asset that is used in an external system.
- * This is used for correlating information about the asset across different systems.
- */
-public class ExternalIdentifier extends Referenceable
-{
-    /*
-     * Attributes of an external identifier
-     */
-    private String            identifier = null;
-    private String            description = null;
-    private String            usage = null;
-    private String            source = null;
-    private KeyPattern        keyPattern = null;
-    private Referenceable     scope = null;
-    private String            scopeDescription = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param identifier - the external identifier for the asset.
-     * @param description - the description of the external identifier.
-     * @param usage - usage guidance for this external identifier.
-     * @param source - source description for this external identifier.
-     * @param keyPattern enum - name of the key pattern used for this external identifier.
-     * @param scope - Referenceable scope of this external identifier.  This depends on the key pattern.
-     *              It may be a server definition, a reference data set or glossary term.
-     * @param scopeDescription - description of the scope for this external identifier.
-     */
-    public ExternalIdentifier(AssetDescriptor      parentAsset,
-                              ElementType          type,
-                              String               guid,
-                              String               url,
-                              Classifications      classifications,
-                              String               qualifiedName,
-                              AdditionalProperties additionalProperties,
-                              Meanings             meanings,
-                              String               identifier,
-                              String               description,
-                              String               usage,
-                              String               source,
-                              KeyPattern           keyPattern,
-                              Referenceable        scope,
-                              String               scopeDescription)
-    {
-        super(parentAsset, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-
-        this.identifier = identifier;
-        this.description = description;
-        this.usage = usage;
-        this.source = source;
-        this.keyPattern = keyPattern;
-        this.scope = scope;
-        this.scopeDescription = scopeDescription;
-    }
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateExternalIdentifier - element to copy
-     */
-    public ExternalIdentifier(AssetDescriptor parentAsset, ExternalIdentifier templateExternalIdentifier)
-    {
-        /*
-         * Initialize the super class.
-         */
-        super(parentAsset, templateExternalIdentifier);
-
-        if (templateExternalIdentifier != null)
-        {
-            /*
-             * Copy the values from the supplied template.
-             */
-            identifier = templateExternalIdentifier.getIdentifier();
-            description = templateExternalIdentifier.getDescription();
-            usage = templateExternalIdentifier.getUsage();
-            source = templateExternalIdentifier.getSource();
-            keyPattern = templateExternalIdentifier.getKeyPattern();
-
-            Referenceable  templateScope = templateExternalIdentifier.getScope();
-            if (templateScope != null)
-            {
-                /*
-                 * Ensure comment replies has this object's parent asset, not the template's.
-                 */
-                scope = new Referenceable(parentAsset, templateScope);
-            }
-
-            scopeDescription = templateExternalIdentifier.getScopeDescription();
-        }
-    }
-
-
-    /**
-     * Return the external identifier for this asset.
-     *
-     * @return String identifier
-     */
-    public String getIdentifier() { return identifier; }
-
-
-    /**
-     * Return the description of the external identifier.
-     *
-     * @return String description
-     */
-    public String getDescription() { return description; }
-
-
-    /**
-     * Return details of how, where and when this external identifier is used.
-     *
-     * @return String usage
-     */
-    public String getUsage() { return usage; }
-
-
-    /**
-     * Return details of the source system where this external identifier comes from.
-     *
-     * @return String server
-     */
-    public String getSource() { return source; }
-
-
-    /**
-     * Return the key pattern that is used with this external identifier.
-     *
-     * @return KeyPattern enum
-     */
-    public KeyPattern getKeyPattern() { return keyPattern; }
-
-
-    /**
-     * Return the scope of this external identifier.  This depends on the key pattern.  It may be a server definition,
-     * a reference data set or glossary term.
-     *
-     * @return Referenceable scope
-     */
-    public Referenceable getScope()
-    {
-        if (scope == null)
-        {
-            return scope;
-        }
-        else
-        {
-            return new Referenceable(super.getParentAsset(), scope);
-        }
-    }
-
-
-    /**
-     * Return the text description of the scope for this external identifier.
-     *
-     * @return String scope description
-     */
-    public String getScopeDescription() { return scopeDescription; }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "ExternalIdentifier{" +
-                "identifier='" + identifier + '\'' +
-                ", description='" + description + '\'' +
-                ", usage='" + usage + '\'' +
-                ", source='" + source + '\'' +
-                ", keyPattern=" + keyPattern +
-                ", scope=" + scope +
-                ", scopeDescription='" + scopeDescription + '\'' +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalIdentifiers.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalIdentifiers.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalIdentifiers.java
deleted file mode 100644
index cac397c..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalIdentifiers.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * ExternalIdentifiers supports an iterator over a list of external identifiers.  Callers can use it to step through
- * the list just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class ExternalIdentifiers extends AssetPropertyIteratorBase implements Iterator<ExternalIdentifier>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public ExternalIdentifiers(AssetDescriptor              parentAsset,
-                               int                          totalElementCount,
-                               int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public ExternalIdentifiers(AssetDescriptor   parentAsset, ExternalIdentifiers    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new ExternalIdentifier(parentAsset, (ExternalIdentifier)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract ExternalIdentifiers  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return ExternalIdentifier - next element object that has been cloned.
-     */
-    @Override
-    public ExternalIdentifier next()
-    {
-        return (ExternalIdentifier)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "ExternalIdentifiers{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalReference.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalReference.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalReference.java
deleted file mode 100644
index 93706ad..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalReference.java
+++ /dev/null
@@ -1,193 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-/**
- * ExternalReference stores information about an link to an external resource that is relevant to this asset.
- */
-public class ExternalReference extends Referenceable
-{
-    /*
-     * Attributes of an external reference
-     */
-    private String            referenceId = null;
-    private String            linkDescription = null;
-    private String            displayName = null;
-    private String            uri = null;
-    private String            resourceDescription = null;
-    private String            version = null;
-    private String            organization = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param referenceId the reference identifier for this asset's reference.
-     * @param linkDescription - description of the reference (with respect to this asset).
-     * @param displayName - display name for this external reference.
-     * @param uri - the URI used to retrieve the resource that this external reference represents.
-     * @param resourceDescription - the description of the resource that this external reference represents.
-     * @param version - the version of the resource that this external reference represents.
-     * @param organization - the name of the organization that owns the resource that this external reference represents.
-     */
-    public ExternalReference(AssetDescriptor      parentAsset,
-                             ElementType          type,
-                             String               guid,
-                             String               url,
-                             Classifications      classifications,
-                             String               qualifiedName,
-                             AdditionalProperties additionalProperties,
-                             Meanings             meanings,
-                             String               referenceId,
-                             String               linkDescription,
-                             String               displayName,
-                             String               uri,
-                             String               resourceDescription,
-                             String               version,
-                             String               organization)
-    {
-        super(parentAsset, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-        this.referenceId = referenceId;
-        this.linkDescription = linkDescription;
-        this.displayName = displayName;
-        this.uri = uri;
-        this.resourceDescription = resourceDescription;
-        this.version = version;
-        this.organization = organization;
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateExternalReference - element to copy
-     */
-    public ExternalReference(AssetDescriptor parentAsset, ExternalReference templateExternalReference)
-    {
-        /*
-         * Initialize the super class.
-         */
-        super(parentAsset, templateExternalReference);
-
-        if (templateExternalReference != null)
-        {
-            /*
-             * Copy the values from the supplied template.
-             */
-            referenceId = templateExternalReference.getReferenceId();
-            linkDescription = templateExternalReference.getLinkDescription();
-            displayName = templateExternalReference.getDisplayName();
-            uri = templateExternalReference.getURI();
-            resourceDescription = templateExternalReference.getResourceDescription();
-            version = templateExternalReference.getVersion();
-            organization = templateExternalReference.getOrganization();
-        }
-    }
-
-
-    /**
-     * Return the identifier given to this reference (with respect to this asset).
-     *
-     * @return String referenceId
-     */
-    public String getReferenceId() { return referenceId; }
-
-
-    /**
-     * Return the description of the reference (with respect to this asset).
-     *
-     * @return String link description.
-     */
-    public String getLinkDescription() { return linkDescription; }
-
-
-    /**
-     * Return the display name of this external reference.
-     *
-     * @return String display name.
-     */
-    public String getDisplayName() { return displayName; }
-
-
-    /**
-     * Return the URI used to retrieve the resource that this external reference represents.
-     *
-     * @return String URI
-     */
-    public String getURI() { return uri; }
-
-
-    /**
-     * Return the description of the resource that this external reference represents.
-     *
-     * @return String resource description
-     */
-    public String getResourceDescription() { return resourceDescription; }
-
-
-    /**
-     * Return the version of the resource that this external reference represents.
-     *
-     * @return String version
-     */
-    public String getVersion() { return version; }
-
-
-    /**
-     * Return the name of the organization that owns the resource that this external reference represents.
-     *
-     * @return String organization name
-     */
-    public String getOrganization() { return organization; }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "ExternalReference{" +
-                "referenceId='" + referenceId + '\'' +
-                ", linkDescription='" + linkDescription + '\'' +
-                ", displayName='" + displayName + '\'' +
-                ", uri='" + uri + '\'' +
-                ", resourceDescription='" + resourceDescription + '\'' +
-                ", version='" + version + '\'' +
-                ", organization='" + organization + '\'' +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalReferences.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalReferences.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalReferences.java
deleted file mode 100644
index 457c447..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/ExternalReferences.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * ExternalReferences supports an iterator over a list of external references.  Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class ExternalReferences extends AssetPropertyIteratorBase implements Iterator<ExternalReference>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public ExternalReferences(AssetDescriptor              parentAsset,
-                              int                          totalElementCount,
-                              int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public ExternalReferences(AssetDescriptor   parentAsset, ExternalReferences    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new ExternalReference(parentAsset, (ExternalReference)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract ExternalReferences  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return ExternalReference - next element object that has been cloned.
-     */
-    @Override
-    public ExternalReference next()
-    {
-        return (ExternalReference)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "ExternalReferences{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Feedback.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Feedback.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Feedback.java
deleted file mode 100644
index a5eb26c..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Feedback.java
+++ /dev/null
@@ -1,192 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * Feedback contains the comments, tags, ratings and likes that consumers of the asset have created.
- */
-public class Feedback extends AssetPropertyBase
-{
-    /*
-     * Lists of objects that make up the feedback on the asset.
-     */
-    private  InformalTags      informalTags = null;
-    private  Likes             likes = null;
-    private  Ratings           ratings = null;
-    private  Comments          comments = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - description of the asset that this feedback is attached to.
-     * @param informalTags - list of tags for the asset.
-     * @param likes - list of likes (one object per person liking the asset) for the asset.
-     * @param ratings - list of ratings that people have given the asset - one Rating object for each person's rating.
-     * @param comments - list of comments for the asset.
-     */
-    public Feedback(AssetDescriptor parentAsset, InformalTags informalTags, Likes likes, Ratings ratings, Comments comments)
-    {
-        super(parentAsset);
-        this.informalTags = informalTags;
-        this.likes = likes;
-        this.ratings = ratings;
-        this.comments = comments;
-    }
-
-
-    /**
-     * Copy/clone constructor - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the feedback clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param parentAsset - description of the asset that this feedback is attached to.
-     * @param templateFeedback - template object to copy.
-     */
-    public Feedback(AssetDescriptor  parentAsset, Feedback   templateFeedback)
-    {
-        super(parentAsset, templateFeedback);
-
-        /*
-         * Only create a child object if the template is not null.
-         */
-        if (templateFeedback != null)
-        {
-            InformalTags      templateInformalTags = templateFeedback.getInformalTags();
-            Likes             templateLikes = templateFeedback.getLikes();
-            Ratings           templateRatings = templateFeedback.getRatings();
-            Comments          templateComments = templateFeedback.getComments();
-
-            if (templateInformalTags != null)
-            {
-                this.informalTags = templateInformalTags.cloneIterator(parentAsset);
-            }
-
-            if (templateLikes != null)
-            {
-                this.likes = templateLikes.cloneIterator(parentAsset);
-            }
-
-            if (templateRatings != null)
-            {
-                this.ratings = templateRatings.cloneIterator(parentAsset);
-            }
-
-            if (templateComments != null)
-            {
-                this.comments = templateComments.cloneIterator(parentAsset);
-            }
-        }
-
-    }
-
-
-    /**
-     * Returns a copy of the information tags for the asset in an iterator.  This iterator can be used to step
-     * through the tags once.  Therefore call getInformalTags() for each scan of the asset's tags.
-     *
-     * @return InformalTags - tag list
-     */
-    public InformalTags getInformalTags()
-    {
-        if (informalTags == null)
-        {
-            return informalTags;
-        }
-        else
-        {
-            return informalTags.cloneIterator(super.getParentAsset());
-        }
-    }
-
-
-    /**
-     * Returns a copy of the likes for the asset in an iterator.  This iterator can be used to step
-     * through the list of like once.  Therefore call getLikes() for each scan of the asset's like objects.
-     *
-     * @return Likes - like object list
-     */
-    public Likes getLikes()
-    {
-        if (likes == null)
-        {
-            return likes;
-        }
-        else
-        {
-            return likes.cloneIterator(super.getParentAsset());
-        }
-    }
-
-
-    /**
-     * Returns a copy of the ratings for the asset in an iterator.  This iterator can be used to step
-     * through the ratings once.  Therefore call getRatings() for each scan of the asset's ratings.
-     *
-     * @return Ratings - rating list
-     */
-    public Ratings getRatings()
-    {
-        if (ratings == null)
-        {
-            return ratings;
-        }
-        else
-        {
-            return ratings.cloneIterator(super.getParentAsset());
-        }
-    }
-
-
-    /**
-     * Returns a copy of the comments for the asset in an iterator.  This iterator can be used to step
-     * through the comments once.  Therefore call getComments() for each scan of the asset's comments.
-     *
-     * @return Comments - comment list
-     */
-    public Comments getComments()
-    {
-        if (comments == null)
-        {
-            return comments;
-        }
-        else
-        {
-            return comments.cloneIterator(super.getParentAsset());
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Feedback{" +
-                "informalTags=" + informalTags +
-                ", likes=" + likes +
-                ", ratings=" + ratings +
-                ", comments=" + comments +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/InformalTag.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/InformalTag.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/InformalTag.java
deleted file mode 100644
index 7a517967..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/InformalTag.java
+++ /dev/null
@@ -1,196 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import org.apache.atlas.ocf.ffdc.OCFErrorCode;
-import org.apache.atlas.ocf.ffdc.OCFRuntimeException;
-
-/**
- * InformalTag stores information about a tag connected to an asset.
- * InformalTags provide informal classifications to assets
- * and can be added at any time.
- *
- * InformalTags have the userId of the person who added the tag, the name of the tag and its description.
- *
- * The content of the tag is a personal judgement (which is why the user's id is in the tag)
- * and there is no formal review of the tags.  However, they can be used as a basis for crowd-sourcing
- * Glossary terms.
- *
- * Private InformalTags are only returned to the user that created them.
- */
-public class InformalTag extends ElementHeader
-{
-    /*
-     * Attributes of a InformalTag
-     */
-    private boolean isPrivateTag = false;
-    private String  name         = null;
-    private String  description  = null;
-    private String  user         = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param isPrivateTag - boolean flag to say whether the tag is private or not.
-     *                     A private tag is only seen by the person who set it up.
-     *                     Public tags are visible to everyone how can sse the asset description.
-     * @param name - name of the tag.  It is not valid to have a tag with no name.
-     * @param description - tag description
-     * @param user - the user id of the person who created the tag. Null means the user id is not known.
-     */
-    public InformalTag(AssetDescriptor parentAsset,
-                       ElementType     type,
-                       String          guid,
-                       String          url,
-                       Classifications classifications,
-                       boolean         isPrivateTag,
-                       String          name,
-                       String          description,
-                       String          user)
-    {
-        super(parentAsset, type, guid, url, classifications);
-
-        if (name == null || name.equals(""))
-        {
-            /*
-             * Build and throw exception.  This should not happen - likely to be a problem in the
-             * repository connector.
-             */
-            OCFErrorCode errorCode = OCFErrorCode.NULL_TAG_NAME;
-            String       errorMessage = errorCode.getErrorMessageId()
-                    + errorCode.getFormattedErrorMessage(super.getParentAssetName(),
-                                                         super.getParentAssetTypeName());
-
-            throw new OCFRuntimeException(errorCode.getHTTPErrorCode(),
-                                          this.getClass().getName(),
-                                          "setName",
-                                          errorMessage,
-                                          errorCode.getSystemAction(),
-                                          errorCode.getUserAction());
-        }
-
-        this.isPrivateTag = isPrivateTag;
-        this.name = name;
-        this.description = description;
-        this.user = user;
-    }
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateInformalTag - element to copy
-     */
-    public InformalTag(AssetDescriptor parentAsset, InformalTag templateInformalTag)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(parentAsset, templateInformalTag);
-
-        if (templateInformalTag != null)
-        {
-            /*
-             * Copy the values from the supplied tag.
-             */
-            isPrivateTag = templateInformalTag.isPrivateTag();
-            user = templateInformalTag.getUser();
-            name = templateInformalTag.getName();
-            description = templateInformalTag.getDescription();
-        }
-    }
-
-
-    /**
-     * Return boolean flag to say whether the tag is private or not.  A private tag is only seen by the
-     * person who set it up.  Public tags are visible to everyone who can see the asset description.
-     *
-     * @return boolean - is private flag
-     */
-    public boolean isPrivateTag() {
-        return isPrivateTag;
-    }
-
-
-    /**
-     * Return the user id of the person who created the tag.  Null means the user id is not known.
-     *
-     * @return String - tagging user
-     */
-    public String getUser() {
-        return user;
-    }
-
-
-    /**
-     * Return the name of the tag.  It is not valid to have a tag with no name.  However, there is a point where
-     * the tag object is created and the tag name not set, so null is a possible response.
-     *
-     * @return String - tag name
-     */
-    public String getName() {
-        return name;
-    }
-
-
-    /**
-     * Return the tag description - null means no description is available.
-     *
-     * @return String - tag description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Set up the tag description - null means no description is available.
-     *
-     * @param tagDescription  - tag description
-     */
-    public void setDescription(String tagDescription) {
-        this.description = tagDescription;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "InformalTag{" +
-                "isPrivateTag=" + isPrivateTag +
-                ", name='" + name + '\'' +
-                ", description='" + description + '\'' +
-                ", user='" + user + '\'' +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/InformalTags.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/InformalTags.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/InformalTags.java
deleted file mode 100644
index fc20ad8..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/InformalTags.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * InformalTags supports an iterator over a list of informal tags.  Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class InformalTags extends AssetPropertyIteratorBase implements Iterator<InformalTag>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public InformalTags(AssetDescriptor              parentAsset,
-                        int                          totalElementCount,
-                        int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public InformalTags(AssetDescriptor   parentAsset, InformalTags    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new InformalTag(parentAsset, (InformalTag)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract InformalTags  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return InformalTag - next element object that has been cloned.
-     */
-    @Override
-    public InformalTag next()
-    {
-        return (InformalTag)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "InformalTags{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/KeyPattern.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/KeyPattern.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/KeyPattern.java
deleted file mode 100644
index 3d035d5..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/KeyPattern.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * A KeyPattern defines the type of External Identifier in use for an asset, or the type of Primary Key used within an
- * asset.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum KeyPattern implements Serializable
-{
-    LOCAL_KEY     (0,  "Local Key", "Unique key allocated and used within the scope of a single system."),
-    RECYCLED_KEY  (1,  "Recycled Key", "Key allocated and used within the scope of a single system that is periodically reused for different records."),
-    NATURAL_KEY   (2,  "Natural Key", "Key derived from an attribute of the entity, such as email address, passport number."),
-    MIRROR_KEY    (3,  "Mirror Key", "Key value copied from another system."),
-    AGGREGATE_KEY (4,  "Aggregate Key", "Key formed by combining keys from multiple systems."),
-    CALLERS_KEY   (5,  "Caller's Key", "Key from another system can bey used if system name provided."),
-    STABLE_KEY    (6,  "Stable Key", "Key value will remain active even if records are merged."),
-    OTHER         (99, "Other", "Another key pattern.");
-
-    private static final long     serialVersionUID = 1L;
-
-    private int            keyPatternCode;
-    private String         keyPatternName;
-    private String         keyPatternDescription;
-
-    /**
-     * Typical Constructor
-     */
-    KeyPattern(int     keyPatternCode, String   keyPatternName, String   keyPatternDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.keyPatternCode = keyPatternCode;
-        this.keyPatternName = keyPatternName;
-        this.keyPatternDescription = keyPatternDescription;
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - key pattern code
-     */
-    public int getKeyPatternCode()
-    {
-        return keyPatternCode;
-    }
-
-
-    /**
-     * Return the default name for this enum instance.
-     *
-     * @return String - default name
-     */
-    public String getKeyPatternName()
-    {
-        return keyPatternName;
-    }
-
-
-    /**
-     * Return the default description for the key pattern for this enum instance.
-     *
-     * @return String - default description
-     */
-    public String getKeyPatternDescription()
-    {
-        return keyPatternDescription;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "KeyPattern{" +
-                "keyPatternCode=" + keyPatternCode +
-                ", keyPatternName='" + keyPatternName + '\'' +
-                ", keyPatternDescription='" + keyPatternDescription + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/License.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/License.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/License.java
deleted file mode 100644
index ceec3a2..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/License.java
+++ /dev/null
@@ -1,299 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Date;
-
-/**
- * <p>
- *     The data economy brings licensing to data and metadata.  Even open data typically has a license.
- *     License stores the license permission associated with the asset.
- * </p>
- * <p>
- *     The license will define the permitted uses and other requirements for using the asset.
- * </p>
- *
- */
-public class License extends Referenceable
-{
-    /*
-     * properties of a license
-     */
-    private  String                 licenseTypeGUID = null;
-    private  String                 licenseTypeName = null;
-    private  String                 licensee = null;
-    private  String                 summary = null;
-    private  ExternalReference      link = null;
-    private  Date                   startDate = null;
-    private  Date                   endDate = null;
-    private  String                 licenseConditions = null;
-    private  String                 createdBy = null;
-    private  String                 custodian = null;
-    private  String                 notes = null;
-
-
-    /**
-     * Typical constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param licenseTypeGUID - license type GUID
-     * @param licenseTypeName - the name of the type of the license.
-     * @param licensee - name of the organization or person that issued the license
-     * @param summary - a brief summary of the license.
-     * @param link - ExternalReference for full text of the license
-     * @param startDate - start date for the license.
-     * @param endDate - the end date for the license - null if license does not expire.
-     * @param licenseConditions  - any special conditions that apply to the license - such as endorsements.
-     * @param createdBy - String name of the person or organization that set up the license agreement for this asset.
-     * @param custodian - the name of the person or organization that is responsible for the correct management
-     *                  of the asset according to the license.
-     * @param notes - the notes from the custodian.
-     */
-    public License(AssetDescriptor      parentAsset,
-                   ElementType          type,
-                   String               guid,
-                   String               url,
-                   Classifications      classifications,
-                   String               qualifiedName,
-                   AdditionalProperties additionalProperties,
-                   Meanings             meanings,
-                   String               licenseTypeGUID,
-                   String               licenseTypeName,
-                   String               licensee,
-                   String               summary,
-                   ExternalReference    link,
-                   Date                 startDate,
-                   Date                 endDate,
-                   String               licenseConditions,
-                   String               createdBy,
-                   String               custodian,
-                   String               notes)
-    {
-        super(parentAsset, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-
-        this.licenseTypeGUID = licenseTypeGUID;
-        this.licenseTypeName = licenseTypeName;
-        this.licensee = licensee;
-        this.summary = summary;
-        this.link = link;
-        this.startDate = startDate;
-        this.endDate = endDate;
-        this.licenseConditions = licenseConditions;
-        this.createdBy = createdBy;
-        this.custodian = custodian;
-        this.notes = notes;
-    }
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateLicense - element to copy
-     */
-    public License(AssetDescriptor   parentAsset, License    templateLicense)
-    {
-        super(parentAsset, templateLicense);
-
-        if (templateLicense != null)
-        {
-            licenseTypeGUID = templateLicense.getLicenseTypeGUID();
-            licenseTypeName = templateLicense.getLicenseName();
-            licensee = templateLicense.getLicensee();
-            summary = templateLicense.getSummary();
-
-            ExternalReference  templateLink = templateLicense.getLink();
-            if (templateLink != null)
-            {
-                link = new ExternalReference(parentAsset, templateLink);
-            }
-
-            Date               templateStartDate = templateLicense.getStartDate();
-            if (templateStartDate != null)
-            {
-                startDate = new Date(templateStartDate.getTime());
-            }
-
-            Date               templateEndDate = templateLicense.getEndDate();
-            if (templateEndDate != null)
-            {
-                endDate = new Date(templateStartDate.getTime());
-            }
-
-            licenseConditions = templateLicense.getLicenseConditions();
-            createdBy = templateLicense.getCreatedBy();
-            custodian = templateLicense.getCustodian();
-            notes = templateLicense.getNotes();
-        }
-    }
-
-
-    /**
-     * Return the unique id for the type of license.
-     *
-     * @return String license type GUID
-     */
-    public String getLicenseTypeGUID() { return licenseTypeGUID; }
-
-
-    /**
-     * Return the type of the license.
-     *
-     * @return String license type
-     */
-    public String getLicenseName() { return licenseTypeName; }
-
-
-    /**
-     * Get the name of the organization or person that issued the license.
-     *
-     * @return String name
-     */
-    public String getLicensee() { return licensee; }
-
-
-    /**
-     * Return a brief summary of the license.
-     *
-     * @return String summary
-     */
-    public String getSummary() { return summary; }
-
-
-    /**
-     * Return the link to the full text of the license.
-     *
-     * @return ExternalReference for full text
-     */
-    public ExternalReference getLink()
-    {
-        if (link == null)
-        {
-            return link;
-        }
-        else
-        {
-            return new ExternalReference(super.getParentAsset(), link);
-        }
-    }
-
-
-    /**
-     * Return the start date for the license.
-     *
-     * @return Date
-     */
-    public Date getStartDate()
-    {
-        if (startDate == null)
-        {
-            return startDate;
-        }
-        else
-        {
-            return new Date(startDate.getTime());
-        }
-    }
-
-
-    /**
-     * Return the end date for the license.
-     *
-     * @return Date
-     */
-    public Date getEndDate()
-    {
-        if (endDate == null)
-        {
-            return endDate;
-        }
-        else
-        {
-            return new Date(endDate.getTime());
-        }
-    }
-
-
-    /**
-     * Return any special conditions that apply to the license - such as endorsements.
-     *
-     * @return String license conditions
-     */
-    public String getLicenseConditions() { return licenseConditions; }
-
-
-    /**
-     * Return the name of the person or organization that set up the license agreement for this asset.
-     *
-     * @return String name
-     */
-    public String getCreatedBy() { return createdBy; }
-
-
-    /**
-     * Return the name of the person or organization that is responsible for the correct management of the asset
-     * according to the license.
-     *
-     * @return String name
-     */
-    public String getCustodian() { return custodian; }
-
-
-    /**
-     * Return the notes for the custodian.
-     *
-     * @return String notes
-     */
-    public String getNotes() { return notes; }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "License{" +
-                "licenseTypeGUID='" + licenseTypeGUID + '\'' +
-                ", licenseTypeName='" + licenseTypeName + '\'' +
-                ", licensee='" + licensee + '\'' +
-                ", summary='" + summary + '\'' +
-                ", link=" + link +
-                ", startDate=" + startDate +
-                ", endDate=" + endDate +
-                ", licenseConditions='" + licenseConditions + '\'' +
-                ", createdBy='" + createdBy + '\'' +
-                ", custodian='" + custodian + '\'' +
-                ", notes='" + notes + '\'' +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Licenses.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Licenses.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Licenses.java
deleted file mode 100644
index 287c16d..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Licenses.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * Licenses supports an iterator over a list of licenses for the asset.  Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class Licenses extends AssetPropertyIteratorBase implements Iterator<License>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public Licenses(AssetDescriptor              parentAsset,
-                    int                          totalElementCount,
-                    int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public Licenses(AssetDescriptor   parentAsset, Licenses    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new License(parentAsset, (License)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract Licenses  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return License - next element object that has been cloned.
-     */
-    @Override
-    public License next()
-    {
-        return (License)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Licenses{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Like.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Like.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Like.java
deleted file mode 100644
index 956c820..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Like.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-/**
- * The Like properties object records a single user's "like" of an asset.
- */
-public class Like extends ElementHeader
-{
-    /*
-     * Attributes of a Like
-     */
-    private String user = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param user - the user id of the person who created the like.
-     */
-    public Like(AssetDescriptor parentAsset,
-                ElementType     type,
-                String          guid,
-                String          url,
-                Classifications classifications,
-                String          user)
-    {
-        super(parentAsset, type, guid, url, classifications);
-
-        this.user = user;
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateLike - element to copy
-     */
-    public Like(AssetDescriptor parentAsset, Like templateLike)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(parentAsset, templateLike);
-
-        if (templateLike != null)
-        {
-            /*
-             * Copy the user name from the supplied like.
-             */
-            user = templateLike.getUser();
-        }
-    }
-
-
-    /**
-     * Return the user id of the person who created the like.  Null means the user id is not known.
-     *
-     * @return String - liking user
-     */
-    public String getUser() {
-        return user;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Like{" +
-                "user='" + user + '\'' +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Likes.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Likes.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Likes.java
deleted file mode 100644
index 24ee38e..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Likes.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * Likes supports an iterator over a list of like objects.  Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class Likes extends AssetPropertyIteratorBase implements Iterator<Like>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public Likes(AssetDescriptor              parentAsset,
-                 int                          totalElementCount,
-                 int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public Likes(AssetDescriptor   parentAsset, Likes    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new Like(parentAsset, (Like)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract Likes  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return Like - next element object that has been cloned.
-     */
-    @Override
-    public Like next()
-    {
-        return (Like)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Likes{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Lineage.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Lineage.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Lineage.java
deleted file mode 100644
index 3cefa49..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Lineage.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * Lineage shows the origin of the connected asset.  It covers:
- * <ul>
- *     <li>Design lineage - the known data movement and data stores that can supply data to this asset.</li>
- *     <li>Operational lineage - showing the jobs that ran to create this asset</li>
- * </ul>
- *
- * Currently lineage is not implemented in the ConnectedAssetProperties interface because more design work is needed.
- * This class is therefore a placeholder for lineage information.
- */
-public class Lineage extends AssetPropertyBase
-{
-    /**
-     * Typical constructor.
-     *
-     * @param parentAsset - description of the asset that this lineage is attached to.
-     */
-    public Lineage(AssetDescriptor  parentAsset)
-    {
-        /*
-         * Save descriptor of the asset that this lineage is attached to
-         */
-        super(parentAsset);
-    }
-
-
-    /**
-     * Copy/clone constructor - - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the lineage clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param parentAsset - description of the asset that this lineage is attached to.
-     * @param templateLineage - lineage object to copy.
-     */
-    public Lineage(AssetDescriptor  parentAsset, Lineage   templateLineage)
-    {
-        super(parentAsset, templateLineage);
-
-        /*
-         * The open lineage design is still in progress so for the time being, this object does not do anything
-         * useful
-         */
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Lineage{}";
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Location.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Location.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Location.java
deleted file mode 100644
index 813f157..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Location.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-/**
- * Location describes where the asset is located.  The model allows a very flexible definition of location
- * that can be set up at different levels of granularity.
- */
-public class Location extends Referenceable
-{
-    /*
-     * Properties that make up the location of the asset.
-     */
-    private String displayName = null;
-    private String description = null;
-
-
-    /**
-     * Typical constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param displayName - consumable name
-     * @param description - description property stored for the location.
-     */
-    public Location(AssetDescriptor      parentAsset,
-                    ElementType          type,
-                    String               guid,
-                    String               url,
-                    Classifications      classifications,
-                    String               qualifiedName,
-                    AdditionalProperties additionalProperties,
-                    Meanings             meanings,
-                    String               displayName,
-                    String               description)
-    {
-        super(parentAsset, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-
-        this.displayName = displayName;
-        this.description = description;
-    }
-
-    /**
-     * Copy/clone constructor
-     *
-     * @param parentAsset - description of the asset that this location is attached to.
-     * @param templateLocation - template object to copy.
-     */
-    public Location(AssetDescriptor  parentAsset, Location   templateLocation)
-    {
-        super(parentAsset, templateLocation);
-        if (templateLocation != null)
-        {
-            displayName = templateLocation.getDisplayName();
-            description = templateLocation.getDescription();
-        }
-    }
-
-
-    /**
-     * Returns the stored display name property for the location.
-     * If no display name is available then null is returned.
-     *
-     * @return displayName
-     */
-    public String getDisplayName()
-    {
-        return displayName;
-    }
-
-
-    /**
-     * Returns the stored description property for the location.
-     * If no description is provided then null is returned.
-     *
-     * @return description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Location{" +
-                "displayName='" + displayName + '\'' +
-                ", description='" + description + '\'' +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Locations.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Locations.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Locations.java
deleted file mode 100644
index b8b3fc5..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Locations.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * Locations supports an iterator over a list of locations.  Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class Locations extends AssetPropertyIteratorBase implements Iterator<Location>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public Locations(AssetDescriptor              parentAsset,
-                     int                          totalElementCount,
-                     int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public Locations(AssetDescriptor   parentAsset, Locations    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new Location(parentAsset, (Location)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract Locations  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return Location - next element object that has been cloned.
-     */
-    @Override
-    public Location next()
-    {
-        return (Location)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Locations{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file


[08/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSRepositoryConnector.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSRepositoryConnector.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSRepositoryConnector.java
deleted file mode 100644
index 72de2f4..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSRepositoryConnector.java
+++ /dev/null
@@ -1,477 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository.repositoryconnector;
-
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.omrs.eventmanagement.*;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSInstanceEventProcessor;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSTypeDefEventProcessor;
-import org.apache.atlas.omrs.eventmanagement.repositoryeventmapper.OMRSRepositoryEventMapperConnector;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.OMRSLogicErrorException;
-import org.apache.atlas.omrs.ffdc.exception.RepositoryErrorException;
-import org.apache.atlas.omrs.localrepository.OMRSLocalRepository;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.*;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollection;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-
-/**
- * LocalOMRSRepositoryConnector provides access the local metadata repository plus manages outbound
- * repository events.
- *
- * It passes each request to both the real OMRS connector for the local metadata repository and an
- * OMRSEventPublisher.  The OMRSEventPublisher will use its configuration to decide if it needs to
- * pass on the request to the rest of the metadata repository cohort.
- */
-public class LocalOMRSRepositoryConnector extends OMRSRepositoryConnector implements OMRSLocalRepository
-{
-    private static final String   repositoryEventMapperName = "LocalRepositoryEventMapper";
-    private static final String   repositoryName            = "LocalRepository";
-
-    /*
-     * The repository content manager is the TypeDefManager for the Local OMRS Metadata Collection,
-     * The TypeDefValidator for the CohortRegistry and the incoming TypeDef Event Processor for the Archive
-     * Manager and EventListener
-     */
-    private OMRSTypeDefValidator               typeDefValidator;
-    private OMRSTypeDefManager                 typeDefManager;
-    private OMRSTypeDefEventProcessor          incomingTypeDefEventProcessor;
-
-    private OMRSInstanceEventProcessor         incomingInstanceEventProcessor   = null;
-    private OMRSRepositoryEventProcessor       outboundRepositoryEventProcessor = null;
-    private OMRSRepositoryEventManager         outboundRepositoryEventManager   = null;
-    private OMRSRepositoryEventExchangeRule    saveExchangeRule                 = null;
-
-    private OMRSRepositoryConnector            realLocalConnector               = null;
-    private OMRSRepositoryEventMapperConnector realEventMapper                  = null;
-
-
-    /**
-     * Constructor used by the LocalOMRSConnectorProvider.  It provides the information necessary to run the
-     * local repository.
-     *
-     * @param realLocalConnector - connector to the local repository
-     * @param realEventMapper - optional event mapper for local repository
-     * @param outboundRepositoryEventManager - event manager to call for outbound events.
-     * @param repositoryContentManager - repositoryContentManager for supporting OMRS in managing TypeDefs.
-     * @param saveExchangeRule - rule to determine what events to save to the local repository.
-     */
-    protected LocalOMRSRepositoryConnector(OMRSRepositoryConnector            realLocalConnector,
-                                           OMRSRepositoryEventMapperConnector realEventMapper,
-                                           OMRSRepositoryEventManager         outboundRepositoryEventManager,
-                                           OMRSRepositoryContentManager       repositoryContentManager,
-                                           OMRSRepositoryEventExchangeRule    saveExchangeRule)
-    {
-        this.realLocalConnector = realLocalConnector;
-        this.realEventMapper = realEventMapper;
-
-        this.outboundRepositoryEventManager = outboundRepositoryEventManager;
-        this.saveExchangeRule = saveExchangeRule;
-
-        /*
-         * The repository content manager is the TypeDefManager for the Local OMRS Metadata Collection,
-         * The TypeDefValidator for the CohortRegistry and the incoming TypeDef Event Processor for the Archive
-         * Manager and EventListener
-         */
-        this.typeDefValidator = repositoryContentManager;
-        this.typeDefManager = repositoryContentManager;
-        this.incomingTypeDefEventProcessor = repositoryContentManager;
-
-        /*
-         * Incoming events are processed directly with real local connector to avoid the outbound event
-         * propagation managed by LocalOMRSMetadataCollection.
-         */
-        if (repositoryContentManager != null)
-        {
-            repositoryContentManager.setupEventProcessor(this,
-                                                         realLocalConnector,
-                                                         saveExchangeRule,
-                                                         outboundRepositoryEventManager);
-        }
-
-        /*
-         * The realEventMapper is a plug-in component that handles repository events for
-         * repository that have additional APIs for managing metadata and need their own mechanism for
-         * sending OMRS Repository Events.  If there is no realEventMapper then the localOMRSMetadataCollection
-         * will send the outbound repository events.
-         */
-        if (realEventMapper != null)
-        {
-            realEventMapper.initialize(repositoryEventMapperName,
-                                       realLocalConnector);
-            realEventMapper.setRepositoryEventProcessor(outboundRepositoryEventManager);
-        }
-        else
-        {
-            /*
-             * When outboundRepositoryEventProcessor is not null then the local metadata collection creates events.
-             * Otherwise it assumes the event mapper will produce events.
-             */
-            this.outboundRepositoryEventProcessor = outboundRepositoryEventManager;
-        }
-    }
-
-
-    /**
-     * Indicates that the connector is completely configured and can begin processing.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public void start() throws ConnectorCheckedException
-    {
-        super.start();
-
-        if (realLocalConnector != null)
-        {
-            realLocalConnector.start();
-        }
-
-        if (realEventMapper != null)
-        {
-            realEventMapper.start();
-        }
-    }
-
-
-    /**
-     * Free up any resources held since the connector is no longer needed.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public void disconnect() throws ConnectorCheckedException
-    {
-        super.disconnect();
-
-        if (realLocalConnector  != null)
-        {
-            realLocalConnector.disconnect();
-        }
-
-        if (realEventMapper != null)
-        {
-            realEventMapper.disconnect();
-        }
-    }
-
-
-    /*
-     * ==============================
-     * OMRSMetadataCollectionManager
-     */
-
-    /**
-     * Set up a repository helper object for the repository connector to use.
-     *
-     * @param repositoryHelper - helper object for building TypeDefs and metadata instances.
-     */
-    public void setRepositoryHelper(OMRSRepositoryHelper   repositoryHelper)
-    {
-        super.setRepositoryHelper(repositoryHelper);
-
-        if (realLocalConnector != null)
-        {
-            realLocalConnector.setRepositoryHelper(repositoryHelper);
-        }
-
-        if (realEventMapper != null)
-        {
-            realEventMapper.setRepositoryHelper(repositoryHelper);
-        }
-    }
-
-
-    /**
-     * Set up a repository validator for the repository connector to use.
-     *
-     * @param repositoryValidator - validator object to check the validity of TypeDefs and metadata instances.
-     */
-    public void setRepositoryValidator(OMRSRepositoryValidator  repositoryValidator)
-    {
-        super.setRepositoryValidator(repositoryValidator);
-
-        if (realLocalConnector != null)
-        {
-            realLocalConnector.setRepositoryValidator(repositoryValidator);
-        }
-
-        if (realEventMapper != null)
-        {
-            realEventMapper.setRepositoryValidator(repositoryValidator);
-        }
-    }
-
-
-    /**
-     * Set up the maximum PageSize
-     *
-     * @param maxPageSize - maximum number of elements that can be retrieved on a request.
-     */
-    public void setMaxPageSize(int    maxPageSize)
-    {
-        super.setMaxPageSize(maxPageSize);
-
-        if (realLocalConnector != null)
-        {
-            realLocalConnector.setMaxPageSize(maxPageSize);
-        }
-    }
-
-
-    /**
-     * Set up the name of the server where the metadata collection resides.
-     *
-     * @param serverName - String name
-     */
-    public void  setServerName(String      serverName)
-    {
-        super.setServerName(serverName);
-
-        if (realLocalConnector != null)
-        {
-            realLocalConnector.setServerName(serverName);
-        }
-
-        if (realEventMapper != null)
-        {
-            realEventMapper.setServerName(serverName);
-        }
-    }
-
-
-    /**
-     * Set up the descriptive string describing the type of the server.  This might be the
-     * name of the product, or similar identifier.
-     *
-     * @param serverType - String server type
-     */
-    public void setServerType(String serverType)
-    {
-        super.setServerType(serverType);
-
-        if (realLocalConnector != null)
-        {
-            realLocalConnector.setServerType(serverType);
-        }
-
-        if (realEventMapper != null)
-        {
-            realEventMapper.setServerType(serverType);
-        }
-    }
-
-
-
-    /**
-     * Set up the name of the organization that runs/owns the server.
-     *
-     * @param organizationName - String organization name
-     */
-    public void setOrganizationName(String organizationName)
-    {
-        super.setOrganizationName(organizationName);
-
-        if (realLocalConnector != null)
-        {
-            realLocalConnector.setOrganizationName(organizationName);
-        }
-
-        if (realEventMapper != null)
-        {
-            realEventMapper.setOrganizationName(organizationName);
-        }
-    }
-
-
-    /**
-     * Set up the unique Id for this metadata collection.
-     *
-     * @param metadataCollectionId - String unique Id
-     */
-    public void setMetadataCollectionId(String     metadataCollectionId)
-    {
-        final String methodName = "setMetadataCollectionId";
-
-        super.setMetadataCollectionId(metadataCollectionId);
-
-        if (realLocalConnector != null)
-        {
-            realLocalConnector.setMetadataCollectionId(metadataCollectionId);
-        }
-
-        if (realEventMapper != null)
-        {
-            realEventMapper.setMetadataCollectionId(metadataCollectionId);
-        }
-
-        this.incomingInstanceEventProcessor = new LocalOMRSInstanceEventProcessor(metadataCollectionId,
-                                                                                  super.serverName,
-                                                                                  realLocalConnector,
-                                                                                  super.repositoryHelper,
-                                                                                  super.repositoryValidator,
-                                                                                  saveExchangeRule,
-                                                                                  outboundRepositoryEventProcessor);
-
-        try
-        {
-            /*
-             * Initialize the metadata collection only once the connector is properly set up.
-             */
-            metadataCollection = new LocalOMRSMetadataCollection(this,
-                                                                 super.serverName,
-                                                                 super.repositoryHelper,
-                                                                 super.repositoryValidator,
-                                                                 metadataCollectionId,
-                                                                 this.getLocalServerName(),
-                                                                 this.getLocalServerType(),
-                                                                 this.getOrganizationName(),
-                                                                 realLocalConnector.getMetadataCollection(),
-                                                                 outboundRepositoryEventProcessor,
-                                                                 typeDefManager);
-        }
-        catch (Throwable   error)
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_METADATA_COLLECTION;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(realLocalConnector.getRepositoryName());
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction(),
-                                              error);
-        }
-    }
-
-    /**
-     * Returns the metadata collection object that provides an OMRS abstraction of the metadata within
-     * a metadata repository.
-     *
-     * @return OMRSMetadataCollection - metadata information retrieved from the metadata repository.
-     * @throws RepositoryErrorException - no metadata collection
-     */
-    public OMRSMetadataCollection getMetadataCollection() throws RepositoryErrorException
-    {
-        final String      methodName = "getMetadataCollection";
-
-        if (metadataCollection == null)
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_METADATA_COLLECTION;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(repositoryName);
-
-            throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction());
-        }
-
-        return metadataCollection;
-    }
-
-    /*
-     * ====================================
-     * OMRSLocalRepository
-     */
-
-    /**
-     * Returns the unique identifier (guid) of the local repository's metadata collection.
-     *
-     * @return String guid
-     */
-    public String getMetadataCollectionId()
-    {
-        return super.metadataCollectionId;
-    }
-
-
-    /**
-     * Returns the Connection to the local repository that can be used by remote servers to create
-     * an OMRS repository connector to call this server in order to access the local repository.
-     *
-     * @return Connection object
-     */
-    public Connection getLocalRepositoryRemoteConnection()
-    {
-        return new Connection(super.connection);
-    }
-
-
-    /**
-     * Return the event manager that the local repository uses to distribute events from the local repository.
-     *
-     * @return outbound repository event manager
-     */
-    public OMRSRepositoryEventManager getOutboundRepositoryEventManager()
-    {
-        return outboundRepositoryEventManager;
-    }
-
-
-    /**
-     * Return the TypeDef event processor that should be passed all incoming TypeDef events received
-     * from the cohorts that this server is a member of.
-     *
-     * @return OMRSTypeDefEventProcessor for the local repository.
-     */
-    public OMRSTypeDefEventProcessor getIncomingTypeDefEventProcessor()
-    {
-        return incomingTypeDefEventProcessor;
-    }
-
-
-    /**
-     * Return the instance event processor that should be passed all incoming instance events received
-     * from the cohorts that this server is a member of.
-     *
-     * @return OMRSInstanceEventProcessor for the local repository.
-     */
-    public OMRSInstanceEventProcessor getIncomingInstanceEventProcessor()
-    {
-        return incomingInstanceEventProcessor;
-    }
-
-
-    /**
-     * Return the local server name - used for outbound events.
-     *
-     * @return String name
-     */
-    public String getLocalServerName() { return super.serverName; }
-
-
-    /**
-     * Return the local server type - used for outbound events.
-     *
-     * @return String name
-     */
-    public String getLocalServerType() { return super.serverType; }
-
-
-    /**
-     * Return the name of the organization that owns this local repository.
-     *
-     * @return String name
-     */
-    public String getOrganizationName() { return super.organizationName; }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/OMRSInstanceRetrievalEventProcessor.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/OMRSInstanceRetrievalEventProcessor.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/OMRSInstanceRetrievalEventProcessor.java
deleted file mode 100644
index e16df3b..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/OMRSInstanceRetrievalEventProcessor.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository.repositoryconnector;
-
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityDetail;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.Relationship;
-
-import java.util.List;
-
-
-/**
- * OMRSInstanceRetrievalEventProcessor defines the interface used by the Enterprise OMRS Repository Connector
- * to pass instance metadata retrieved from remote open metadata repository connectors.
- */
-public interface OMRSInstanceRetrievalEventProcessor
-{
-    /**
-     * Pass an entity that has been retrieved from a remote open metadata repository so it can be validated and
-     * (if the rules permit) cached in the local repository.
-     *
-     * @param sourceName - name of the source of this event.
-     * @param metadataCollectionId - unique identifier for the metadata from the remote repository
-     * @param entity - the retrieved entity.
-     * @return Validated and processed entity.
-     */
-    EntityDetail processRetrievedEntity(String        sourceName,
-                                        String        metadataCollectionId,
-                                        EntityDetail  entity);
-
-
-    /**
-     * Pass a list of entities that have been retrieved from a remote open metadata repository so they can be
-     * validated and (if the rules permit) cached in the local repository.
-     *
-     * @param sourceName - name of the source of this event.
-     * @param metadataCollectionId - unique identifier for the metadata from the remote repository
-     * @param entities - the retrieved relationships
-     * @return the validated and processed relationships
-     */
-    List<EntityDetail> processRetrievedEntities(String                    sourceName,
-                                                String                    metadataCollectionId,
-                                                List<EntityDetail>        entities);
-
-
-    /**
-     * Pass a relationship that has been retrieved from a remote open metadata repository so it can be validated and
-     * (if the rules permit) cached in the local repository.
-     *
-     * @param sourceName - name of the source of this event.
-     * @param metadataCollectionId - unique identifier for the metadata from the remote repository
-     * @param relationship - the retrieved relationship
-     * @return the validated and processed relationship
-     */
-    Relationship processRetrievedRelationship(String         sourceName,
-                                              String         metadataCollectionId,
-                                              Relationship   relationship);
-
-
-    /**
-     * Pass a list of relationships that have been retrieved from a remote open metadata repository so they can be
-     * validated and (if the rules permit) cached in the local repository.
-     *
-     * @param sourceName - name of the source of this event.
-     * @param metadataCollectionId - unique identifier for the metadata from the remote repository
-     * @param relationships - the list of retrieved relationships
-     * @return the validated and processed relationships
-     */
-    List<Relationship> processRetrievedRelationships(String               sourceName,
-                                                     String               metadataCollectionId,
-                                                     List<Relationship>   relationships);
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSInstanceHelper.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSInstanceHelper.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSInstanceHelper.java
deleted file mode 100644
index 5e95b9a..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSInstanceHelper.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository.repositorycontentmanager;
-
-
-import org.apache.atlas.omrs.ffdc.exception.TypeErrorException;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.*;
-
-import java.util.List;
-
-
-/**
- * OMRSInstanceHelper provides methods to help OMRS connectors and adapters ensure the content of
- * entities and relationships match the type definitions recorded in the TypeDefs.
- */
-public interface OMRSInstanceHelper
-{
-    /**
-     * Return an entity with the header and type information filled out.  The caller only needs to add properties
-     * and classifications to complete the set up of the entity.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param metadataCollectionId - unique identifier for the home metadata collection
-     * @param provenanceType - origin of the entity
-     * @param userName - name of the creator
-     * @param typeName - name of the type
-     * @return partially filled out entity - needs classifications and properties
-     * @throws TypeErrorException - the type name is not recognized.
-     */
-    EntityDetail getSkeletonEntity(String                  sourceName,
-                                   String                  metadataCollectionId,
-                                   InstanceProvenanceType  provenanceType,
-                                   String                  userName,
-                                   String                  typeName) throws TypeErrorException;
-
-
-    /**
-     * Return a classification with the header and type information filled out.  The caller only needs to add properties
-     * and possibility origin information if it is propagated to complete the set up of the classification.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param userName - name of the creator
-     * @param classificationTypeName - name of the classification type
-     * @param entityTypeName - name of the type for the entity that this classification is to be attached to.
-     * @return partially filled out classification - needs properties and possibly origin information
-     * @throws TypeErrorException - the type name is not recognized as a classification type.
-     */
-    Classification getSkeletonClassification(String       sourceName,
-                                             String       userName,
-                                             String       classificationTypeName,
-                                             String       entityTypeName) throws TypeErrorException;
-
-
-    /**
-     * Return a relationship with the header and type information filled out.  The caller only needs to add properties
-     * to complete the set up of the relationship.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param metadataCollectionId - unique identifier for the home metadata collection
-     * @param provenanceType - origin type of the relationship
-     * @param userName - name of the creator
-     * @param typeName - name of the relationship's type
-     * @return partially filled out relationship - needs properties
-     * @throws TypeErrorException - the type name is not recognized as a relationship type.
-     */
-    Relationship getSkeletonRelationship(String                  sourceName,
-                                         String                  metadataCollectionId,
-                                         InstanceProvenanceType  provenanceType,
-                                         String                  userName,
-                                         String                  typeName) throws TypeErrorException;
-
-
-    /**
-     * Return a filled out entity.  It just needs to add the classifications.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param metadataCollectionId - unique identifier for the home metadata collection
-     * @param provenanceType - origin of the entity
-     * @param userName - name of the creator
-     * @param typeName - name of the type
-     * @param properties - properties for the entity
-     * @param classifications - list of classifications for the entity
-     * @return an entity that is filled out
-     * @throws TypeErrorException - the type name is not recognized as an entity type
-     */
-    EntityDetail getNewEntity(String                    sourceName,
-                              String                    metadataCollectionId,
-                              InstanceProvenanceType    provenanceType,
-                              String                    userName,
-                              String                    typeName,
-                              InstanceProperties        properties,
-                              List<Classification>      classifications) throws TypeErrorException;
-
-
-    /**
-     * Return a filled out relationship.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param metadataCollectionId - unique identifier for the home metadata collection
-     * @param provenanceType - origin of the relationship
-     * @param userName - name of the creator
-     * @param typeName - name of the type
-     * @param properties - properties for the relationship
-     * @return a relationship that is filled out
-     * @throws TypeErrorException - the type name is not recognized as a relationship type
-     */
-    Relationship getNewRelationship(String                  sourceName,
-                                    String                  metadataCollectionId,
-                                    InstanceProvenanceType  provenanceType,
-                                    String                  userName,
-                                    String                  typeName,
-                                    InstanceProperties      properties) throws TypeErrorException;
-
-
-    /**
-     * Return a classification with the header and type information filled out.  The caller only needs to add properties
-     * to complete the set up of the classification.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param userName - name of the creator
-     * @param typeName - name of the type
-     * @param entityTypeName - name of the type for the entity that this classification is to be attached to.
-     * @param classificationOrigin - origin of classification
-     * @param classificationOriginGUID - GUID of original classification if propagated
-     * @param properties - properties for the classification
-     * @return partially filled out classification - needs properties and possibly origin information
-     * @throws TypeErrorException - the type name is not recognized as a classification type.
-     */
-    Classification getNewClassification(String               sourceName,
-                                        String               userName,
-                                        String               typeName,
-                                        String               entityTypeName,
-                                        ClassificationOrigin classificationOrigin,
-                                        String               classificationOriginGUID,
-                                        InstanceProperties   properties) throws TypeErrorException;
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSInstanceValidator.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSInstanceValidator.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSInstanceValidator.java
deleted file mode 100644
index b3b75d8..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSInstanceValidator.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository.repositorycontentmanager;
-
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityDetail;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityProxy;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntitySummary;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.Relationship;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefCategory;
-
-
-/**
- * OMRSInstanceValidator provides method to validate entities and relationships match their type definition
- * (TypeDef).
- */
-public interface OMRSInstanceValidator
-{
-    /**
-     * Test that the supplied entity is valid.
-     *
-     * @param sourceName - source of the entity (used for logging)
-     * @param entity - entity to test
-     * @return boolean result
-     */
-    boolean validEntity(String        sourceName,
-                        EntitySummary entity);
-
-
-    /**
-     * Test that the supplied entity is valid.
-     *
-     * @param sourceName - source of the entity (used for logging)
-     * @param entity - entity to test
-     * @return boolean result
-     */
-    boolean validEntity(String      sourceName,
-                        EntityProxy entity);
-
-
-    /**
-     * Test that the supplied entity is valid.
-     *
-     * @param sourceName - source of the entity (used for logging)
-     * @param entity - entity to test
-     * @return boolean result
-     */
-    boolean validEntity(String       sourceName,
-                        EntityDetail entity);
-
-
-    /**
-     * Test that the supplied relationship is valid.
-     *
-     * @param sourceName - source of the relationship (used for logging)
-     * @param relationship - relationship to test
-     * @return boolean result
-     */
-    boolean validRelationship(String       sourceName,
-                              Relationship relationship);
-
-    /**
-     * Verify that the identifiers for an instance are correct.
-     *
-     * @param sourceName - source of the instance (used for logging)
-     * @param typeDefGUID - unique identifier for the type.
-     * @param typeDefName - unique name for the type.
-     * @param category - expected category of the instance.
-     * @param instanceGUID - unique identifier for the instance.
-     * @return boolean indicating whether the identifiers are ok.
-     */
-    boolean validInstanceId(String           sourceName,
-                            String           typeDefGUID,
-                            String           typeDefName,
-                            TypeDefCategory  category,
-                            String           instanceGUID);
-}


[43/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/OMAGServerAdminResource.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/OMAGServerAdminResource.java b/omag-api/src/main/java/org/apache/atlas/omag/admin/server/OMAGServerAdminResource.java
deleted file mode 100644
index ebc9f2a..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/OMAGServerAdminResource.java
+++ /dev/null
@@ -1,1379 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omag.admin.server;
-
-import org.apache.atlas.ocf.Connector;
-import org.apache.atlas.ocf.ConnectorBroker;
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.ocf.properties.beans.ConnectorType;
-import org.apache.atlas.ocf.properties.beans.Endpoint;
-import org.apache.atlas.omag.admin.LocalRepositoryMode;
-import org.apache.atlas.omag.admin.OMAGServerAdministration;
-import org.apache.atlas.omag.admin.OMAGServiceMode;
-import org.apache.atlas.omag.configuration.properties.AccessServiceConfig;
-import org.apache.atlas.omag.configuration.properties.OMAGServerConfig;
-import org.apache.atlas.omag.configuration.registration.AccessServiceAdmin;
-import org.apache.atlas.omag.configuration.registration.AccessServiceOperationalStatus;
-import org.apache.atlas.omag.configuration.registration.AccessServiceRegistration;
-import org.apache.atlas.omag.configuration.store.OMAGServerConfigStore;
-import org.apache.atlas.omag.configuration.store.file.FileBasedServerConfigStoreProvider;
-import org.apache.atlas.omag.ffdc.OMAGErrorCode;
-import org.apache.atlas.omag.ffdc.exception.OMAGConfigurationErrorException;
-import org.apache.atlas.omag.ffdc.exception.OMAGInvalidParameterException;
-import org.apache.atlas.omag.ffdc.exception.OMAGNotAuthorizedException;
-import org.apache.atlas.omrs.admin.OMRSConfigurationFactory;
-import org.apache.atlas.omrs.admin.OMRSOperationalServices;
-import org.apache.atlas.omrs.admin.properties.CohortConfig;
-import org.apache.atlas.omrs.admin.properties.EnterpriseAccessConfig;
-import org.apache.atlas.omrs.admin.properties.LocalRepositoryConfig;
-import org.apache.atlas.omrs.admin.properties.RepositoryServicesConfig;
-import org.apache.atlas.omrs.topicconnectors.OMRSTopicConnector;
-import org.springframework.web.bind.annotation.*;
-
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.UUID;
-
-/**
- * OMAGServerAdminResource provides the server-side implementation of the administrative interface for
- * an Open Metadata and Governance (OMAG) Server.  It provides all of the
- * configuration properties for the Open Metadata Access Services (OMASs) and delegates administration requests
- * to the Open Metadata Repository Services (OMRS).
- * <p>
- * There are four types of operations defined by OMAGServerAdministration interface:
- * </p>
- * <ul>
- * <li>
- * Basic configuration - these methods use the minimum of configuration information to run the
- * server using default properties.
- * </li>
- * <li>
- * Advanced Configuration - provides access to all configuration properties to provide
- * fine-grained control of the server.
- * </li>
- * <li>
- * Initialization and shutdown - these methods control the initialization and shutdown of the
- * open metadata and governance service instance based on the supplied configuration.
- * </li>
- * <li>
- * Operational status and control - these methods query the status of the open metadata and governance
- * services as well as the audit log.
- * </li>
- * </ul>
- */
-@RestController
-@RequestMapping("/omag/admin/{userId}/{serverName}")
-public class OMAGServerAdminResource implements OMAGServerAdministration
-{
-    private OMAGServerConfigStore    serverConfigStore      = null;
-    private OMRSOperationalServices  operationalServices    = null;
-    private List<AccessServiceAdmin> accessServiceAdminList = new ArrayList<>();
-
-
-
-    /*
-     * =============================================================
-     * Configure server - basic options using defaults
-     */
-
-    /**
-     * Set up the root URL for this server that is used to construct full URL paths to calls for
-     * this server's REST interfaces.  The default value is "localhost:8080".
-     *
-     * @param userId        - user that is issuing the request.
-     * @param serverName    - local server name.
-     * @param url           - String url.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or serverURLRoot parameter.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/server-url-root")
-    public void setServerURLRoot(@PathVariable String userId,
-                                 @PathVariable String serverName,
-                                 @RequestParam String url) throws OMAGNotAuthorizedException,
-                                                                            OMAGInvalidParameterException
-    {
-        final String methodName = "setServerURLRoot()";
-        final String omagName   = "/omag/";
-
-        validateUserId(userId, serverName, methodName);
-        validateServerName(serverName, methodName);
-
-        OMAGServerConfig serverConfig = this.getServerConfig(serverName, methodName);
-
-        serverConfig.setLocalServerURL(url + omagName + serverName);
-
-        this.saveServerConfig(serverConfig);
-    }
-
-
-    /**
-     * Set up the descriptive type of the server.  This value is added to distributed events to
-     * make it easier to understand the source of events.  The default value is "Open Metadata and Governance Server".
-     *
-     * @param userId     - user that is issuing the request.
-     * @param serverName - local server name.
-     * @param typeName   - short description for the type of server.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or serverType parameter.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/server-type")
-    public void setServerType(@PathVariable String userId,
-                              @PathVariable String serverName,
-                              @RequestParam String typeName) throws OMAGNotAuthorizedException,
-                                                                      OMAGInvalidParameterException
-    {
-        final String methodName = "setServerType()";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        OMAGServerConfig serverConfig = this.getServerConfig(serverName, methodName);
-
-        serverConfig.setLocalServerType(typeName);
-
-        this.saveServerConfig(serverConfig);
-    }
-
-
-    /**
-     * Set up the name of the organization that is running this server.  This value is added to distributed events to
-     * make it easier to understand the source of events.  The default value is null.
-     *
-     * @param userId           - user that is issuing the request.
-     * @param serverName       - local server name.
-     * @param name             - String name of the organization.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or organizationName parameter.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/organization-name")
-    public void setOrganizationName(@PathVariable String userId,
-                                    @PathVariable String serverName,
-                                    @RequestParam String name) throws OMAGNotAuthorizedException,
-                                                                                  OMAGInvalidParameterException
-    {
-        final String methodName = "setOrganizationName()";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        OMAGServerConfig serverConfig = this.getServerConfig(serverName, methodName);
-
-        serverConfig.setOrganizationName(name);
-
-        this.saveServerConfig(serverConfig);
-    }
-
-
-    /**
-     * Set an upper limit in the page size that can be requested on a REST call to the server.  The default
-     * value is 1000.
-     *
-     * @param userId - user that is issuing the request.
-     * @param serverName - local server name.
-     * @param maxPageSize - max number of elements that can be returned on a request.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or maxPageSize parameter.
-     */
-    public void setMaxPageSize(String  userId,
-                               String  serverName,
-                               int     maxPageSize) throws OMAGNotAuthorizedException,
-                                                           OMAGInvalidParameterException
-    {
-        final String methodName = "setMaxPageSize()";
-
-        /*
-         * Validate and set up the userName and server name.
-         */
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        if (maxPageSize > 0)
-        {
-            OMAGServerConfig serverConfig = this.getServerConfig(serverName, methodName);
-
-            serverConfig.setMaxPageSize(maxPageSize);
-
-            this.saveServerConfig(serverConfig);
-        }
-        else
-        {
-            OMAGErrorCode errorCode    = OMAGErrorCode.BAD_MAX_PAGE_SIZE;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(serverName, Integer.toString(maxPageSize));
-
-            throw new OMAGInvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                    this.getClass().getName(),
-                                                    methodName,
-                                                    errorMessage,
-                                                    errorCode.getSystemAction(),
-                                                    errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Set up whether the open metadata access services should be enabled or not.  This is controlled by the
-     * serviceMode parameter.   The configuration properties for each access service can be changed from
-     * their default using setAccessServicesConfig operation.
-     * <p>
-     * In addition to enabling the access services, this method also enables the OMRS Enterprise Repository Services
-     * that supports the enterprise access layer used by the open metadata access services.
-     *
-     * @param userId      - user that is issuing the request.
-     * @param serverName  - local server name.
-     * @param serviceMode - OMAGServiceMode enum.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or serviceMode parameter.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/access-services/mode")
-    public void setAccessServicesMode(@PathVariable String          userId,
-                                      @PathVariable String          serverName,
-                                      @RequestParam OMAGServiceMode serviceMode) throws OMAGNotAuthorizedException,
-                                                                                        OMAGInvalidParameterException
-    {
-        final String methodName = "setAccessServicesMode()";
-
-        /*
-         * Validate and set up the userName and server name.
-         */
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-        validateServiceMode(serviceMode, serverName, methodName);
-
-        OMAGServerConfig serverConfig = this.getServerConfig(serverName, methodName);
-
-        ArrayList<AccessServiceConfig> accessServiceConfigList  = new ArrayList<>();
-        EnterpriseAccessConfig         enterpriseAccessConfig   = null;
-
-        if (serviceMode == OMAGServiceMode.ENABLED)
-        {
-            List<AccessServiceRegistration> accessServiceRegistrationList = OMAGAccessServiceRegistration.getAccessServiceRegistrationList();
-
-            /*
-             * Set up the available access services.
-             */
-            if (accessServiceRegistrationList != null)
-            {
-                for (AccessServiceRegistration  registration : accessServiceRegistrationList)
-                {
-                    if (registration != null)
-                    {
-                        if (registration.getAccessServiceOperationalStatus() == AccessServiceOperationalStatus.ENABLED)
-                        {
-                            AccessServiceConfig accessServiceConfig = new AccessServiceConfig(registration);
-                            accessServiceConfigList.add(accessServiceConfig);
-                        }
-                    }
-                }
-            }
-
-
-            /*
-             * Now set up the enterprise repository services.
-             */
-            OMRSConfigurationFactory configurationFactory = new OMRSConfigurationFactory();
-            enterpriseAccessConfig = configurationFactory.getDefaultEnterpriseAccessConfig(serverConfig.getLocalServerName());
-        }
-
-        if (accessServiceConfigList.isEmpty())
-        {
-            accessServiceConfigList = null;
-        }
-
-        this.setAccessServicesConfig(userId, serverName, accessServiceConfigList);
-        this.setEnterpriseAccessConfig(userId, serverName, enterpriseAccessConfig);
-    }
-
-
-    /**
-     * Set up the type of local repository.  There are three choices: No local Repository, Local Graph Repository
-     * and Repository Proxy.  The default is No Local Repository.  If the local repository mode is set to
-     * Repository Proxy then it is necessary to provide the connection to the local repository using the
-     * setRepositoryProxyConnection operation.
-     *
-     * @param userId              - user that is issuing the request.
-     * @param serverName          - local server name.
-     * @param repositoryMode      - LocalRepositoryMode enum - NO_LOCAL_REPOSITORY, IN_MEMORY_REPOSITORY,
-     *                            LOCAL_GRAPH_REPOSITORY or REPOSITORY_PROXY.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or localRepositoryMode parameter.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/local-repository/mode")
-    public void setLocalRepositoryMode(@PathVariable String userId,
-                                       @PathVariable String serverName,
-                                       @RequestParam LocalRepositoryMode repositoryMode) throws OMAGNotAuthorizedException,
-                                                                                                     OMAGInvalidParameterException
-    {
-        final String methodName = "setLocalRepositoryMode()";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        OMAGServerConfig serverConfig = this.getServerConfig(serverName, methodName);
-
-        /*
-         * The local repository mode should not be null.
-         */
-        if (repositoryMode == null)
-        {
-            OMAGErrorCode errorCode    = OMAGErrorCode.NULL_LOCAL_REPOSITORY_MODE;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(serverName);
-
-            throw new OMAGInvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                    this.getClass().getName(),
-                                                    methodName,
-                                                    errorMessage,
-                                                    errorCode.getSystemAction(),
-                                                    errorCode.getUserAction());
-        }
-
-        LocalRepositoryConfig    localRepositoryConfig    = null;
-        OMRSConfigurationFactory configurationFactory     = new OMRSConfigurationFactory();
-
-        switch (repositoryMode)
-        {
-            case NO_LOCAL_REPOSITORY:
-                localRepositoryConfig = null;
-                break;
-
-            case IN_MEMORY_REPOSITORY:
-                localRepositoryConfig = configurationFactory.getInMemoryLocalRepositoryConfig(serverConfig.getLocalServerName(),
-                                                                                              serverConfig.getLocalServerURL());
-                break;
-
-            case LOCAL_GRAPH_REPOSITORY:
-                localRepositoryConfig = configurationFactory.getLocalGraphLocalRepositoryConfig(serverConfig.getLocalServerName(),
-                                                                                                serverConfig.getLocalServerURL());
-                break;
-
-            case REPOSITORY_PROXY:
-                localRepositoryConfig = configurationFactory.getRepositoryProxyLocalRepositoryConfig(serverConfig.getLocalServerName(),
-                                                                                                     serverConfig.getLocalServerURL());
-                break;
-
-        }
-
-        this.setLocalRepositoryConfig(userId, serverName, localRepositoryConfig);
-    }
-
-
-    /**
-     * Provide the connection to the local repository - used when the local repository mode is set to repository proxy.
-     *
-     * @param userId                    - user that is issuing the request.
-     * @param serverName                - local server name.
-     * @param connection                - connection to the OMRS repository connector.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or repositoryProxyConnection parameter
-     * @throws OMAGConfigurationErrorException - the local repository mode has not been set
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/local-repository/proxy-connection")
-    public void setRepositoryProxyConnection(@PathVariable String     userId,
-                                             @PathVariable String     serverName,
-                                             @RequestParam Connection connection) throws OMAGNotAuthorizedException,
-                                                                                                        OMAGInvalidParameterException,
-                                                                                                        OMAGConfigurationErrorException
-    {
-        final String methodName = "setRepositoryProxyConnection()";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        OMAGServerConfig serverConfig = this.getServerConfig(serverName, methodName);
-
-        RepositoryServicesConfig repositoryServicesConfig = serverConfig.getRepositoryServicesConfig();
-        LocalRepositoryConfig    localRepositoryConfig    = null;
-
-        /*
-         * Extract any existing local repository configuration
-         */
-        if (repositoryServicesConfig != null)
-        {
-            localRepositoryConfig = repositoryServicesConfig.getLocalRepositoryConfig();
-        }
-
-        /*
-         * If the local repository config is null then the local repository mode is not set up
-         */
-        if (localRepositoryConfig == null)
-        {
-            OMAGErrorCode errorCode    = OMAGErrorCode.LOCAL_REPOSITORY_MODE_NOT_SET;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(serverName);
-
-            throw new OMAGConfigurationErrorException(errorCode.getHTTPErrorCode(),
-                                                      this.getClass().getName(),
-                                                      methodName,
-                                                      errorMessage,
-                                                      errorCode.getSystemAction(),
-                                                      errorCode.getUserAction());
-        }
-
-        /*
-         * Set up the repository proxy connection in the local repository config
-         */
-        localRepositoryConfig.setLocalRepositoryLocalConnection(connection);
-
-        this.setLocalRepositoryConfig(userId, serverName, localRepositoryConfig);
-    }
-
-
-    /**
-     * Provide the connection to the local repository - used when the local repository mode is set to repository proxy.
-     *
-     * @param userId                    - user that is issuing the request.
-     * @param serverName                - local server name.
-     * @param connectorProvider         - connector provider class name to the OMRS repository connector.
-     * @param url                       - URL of the repository's native REST API.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or repositoryProxyConnection parameter
-     * @throws OMAGConfigurationErrorException - the local repository mode has not been set
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/local-repository/proxy-details")
-    public void setRepositoryProxyConnection(@PathVariable String userId,
-                                             @PathVariable String serverName,
-                                             @RequestParam String connectorProvider,
-                                             @RequestParam String url) throws OMAGNotAuthorizedException,
-                                                                              OMAGInvalidParameterException,
-                                                                              OMAGConfigurationErrorException
-    {
-        final String methodName               = "setRepositoryProxyConnection()";
-        final String endpointGUID             = UUID.randomUUID().toString();
-        final String connectorTypeGUID        = UUID.randomUUID().toString();
-        final String connectionGUID           = UUID.randomUUID().toString();
-        final String endpointDescription      = "Metadata repository native endpoint.";
-        final String connectorTypeDescription = "Metadata repository native connector type.";
-        final String connectionDescription    = "Metadata repository native connection.";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        OMRSConfigurationFactory configurationFactory = new OMRSConfigurationFactory();
-
-        String endpointName    = "MetadataRepositoryNative.Endpoint." + serverName;
-
-        Endpoint endpoint = new Endpoint();
-
-        endpoint.setType(configurationFactory.getEndpointType());
-        endpoint.setGUID(endpointGUID);
-        endpoint.setQualifiedName(endpointName);
-        endpoint.setDisplayName(endpointName);
-        endpoint.setDescription(endpointDescription);
-        endpoint.setAddress(url);
-
-        String connectorTypeName = "MetadataRepositoryNative.ConnectorType." + serverName;
-
-        ConnectorType connectorType = new ConnectorType();
-
-        connectorType.setType(configurationFactory.getConnectorTypeType());
-        connectorType.setGUID(connectorTypeGUID);
-        connectorType.setQualifiedName(connectorTypeName);
-        connectorType.setDisplayName(connectorTypeName);
-        connectorType.setDescription(connectorTypeDescription);
-        connectorType.setConnectorProviderClassName(connectorProvider);
-
-        String connectionName = "MetadataRepositoryNative.Connection." + serverName;
-
-        Connection connection = new Connection();
-
-        connection.setType(configurationFactory.getConnectionType());
-        connection.setGUID(connectionGUID);
-        connection.setQualifiedName(connectionName);
-        connection.setDisplayName(connectionName);
-        connection.setDescription(connectionDescription);
-        connection.setEndpoint(endpoint);
-        connection.setConnectorType(connectorType);
-
-        this.setRepositoryProxyConnection(userId, serverName, connection);
-    }
-
-
-    /**
-     * Provide the connection to the local repository's event mapper if needed.  The default value is null which
-     * means no event mapper.  An event mapper is needed if the local repository has additional APIs that can change
-     * the metadata in the repository without going through the open metadata and governance services.
-     *
-     * @param userId                     - user that is issuing the request.
-     * @param serverName                 - local server name.
-     * @param connection - connection to the OMRS repository event mapper.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or localRepositoryEventMapper parameter.
-     * @throws OMAGConfigurationErrorException - the local repository mode has not been set
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/local-repository/event-mapper-connection")
-    public void setLocalRepositoryEventMapper(@PathVariable String     userId,
-                                              @PathVariable String     serverName,
-                                              @RequestParam Connection connection) throws OMAGNotAuthorizedException,
-                                                                                                          OMAGInvalidParameterException,
-                                                                                                          OMAGConfigurationErrorException
-    {
-        final String methodName = "setLocalRepositoryEventMapper()";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        OMAGServerConfig serverConfig = this.getServerConfig(serverName, methodName);
-
-        RepositoryServicesConfig repositoryServicesConfig = serverConfig.getRepositoryServicesConfig();
-        LocalRepositoryConfig    localRepositoryConfig    = null;
-
-        /*
-         * Extract any existing local repository configuration
-         */
-        if (repositoryServicesConfig != null)
-        {
-            localRepositoryConfig = repositoryServicesConfig.getLocalRepositoryConfig();
-        }
-
-        /*
-         * The local repository should be partially configured already by setLocalRepositoryMode()
-         */
-        if (localRepositoryConfig == null)
-        {
-            OMAGErrorCode errorCode    = OMAGErrorCode.LOCAL_REPOSITORY_MODE_NOT_SET;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(serverName);
-
-            throw new OMAGConfigurationErrorException(errorCode.getHTTPErrorCode(),
-                                                      this.getClass().getName(),
-                                                      methodName,
-                                                      errorMessage,
-                                                      errorCode.getSystemAction(),
-                                                      errorCode.getUserAction());
-        }
-
-        /*
-         * Set up the event mapper connection in the local repository config
-         */
-        localRepositoryConfig.setEventMapperConnection(connection);
-
-        this.setLocalRepositoryConfig(userId, serverName, localRepositoryConfig);
-    }
-
-
-    /**
-     * Provide the connection to the local repository's event mapper if needed.  The default value is null which
-     * means no event mapper.  An event mapper is needed if the local repository has additional APIs that can change
-     * the metadata in the repository without going through the open metadata and governance services.
-     *
-     * @param userId                     - user that is issuing the request.
-     * @param serverName                 - local server name.
-     * @param connectorProvider          - Java class name of the connector provider for the OMRS repository event mapper.
-     * @param eventSource                - topic name or URL to the native event source.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or localRepositoryEventMapper parameter.
-     * @throws OMAGConfigurationErrorException - the local repository mode has not been set
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/local-repository/event-mapper-details")
-    public void setLocalRepositoryEventMapper(@PathVariable String     userId,
-                                              @PathVariable String     serverName,
-                                              @RequestParam String     connectorProvider,
-                                              @RequestParam String     eventSource) throws OMAGNotAuthorizedException,
-                                                                                           OMAGInvalidParameterException,
-                                                                                           OMAGConfigurationErrorException
-    {
-        final String methodName = "setLocalRepositoryEventMapper()";
-        final String endpointGUID             = UUID.randomUUID().toString();
-        final String connectorTypeGUID        = UUID.randomUUID().toString();
-        final String connectionGUID           = UUID.randomUUID().toString();
-        final String endpointDescription      = "Event mapper endpoint.";
-        final String connectorTypeDescription = "Event mapper connector type.";
-        final String connectionDescription    = "Event mapper connection.";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        OMRSConfigurationFactory configurationFactory = new OMRSConfigurationFactory();
-
-        String endpointName    = "EventMapper.Endpoint." + serverName;
-
-        Endpoint endpoint = new Endpoint();
-
-        endpoint.setType(configurationFactory.getEndpointType());
-        endpoint.setGUID(endpointGUID);
-        endpoint.setQualifiedName(endpointName);
-        endpoint.setDisplayName(endpointName);
-        endpoint.setDescription(endpointDescription);
-        endpoint.setAddress(eventSource);
-
-        String connectorTypeName = "EventMapper.ConnectorType." + serverName;
-
-        ConnectorType connectorType = new ConnectorType();
-
-        connectorType.setType(configurationFactory.getConnectorTypeType());
-        connectorType.setGUID(connectorTypeGUID);
-        connectorType.setQualifiedName(connectorTypeName);
-        connectorType.setDisplayName(connectorTypeName);
-        connectorType.setDescription(connectorTypeDescription);
-        connectorType.setConnectorProviderClassName(connectorProvider);
-
-        String connectionName = "EventMapper.Connection." + serverName;
-
-        Connection connection = new Connection();
-
-        connection.setType(configurationFactory.getConnectionType());
-        connection.setGUID(connectionGUID);
-        connection.setQualifiedName(connectionName);
-        connection.setDisplayName(connectionName);
-        connection.setDescription(connectionDescription);
-        connection.setEndpoint(endpoint);
-        connection.setConnectorType(connectorType);
-
-        this.setLocalRepositoryEventMapper(userId, serverName, connection);
-    }
-
-
-    /**
-     * Set up the mode for an open metadata repository cohort.  This is a group of open metadata repositories that
-     * are sharing metadata.  An OMAG server can connect to zero, one or more cohorts.  Each cohort needs
-     * a unique name.  The members of the cohort use a shared topic to exchange registration information and
-     * events related to changes in their supported metadata types and instances.  They are also able to
-     * query each other's metadata directly through REST calls.
-     *
-     * @param userId      - user that is issuing the request.
-     * @param serverName  - local server name.
-     * @param cohortName  - name of the cohort.
-     * @param serviceMode - OMAGServiceMode enum - ENABLED or DISABLED.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName, cohortName or serviceMode parameter.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/cohort/{cohortName}/mode")
-    public void setCohortMode(@PathVariable String          userId,
-                              @PathVariable String          serverName,
-                              @PathVariable String          cohortName,
-                              @RequestParam OMAGServiceMode serviceMode) throws OMAGNotAuthorizedException,
-                                                                                OMAGInvalidParameterException
-    {
-        final String methodName = "setCohortMode()";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-        validateCohortName(cohortName, serverName, methodName);
-        validateServiceMode(serviceMode, serverName, methodName);
-
-        OMAGServerConfig serverConfig    = this.getServerConfig(serverName, methodName);
-        CohortConfig     newCohortConfig = null;
-
-        /*
-         * Build a new cohort configuration if requested.
-         */
-        if (serviceMode == OMAGServiceMode.ENABLED)
-        {
-            /*
-             * Set up a new cohort
-             */
-            OMRSConfigurationFactory configurationFactory = new OMRSConfigurationFactory();
-
-            newCohortConfig = configurationFactory.getDefaultCohortConfig(serverConfig.getLocalServerName(), cohortName);
-        }
-
-        this.setCohortConfig(userId, serverName, cohortName, newCohortConfig);
-    }
-
-    /*
-     * =============================================================
-     * Configure server - advanced options overriding defaults
-     */
-
-
-    /**
-     * Set up the configuration for all of the open metadata access services (OMASs).  This overrides
-     * the current values.
-     *
-     * @param userId               - user that is issuing the request.
-     * @param serverName           - local server name.
-     * @param accessServicesConfig - list of configuration properties for each access service.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or accessServicesConfig parameter.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/access-services/configuration")
-    public void setAccessServicesConfig(@PathVariable String                    userId,
-                                        @PathVariable String                    serverName,
-                                        @RequestParam List<AccessServiceConfig> accessServicesConfig) throws OMAGNotAuthorizedException,
-                                                                                                             OMAGInvalidParameterException
-    {
-        final String methodName = "setAccessServicesConfig()";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        OMAGServerConfig serverConfig = this.getServerConfig(serverName, methodName);
-
-        serverConfig.setAccessServicesConfig(accessServicesConfig);
-
-        this.saveServerConfig(serverConfig);
-    }
-
-
-    /**
-     * Set up the configuration for the local repository.  This overrides the current values.
-     *
-     * @param userId                - user that is issuing the request.
-     * @param serverName            - local server name.
-     * @param localRepositoryConfig - configuration properties for the local repository.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or localRepositoryConfig parameter.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/local-repository/configuration")
-    public void setLocalRepositoryConfig(@PathVariable String                userId,
-                                         @PathVariable String                serverName,
-                                         @RequestParam LocalRepositoryConfig localRepositoryConfig) throws OMAGNotAuthorizedException,
-                                                                                                           OMAGInvalidParameterException
-    {
-        final String methodName = "setLocalRepositoryConfig";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        OMAGServerConfig serverConfig = this.getServerConfig(serverName, methodName);
-
-        RepositoryServicesConfig repositoryServicesConfig = serverConfig.getRepositoryServicesConfig();
-
-        /*
-         * Set up the local repository config in the open metadata repository services config.
-         */
-        if (repositoryServicesConfig != null)
-        {
-            repositoryServicesConfig.setLocalRepositoryConfig(localRepositoryConfig);
-        }
-        else if (localRepositoryConfig != null)
-        {
-            OMRSConfigurationFactory configurationFactory     = new OMRSConfigurationFactory();
-
-            repositoryServicesConfig = configurationFactory.getDefaultRepositoryServicesConfig(serverConfig.getLocalServerName());
-            repositoryServicesConfig.setLocalRepositoryConfig(localRepositoryConfig);
-        }
-
-        /*
-         * Save the open metadata repository services config in the server's config
-         */
-        serverConfig.setRepositoryServicesConfig(repositoryServicesConfig);
-        this.saveServerConfig(serverConfig);
-    }
-
-
-    /**
-     * Set up the configuration that controls the enterprise repository services.  These services are part
-     * of the Open Metadata Repository Services (OMRS).  They provide federated queries and federated event
-     * notifications that cover metadata from the local repository plus any repositories connected via
-     * open metadata repository cohorts.
-     *
-     * @param userId                 - user that is issuing the request
-     * @param serverName             - local server name
-     * @param enterpriseAccessConfig - enterprise repository services configuration properties.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or enterpriseAccessConfig parameter.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/enterprise-access/configuration")
-    public void setEnterpriseAccessConfig(@PathVariable String                 userId,
-                                          @PathVariable String                 serverName,
-                                          @RequestParam EnterpriseAccessConfig enterpriseAccessConfig) throws OMAGNotAuthorizedException,
-                                                                                                              OMAGInvalidParameterException
-    {
-        final String methodName = "setEnterpriseAccessConfig";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        OMAGServerConfig serverConfig = this.getServerConfig(serverName, methodName);
-
-        RepositoryServicesConfig repositoryServicesConfig = serverConfig.getRepositoryServicesConfig();
-
-        if (repositoryServicesConfig != null)
-        {
-            repositoryServicesConfig.setEnterpriseAccessConfig(enterpriseAccessConfig);
-        }
-        else if (enterpriseAccessConfig != null)
-        {
-            OMRSConfigurationFactory configurationFactory     = new OMRSConfigurationFactory();
-
-            repositoryServicesConfig = configurationFactory.getDefaultRepositoryServicesConfig(serverConfig.getLocalServerName());
-
-            repositoryServicesConfig.setEnterpriseAccessConfig(enterpriseAccessConfig);
-        }
-
-        serverConfig.setRepositoryServicesConfig(repositoryServicesConfig);
-        this.saveServerConfig(serverConfig);
-    }
-
-
-    /**
-     * Set up the configuration properties for a cohort.  This may reconfigure an existing cohort or create a
-     * cohort.  Use setCohortMode to delete a cohort.
-     *
-     * @param userId       - user that is issuing the request
-     * @param serverName   - local server name
-     * @param cohortName   - name of the cohort
-     * @param cohortConfig - configuration for the cohort
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName, cohortName or cohortConfig parameter.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/cohort/{cohortName}/configuration")
-    public void setCohortConfig(@PathVariable String       userId,
-                                @PathVariable String       serverName,
-                                @PathVariable String       cohortName,
-                                @RequestParam CohortConfig cohortConfig) throws OMAGNotAuthorizedException,
-                                                                                OMAGInvalidParameterException
-    {
-        final String methodName = "setCohortConfig";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-        validateCohortName(cohortName, serverName, methodName);
-
-        OMAGServerConfig         serverConfig = this.getServerConfig(serverName, methodName);
-        OMRSConfigurationFactory configurationFactory = new OMRSConfigurationFactory();
-        RepositoryServicesConfig repositoryServicesConfig = serverConfig.getRepositoryServicesConfig();
-        List<CohortConfig>       existingCohortConfigs = null;
-        List<CohortConfig>       newCohortConfigs = new ArrayList<>();
-
-        /*
-         * Extract any existing local repository configuration
-         */
-        if (repositoryServicesConfig != null)
-        {
-            existingCohortConfigs = repositoryServicesConfig.getCohortConfigList();
-        }
-
-        /*
-         * Transfer the cohort configurations of all other cohorts into the new cohort list
-         */
-        if (existingCohortConfigs != null)
-        {
-            /*
-             * If there is already a cohort of the same name then effectively remove it.
-             */
-            for (CohortConfig existingCohort : existingCohortConfigs)
-            {
-                if (existingCohort != null)
-                {
-                    String existingCohortName = existingCohort.getCohortName();
-
-                    if (! cohortName.equals(existingCohortName))
-                    {
-                        newCohortConfigs.add(existingCohort);
-                    }
-                }
-            }
-        }
-
-        /*
-         * Add the new cohort to the list of cohorts
-         */
-        if (cohortConfig != null)
-        {
-            newCohortConfigs.add(cohortConfig);
-        }
-
-        /*
-         * If there are no cohorts to save then remove the array list.
-         */
-        if (newCohortConfigs.isEmpty())
-        {
-            newCohortConfigs = null;
-        }
-
-        /*
-         * Add the cohort list to the open metadata repository services config
-         */
-        if (repositoryServicesConfig != null)
-        {
-            repositoryServicesConfig.setCohortConfigList(newCohortConfigs);
-        }
-        else if (newCohortConfigs != null)
-        {
-            repositoryServicesConfig = configurationFactory.getDefaultRepositoryServicesConfig(serverConfig.getLocalServerName());
-
-            repositoryServicesConfig.setCohortConfigList(newCohortConfigs);
-        }
-
-        serverConfig.setRepositoryServicesConfig(repositoryServicesConfig);
-        this.saveServerConfig(serverConfig);
-    }
-
-
-    /*
-     * =============================================================
-     * Query current configuration
-     */
-
-
-    /**
-     * Return the complete set of configuration properties in use by the server.
-     *
-     * @param userId     - user that is issuing the request
-     * @param serverName - local server name
-     * @return OMAGServerConfig properties
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName parameter.
-     */
-    @RequestMapping(method = RequestMethod.GET, path = "/configuration")
-    public OMAGServerConfig getCurrentConfiguration(@PathVariable String userId,
-                                                    @PathVariable String serverName) throws OMAGNotAuthorizedException,
-                                                                                            OMAGInvalidParameterException
-    {
-        final String methodName = "getCurrentConfiguration";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        return this.getServerConfig(serverName, methodName);
-    }
-
-
-    /*
-     * =============================================================
-     * Initialization and shutdown
-     */
-
-    /**
-     * Initialize the open metadata and governance services using the stored configuration information.
-     *
-     * @param userId     - user that is issuing the request
-     * @param serverName - local server name
-     * @throws OMAGConfigurationErrorException - there is a problem using the supplied configuration
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/instance")
-    public void initialize(@PathVariable String userId,
-                           @PathVariable String serverName) throws OMAGNotAuthorizedException,
-                                                                   OMAGInvalidParameterException,
-                                                                   OMAGConfigurationErrorException
-    {
-        final String methodName = "initialize";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        this.initialize(userId, serverName, this.getServerConfig(serverName, methodName));
-    }
-
-
-    /**
-     * Initialize the open metadata and governance services using the supplied information.
-     *
-     * @param userId        - user that is issuing the request
-     * @param configuration - properties used to initialize the services
-     * @param serverName    - local server name
-     * @throws OMAGNotAuthorizedException      - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException   - the serverName is invalid.
-     * @throws OMAGConfigurationErrorException - there is a problem using the supplied configuration
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/instance/configuration")
-    public void initialize(@PathVariable String           userId,
-                           @PathVariable String           serverName,
-                           @RequestParam OMAGServerConfig configuration) throws OMAGNotAuthorizedException,
-                                                                                OMAGInvalidParameterException,
-                                                                                OMAGConfigurationErrorException
-    {
-        final String methodName = "initialize";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        if (configuration == null)
-        {
-            OMAGErrorCode errorCode    = OMAGErrorCode.NULL_SERVER_CONFIG;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(serverName);
-
-            throw new OMAGInvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                    this.getClass().getName(),
-                                                    methodName,
-                                                    errorMessage,
-                                                    errorCode.getSystemAction(),
-                                                    errorCode.getUserAction());
-        }
-        else
-        {
-            this.saveServerConfig(configuration);
-        }
-
-        /*
-         * Initialize the open metadata repository services first
-         */
-        RepositoryServicesConfig  repositoryServicesConfig = configuration.getRepositoryServicesConfig();
-
-        if (repositoryServicesConfig == null)
-        {
-            OMAGErrorCode errorCode    = OMAGErrorCode.NULL_REPOSITORY_CONFIG;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(serverName);
-
-            throw new OMAGConfigurationErrorException(errorCode.getHTTPErrorCode(),
-                                                      this.getClass().getName(),
-                                                      methodName,
-                                                      errorMessage,
-                                                      errorCode.getSystemAction(),
-                                                      errorCode.getUserAction());
-        }
-        else if (operationalServices != null)
-        {
-            this.terminate(userId, serverName, false);
-        }
-
-        operationalServices = new OMRSOperationalServices(configuration.getLocalServerName(),
-                                                          configuration.getLocalServerType(),
-                                                          configuration.getOrganizationName(),
-                                                          configuration.getLocalServerURL(),
-                                                          configuration.getMaxPageSize());
-
-        operationalServices.initialize(repositoryServicesConfig);
-
-        /*
-         * Now initialize the open metadata access services
-         */
-        List<AccessServiceConfig> accessServiceConfigList  = configuration.getAccessServicesConfig();
-        OMRSTopicConnector        enterpriseTopicConnector = operationalServices.getEnterpriseOMRSTopicConnector();
-
-        if (accessServiceConfigList != null)
-        {
-            for (AccessServiceConfig  accessServiceConfig : accessServiceConfigList)
-            {
-                if (accessServiceConfig != null)
-                {
-                    String    accessServiceAdminClassName = accessServiceConfig.getAccessServiceAdminClass();
-
-                    if (accessServiceAdminClassName != null)
-                    {
-                        try
-                        {
-                            AccessServiceAdmin   accessServiceAdmin = (AccessServiceAdmin)Class.forName(accessServiceAdminClassName).newInstance();
-
-                            accessServiceAdmin.initialize(accessServiceConfig,
-                                                          enterpriseTopicConnector,
-                                                          operationalServices.getEnterpriseOMRSRepositoryConnector(accessServiceConfig.getAccessServiceName()),
-                                                          operationalServices.getAuditLog(accessServiceConfig.getAccessServiceId(),
-                                                                                          accessServiceConfig.getAccessServiceName(),
-                                                                                          accessServiceConfig.getAccessServiceDescription(),
-                                                                                          accessServiceConfig.getAccessServiceWiki()),
-                                                          "OMASUser");
-                            accessServiceAdminList.add(accessServiceAdmin);
-                        }
-                        catch (Throwable  error)
-                        {
-                            OMAGErrorCode errorCode    = OMAGErrorCode.BAD_ACCESS_SERVICE_ADMIN_CLASS;
-                            String        errorMessage = errorCode.getErrorMessageId()
-                                                       + errorCode.getFormattedErrorMessage(serverName,
-                                                                                            accessServiceAdminClassName,
-                                                                                            accessServiceConfig.getAccessServiceName());
-
-                            throw new OMAGConfigurationErrorException(errorCode.getHTTPErrorCode(),
-                                                                      this.getClass().getName(),
-                                                                      methodName,
-                                                                      errorMessage,
-                                                                      errorCode.getSystemAction(),
-                                                                      errorCode.getUserAction());
-                        }
-                    }
-                    else
-                    {
-                        OMAGErrorCode errorCode    = OMAGErrorCode.NULL_ACCESS_SERVICE_ADMIN_CLASS;
-                        String        errorMessage = errorCode.getErrorMessageId()
-                                                   + errorCode.getFormattedErrorMessage(serverName,
-                                                                                        accessServiceConfig.getAccessServiceName());
-
-                        throw new OMAGConfigurationErrorException(errorCode.getHTTPErrorCode(),
-                                                                  this.getClass().getName(),
-                                                                  methodName,
-                                                                  errorMessage,
-                                                                  errorCode.getSystemAction(),
-                                                                  errorCode.getUserAction());
-                    }
-                }
-            }
-        }
-
-        if (enterpriseTopicConnector != null)
-        {
-            try
-            {
-                enterpriseTopicConnector.start();
-            }
-            catch (Throwable  error)
-            {
-                OMAGErrorCode errorCode    = OMAGErrorCode.ENTERPRISE_TOPIC_START_FAILED;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(serverName, error.getMessage());
-
-                throw new OMAGConfigurationErrorException(errorCode.getHTTPErrorCode(),
-                                                          this.getClass().getName(),
-                                                          methodName,
-                                                          errorMessage,
-                                                          errorCode.getSystemAction(),
-                                                          errorCode.getUserAction());
-            }
-        }
-    }
-
-
-    /**
-     * Terminate any open metadata and governance services.
-     *
-     * @param userId     - user that is issuing the request
-     * @param serverName - local server name
-     * @param permanent - Is the server being shutdown permanently - if yes, the local server will unregister from
-     *                  its open metadata repository cohorts.
-     * @throws OMAGNotAuthorizedException    - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - the serverName is invalid.
-     */
-    @RequestMapping(method = RequestMethod.DELETE, path = "/instance")
-    public void terminate(@PathVariable String  userId,
-                          @PathVariable String  serverName,
-                          @RequestParam boolean permanent) throws OMAGNotAuthorizedException,
-                                                                  OMAGInvalidParameterException
-    {
-        final String methodName = "terminate";
-
-        validateServerName(serverName, methodName);
-        validateUserId(userId, serverName, methodName);
-
-        /*
-         * Shutdown the access services
-         */
-        if (accessServiceAdminList != null)
-        {
-            for (AccessServiceAdmin  accessServiceAdmin : accessServiceAdminList)
-            {
-                if (accessServiceAdmin != null)
-                {
-                    accessServiceAdmin.shutdown();
-                }
-            }
-        }
-
-        /*
-         * Terminate the OMRS
-         */
-        if (operationalServices != null)
-        {
-            operationalServices.disconnect(permanent);
-            operationalServices = null;
-        }
-    }
-
-
-    /*
-     * =============================================================
-     * Operational status and control
-     */
-
-    /* placeholder */
-
-
-    /*
-     * =============================================================
-     * Private methods
-     */
-
-    /**
-     * Validate that the user id is not null.
-     *
-     * @param userId - user name passed on the request
-     * @param serverName - name of this server
-     * @param methodName - method receiving the call
-     * @throws OMAGNotAuthorizedException - no userId provided
-     */
-    private void validateUserId(String userId,
-                                String serverName,
-                                String methodName) throws OMAGNotAuthorizedException
-    {
-        if (userId == null)
-        {
-            OMAGErrorCode errorCode    = OMAGErrorCode.NULL_USER_NAME;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(serverName);
-
-            throw new OMAGNotAuthorizedException(errorCode.getHTTPErrorCode(),
-                                                 this.getClass().getName(),
-                                                 methodName,
-                                                 errorMessage,
-                                                 errorCode.getSystemAction(),
-                                                 errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that the server name is not null and save it in the config.
-     *
-     * @param serverName - serverName passed on a request
-     * @param methodName - method being called
-     * @throws OMAGInvalidParameterException - null server name
-     */
-    private void validateServerName(String serverName,
-                                    String methodName) throws OMAGInvalidParameterException
-    {
-        /*
-         * If the local server name is still null then save the server name in the configuration.
-         */
-        if (serverName == null)
-        {
-            OMAGErrorCode errorCode    = OMAGErrorCode.NULL_LOCAL_SERVER_NAME;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new OMAGInvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                    this.getClass().getName(),
-                                                    methodName,
-                                                    errorMessage,
-                                                    errorCode.getSystemAction(),
-                                                    errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that the service mode passed on a request is not null.
-     *
-     * @param serviceMode - indicates the mode a specific service should be set to
-     * @param serverName - name of this server
-     * @param methodName - name of the method called.
-     * @throws OMAGInvalidParameterException - the service mode is null
-     */
-    private void validateServiceMode(OMAGServiceMode   serviceMode,
-                                     String            serverName,
-                                     String            methodName) throws OMAGInvalidParameterException
-    {
-        if (serviceMode == null)
-        {
-            OMAGErrorCode errorCode    = OMAGErrorCode.NULL_SERVICE_MODE;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(serverName);
-
-            throw new OMAGInvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                    this.getClass().getName(),
-                                                    methodName,
-                                                    errorMessage,
-                                                    errorCode.getSystemAction(),
-                                                    errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Validate that the cohort name is not null.
-     *
-     * @param cohortName - cohortName passed on the request
-     * @param serverName - server name for this server
-     * @param methodName - method called
-     * @throws OMAGInvalidParameterException the cohort name is null
-     */
-    private void validateCohortName(String  cohortName,
-                                    String  serverName,
-                                    String  methodName) throws OMAGInvalidParameterException
-    {
-        if (cohortName == null)
-        {
-            OMAGErrorCode errorCode    = OMAGErrorCode.NULL_COHORT_NAME;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(serverName);
-
-            throw new OMAGInvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                    this.getClass().getName(),
-                                                    methodName,
-                                                    errorMessage,
-                                                    errorCode.getSystemAction(),
-                                                    errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Retrieve any saved configuration for this server.
-     *
-     * @param serverName - name of the server
-     * @param methodName - method requesting the server details
-     * @return = configuration properties
-     * @throws OMAGInvalidParameterException - problem with the configuration file
-     */
-    private  OMAGServerConfig   getServerConfig(String   serverName,
-                                                String   methodName) throws OMAGInvalidParameterException
-    {
-        if (serverConfigStore == null)
-        {
-            Endpoint   endpoint = new Endpoint();
-            endpoint.setAddress("omag.server." + serverName + ".config");
-
-            ConnectorType  connectorType = new ConnectorType();
-            connectorType.setConnectorProviderClassName(FileBasedServerConfigStoreProvider.class.getName());
-
-            Connection connection = new Connection();
-            connection.setEndpoint(endpoint);
-            connection.setConnectorType(connectorType);
-            connection.setQualifiedName(endpoint.getAddress());
-
-            try
-            {
-
-                ConnectorBroker connectorBroker = new ConnectorBroker();
-
-                Connector connector = connectorBroker.getConnector(connection);
-
-                serverConfigStore = (OMAGServerConfigStore) connector;
-            }
-            catch (Throwable   error)
-            {
-                OMAGErrorCode errorCode    = OMAGErrorCode.BAD_CONFIG_FILE;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(serverName, methodName, error.getMessage());
-
-                throw new OMAGInvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                        this.getClass().getName(),
-                                                        methodName,
-                                                        errorMessage,
-                                                        errorCode.getSystemAction(),
-                                                        errorCode.getUserAction(),
-                                                        error);
-            }
-        }
-
-        OMAGServerConfig serverConfig = serverConfigStore.retrieveServerConfig();
-
-        if (serverConfig == null)
-        {
-            serverConfig = new OMAGServerConfig();
-        }
-
-        serverConfig.setLocalServerName(serverName);
-
-        return serverConfig;
-    }
-
-
-    /**
-     * Save the Server config ...
-     *
-     * @param serverConfig - properties to save
-     * @throws OMAGInvalidParameterException - problem with the config file
-     */
-    private  void saveServerConfig(OMAGServerConfig  serverConfig) throws OMAGInvalidParameterException
-    {
-        final String  methodName = "saveServerConfig";
-
-        if (serverConfigStore != null)
-        {
-            serverConfigStore.saveServerConfig(serverConfig);
-        }
-        else
-        {
-            OMAGErrorCode errorCode    = OMAGErrorCode.NULL_CONFIG_FILE;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new OMAGInvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                    this.getClass().getName(),
-                                                    methodName,
-                                                    errorMessage,
-                                                    errorCode.getSystemAction(),
-                                                    errorCode.getUserAction());
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/properties/OMAGAPIResponse.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/properties/OMAGAPIResponse.java b/omag-api/src/main/java/org/apache/atlas/omag/admin/server/properties/OMAGAPIResponse.java
deleted file mode 100644
index 67262cc..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/properties/OMAGAPIResponse.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.admin.server.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OMAGAPIResponse provides a common header for OMAG managed responses to its REST API.
- * It manages information about exceptions.  If no exception has been raised exceptionClassName is null.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public abstract class OMAGAPIResponse
-{
-    protected int       relatedHTTPCode = 200;
-    protected String    exceptionClassName = null;
-    protected String    exceptionErrorMessage = null;
-    protected String    exceptionSystemAction = null;
-    protected String    exceptionUserAction = null;
-
-
-    /**
-     * Default constructor
-     */
-    public OMAGAPIResponse()
-    {
-    }
-
-
-    /**
-     * Return the HTTP Code to use if forwarding response to HTTP client.
-     *
-     * @return integer HTTP status code
-     */
-    public int getRelatedHTTPCode()
-    {
-        return relatedHTTPCode;
-    }
-
-
-    /**
-     * Set up the HTTP Code to use if forwarding response to HTTP client.
-     *
-     * @param relatedHTTPCode - integer HTTP status code
-     */
-    public void setRelatedHTTPCode(int relatedHTTPCode)
-    {
-        this.relatedHTTPCode = relatedHTTPCode;
-    }
-
-
-    /**
-     * Return the name of the Java class name to use to recreate the exception.
-     *
-     * @return String name of the fully-qualified java class name
-     */
-    public String getExceptionClassName()
-    {
-        return exceptionClassName;
-    }
-
-
-    /**
-     * Set up the name of the Java class name to use to recreate the exception.
-     *
-     * @param exceptionClassName - String name of the fully-qualified java class name
-     */
-    public void setExceptionClassName(String exceptionClassName)
-    {
-        this.exceptionClassName = exceptionClassName;
-    }
-
-
-    /**
-     * Return the error message associated with the exception.
-     *
-     * @return string error message
-     */
-    public String getExceptionErrorMessage()
-    {
-        return exceptionErrorMessage;
-    }
-
-
-    /**
-     * Set up the error message associated with the exception.
-     *
-     * @param exceptionErrorMessage - string error message
-     */
-    public void setExceptionErrorMessage(String exceptionErrorMessage)
-    {
-        this.exceptionErrorMessage = exceptionErrorMessage;
-    }
-
-
-    /**
-     * Return the description of the action taken by the system as a result of the exception.
-     *
-     * @return - string description of the action taken
-     */
-    public String getExceptionSystemAction()
-    {
-        return exceptionSystemAction;
-    }
-
-
-    /**
-     * Set up the description of the action taken by the system as a result of the exception.
-     *
-     * @param exceptionSystemAction - string description of the action taken
-     */
-    public void setExceptionSystemAction(String exceptionSystemAction)
-    {
-        this.exceptionSystemAction = exceptionSystemAction;
-    }
-
-
-    /**
-     * Return the action that a user should take to resolve the problem.
-     *
-     * @return string instructions
-     */
-    public String getExceptionUserAction()
-    {
-        return exceptionUserAction;
-    }
-
-
-    /**
-     * Set up the action that a user should take to resolve the problem.
-     *
-     * @param exceptionUserAction - string instructions
-     */
-    public void setExceptionUserAction(String exceptionUserAction)
-    {
-        this.exceptionUserAction = exceptionUserAction;
-    }
-
-
-    @Override
-    public String toString()
-    {
-        return "OMAGAPIResponse{" +
-                "relatedHTTPCode=" + relatedHTTPCode +
-                ", exceptionClassName='" + exceptionClassName + '\'' +
-                ", exceptionErrorMessage='" + exceptionErrorMessage + '\'' +
-                ", exceptionSystemAction='" + exceptionSystemAction + '\'' +
-                ", exceptionUserAction='" + exceptionUserAction + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/properties/OMAGServerConfigResponse.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/properties/OMAGServerConfigResponse.java b/omag-api/src/main/java/org/apache/atlas/omag/admin/server/properties/OMAGServerConfigResponse.java
deleted file mode 100644
index 9cc69ca..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/properties/OMAGServerConfigResponse.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.admin.server.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.omag.configuration.properties.OMAGServerConfig;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-
-/**
- * OMAGServerConfigResponse is the response structure used on the OMAG REST API calls that returns a
- * Connection object as a response.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OMAGServerConfigResponse extends OMAGAPIResponse
-{
-    private OMAGServerConfig serverConfig = null;
-
-    /**
-     * Default constructor
-     */
-    public OMAGServerConfigResponse()
-    {
-    }
-
-
-    /**
-     * Return the OMAGServerConfig object.
-     *
-     * @return OMAGServerConfig object
-     */
-    public OMAGServerConfig getOMAGServerConfig()
-    {
-        return serverConfig;
-    }
-
-    /**
-     * Set up the OMAGServerConfig object.
-     *
-     * @param serverConfig - OMAGServerConfig object
-     */
-    public void setOMAGServerConfig(OMAGServerConfig serverConfig)
-    {
-        this.serverConfig = serverConfig;
-    }
-
-    @Override
-    public String toString()
-    {
-        return "OMAGServerConfigResponse{" +
-                "serverConfig=" + serverConfig +
-                ", relatedHTTPCode=" + relatedHTTPCode +
-                ", exceptionClassName='" + exceptionClassName + '\'' +
-                ", exceptionErrorMessage='" + exceptionErrorMessage + '\'' +
-                ", exceptionSystemAction='" + exceptionSystemAction + '\'' +
-                ", exceptionUserAction='" + exceptionUserAction + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/properties/VoidResponse.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/properties/VoidResponse.java b/omag-api/src/main/java/org/apache/atlas/omag/admin/server/properties/VoidResponse.java
deleted file mode 100644
index d093fb5..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/properties/VoidResponse.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.admin.server.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * VoidResponse defines the response structure for the OMAG REST API calls that returns a
- * void as a response.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class VoidResponse extends OMAGAPIResponse
-{
-    /**
-     * Default constructor
-     */
-    public VoidResponse()
-    {
-    }
-
-    @Override
-    public String toString()
-    {
-        return "VoidResponse{" +
-                "relatedHTTPCode=" + relatedHTTPCode +
-                ", exceptionClassName='" + exceptionClassName + '\'' +
-                ", exceptionErrorMessage='" + exceptionErrorMessage + '\'' +
-                ", exceptionSystemAction='" + exceptionSystemAction + '\'' +
-                ", exceptionUserAction='" + exceptionUserAction + '\'' +
-                '}';
-    }
-}


[31/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/repositoryconnector/IGCV2OMRSRepositoryConnectorProvider.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/repositoryconnector/IGCV2OMRSRepositoryConnectorProvider.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/repositoryconnector/IGCV2OMRSRepositoryConnectorProvider.java
deleted file mode 100644
index 717f99d..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/repositoryconnector/IGCV2OMRSRepositoryConnectorProvider.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.igc.v2.repositoryconnector;
-
-import org.apache.atlas.omrs.adapters.igc.v1.repositoryconnector.IGCOMRSRepositoryConnector;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnectorProviderBase;
-
-/**
- * In the Open Connector Framework (OCF), a ConnectorProvider is a factory for a specific type of connector.
- * The IGCV2OMRSRepositoryConnectorProvider is the connector provider for the IGCV2OMRSRepositoryConnector.
- * It extends OMRSRepositoryConnectorProviderBase which in turn extends the OCF ConnectorProviderBase.
- * ConnectorProviderBase supports the creation of connector instances.
- *
- * The IGCV2OMRSRepositoryConnectorProvider must initialize ConnectorProviderBase with the Java class
- * name of the OMRS Connector implementation (by calling super.setConnectorClassName(className)).
- * Then the connector provider will work.
- */
-public class IGCV2OMRSRepositoryConnectorProvider extends OMRSRepositoryConnectorProviderBase
-{
-    /**
-     * Constructor used to initialize the ConnectorProviderBase with the Java class name of the specific
-     * OMRS Connector implementation.
-     */
-    public IGCV2OMRSRepositoryConnectorProvider()
-    {
-        Class    connectorClass = IGCV2OMRSRepositoryConnector.class;
-
-        super.setConnectorClassName(connectorClass.getName());
-    }
-}
\ No newline at end of file


[22/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSEnterpriseConnectorManager.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSEnterpriseConnectorManager.java b/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSEnterpriseConnectorManager.java
deleted file mode 100644
index 28c226d..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSEnterpriseConnectorManager.java
+++ /dev/null
@@ -1,647 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.enterprise.connectormanager;
-
-import org.apache.atlas.ocf.Connector;
-import org.apache.atlas.ocf.ConnectorBroker;
-import org.apache.atlas.ocf.ffdc.ConnectionCheckedException;
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.ocf.properties.Connection;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.OMRSRuntimeException;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryContentManager;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollection;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.UUID;
-
-/**
- * OMRSEnterpriseConnectorManager provides the connectors for all of the repositories in the connected metadata
- * repository cohorts to each of the registered connector consumers.  It supports:
- * <ul>
- *     <li>
- *         A single local repository connector.
- *     </li>
- *     <li>
- *         A remote repository connector for each of the other repositories in the open metadata repository cohort.
- *     </li>
- * </ul>
- * <p>
- * Connector instances are then passed to each of the registered connector consumers.
- * </p>
- * <p>
- * The operation of the OMRSEnterpriseConnectorManager can be thought of in terms of its 3 contract interfaces:
- * </p>
- * <ul>
- *     <li>
- *         OMRSConnectionConsumer is the interface for passing connections to the OMRSEnterpriseConnectorManager.
- *         New connections are validated by creating a test connector and the combination of the metadata collection Id
- *         and connection are stored.  An instance of the connector is passed to each of the registered
- *         connector consumers.
- *     </li>
- *     <li>
- *         OMRSConnectorManager is the interface that enables OMRSConnectorConsumers to register with the federation
- *         manager.  When new connector consumers are stored their reference is stored and a uniqueId is
- *         returned to the connector consumer.  This id can be used to unregister from the connector manager.
- *     </li>
- *     <li>
- *         OMRSConnectorConsumer is the interface that the federation manager uses to pass connectors
- *         to each registered connector consumer.  The connector for the local repository is typically
- *         passed first (if it is available) followed by the remote connectors.
- *     </li>
- * </ul>
- * <p>
- * With these interfaces, the OMRSEnterpriseConnectorManager acts as a go between the OMRSCohortRegistry and
- * the EnterpriseOMRSRepositoryConnector instances.
- * </p>
- * <p>
- * Note: this class uses synchronized methods to ensure that no registration information is lost when the
- * server is operating multi-threaded.
- * </p>
- */
-public class OMRSEnterpriseConnectorManager implements OMRSConnectionConsumer, OMRSConnectorManager
-{
-    private boolean                                enterpriseAccessEnabled;
-    private int                                    maxPageSize;
-
-    private String                                 localMetadataCollectionId    = null;
-    private OMRSRepositoryConnector                localRepositoryConnector     = null;
-    private OMRSRepositoryContentManager           repositoryContentManager     = null;
-    private ArrayList<RegisteredConnector>         registeredRemoteConnectors   = new ArrayList<>();
-    private ArrayList<RegisteredConnectorConsumer> registeredConnectorConsumers = new ArrayList<>();
-
-
-    /**
-     * Constructor for the enterprise connector manager.
-     *
-     * @param enterpriseAccessEnabled - boolean indicating whether the connector consumers should be
-     *                                 informed of remote connectors.  If enterpriseAccessEnabled = true
-     *                                 the connector consumers will be informed of remote connectors; otherwise
-     *                                 they will not.
-     * @param maxPageSize - the maximum number of elements that can be requested on a page.
-     */
-    public OMRSEnterpriseConnectorManager(boolean enterpriseAccessEnabled,
-                                          int     maxPageSize)
-    {
-        this.enterpriseAccessEnabled = enterpriseAccessEnabled;
-        this.maxPageSize = maxPageSize;
-    }
-
-
-    /**
-     * The disconnect processing involved unregistering all repositories with each of the connector consumers.
-     * Each connector consumer will pass the disconnect() request to each of their repository connector instances.
-     */
-    public void disconnect()
-    {
-        /*
-         * Pass the disconnect request to each registered connector consumer.
-         */
-        for (RegisteredConnectorConsumer registeredConnectorConsumer : registeredConnectorConsumers)
-        {
-            registeredConnectorConsumer.getConnectorConsumer().disconnectAllConnectors();
-        }
-    }
-
-
-    /**
-     * Pass details of the connection for the local repository to the connection consumer.
-     *
-     * @param localMetadataCollectionId - Unique identifier for the metadata collection
-     * @param localRepositoryConnector - connector to the local repository
-     */
-    public void setLocalConnector(String                     localMetadataCollectionId,
-                                  OMRSRepositoryConnector    localRepositoryConnector)
-    {
-
-        /*
-         * Connector is ok so save along with the metadata collection Id.
-         */
-        this.localRepositoryConnector = localRepositoryConnector;
-        this.localMetadataCollectionId = localMetadataCollectionId;
-
-        /*
-         * Pass the local connector to each registered connector consumer.
-         */
-        for (RegisteredConnectorConsumer registeredConnectorConsumer : registeredConnectorConsumers)
-        {
-            registeredConnectorConsumer.getConnectorConsumer().setLocalConnector(localMetadataCollectionId,
-                                                                                 localRepositoryConnector);
-        }
-    }
-
-
-    /**
-     * Pass details of the connection for one of the remote repositories registered in a connected
-     * open metadata repository cohort.
-     *
-     * @param cohortName - name of the cohort adding the remote connection.
-     * @param remoteServerName - name of the remote server for this connection.
-     * @param remoteServerType - type of the remote server.
-     * @param owningOrganizationName - name of the organization the owns the remote server.
-     * @param metadataCollectionId - Unique identifier for the metadata collection
-     * @param remoteConnection - Connection object providing properties necessary to create an
-     *                         OMRSRepositoryConnector for the remote repository.
-     * @throws ConnectionCheckedException - there are invalid properties in the Connection
-     * @throws ConnectorCheckedException - there is a problem initializing the Connector
-     */
-     public synchronized void addRemoteConnection(String         cohortName,
-                                                  String         remoteServerName,
-                                                  String         remoteServerType,
-                                                  String         owningOrganizationName,
-                                                  String         metadataCollectionId,
-                                                  Connection     remoteConnection) throws ConnectionCheckedException, ConnectorCheckedException
-    {
-        /*
-         * First test that this connection represents an OMRSRepositoryConnector.  If it does not then an exception
-         * is thrown by getOMRSRepositoryConnector() to tell the caller there is a problem.
-         */
-        OMRSRepositoryConnector remoteConnector = this.getOMRSRepositoryConnector(remoteConnection,
-                                                                                  remoteServerName,
-                                                                                  remoteServerType,
-                                                                                  owningOrganizationName,
-                                                                                  metadataCollectionId);
-
-
-        if (remoteConnector != null)
-        {
-            OMRSMetadataCollection   metadataCollection = null;
-
-            /*
-             * Need to validate that this repository connector has a metadata collection.
-             */
-            try
-            {
-                metadataCollection = remoteConnector.getMetadataCollection();
-            }
-            catch (Throwable  error)
-            {
-                metadataCollection = null;
-            }
-
-            /*
-             * Don't need to connector any more.
-             */
-            remoteConnector.disconnect();
-
-            /*
-             * Now test the metadata collection.
-             */
-            if (metadataCollection == null)
-            {
-                final String   methodName = "addRemoteConnection()";
-
-                OMRSErrorCode errorCode = OMRSErrorCode.NULL_COHORT_METADATA_COLLECTION;
-                String errorMessage = errorCode.getErrorMessageId()
-                                    + errorCode.getFormattedErrorMessage(cohortName, metadataCollectionId);
-
-                throw new ConnectorCheckedException(errorCode.getHTTPErrorCode(),
-                                                    this.getClass().getName(),
-                                                    methodName,
-                                                    errorMessage,
-                                                    errorCode.getSystemAction(),
-                                                    errorCode.getUserAction());
-            }
-        }
-
-
-        /*
-         * Connector is ok so save the connection and metadata collection Id.
-         */
-        registeredRemoteConnectors.add(new RegisteredConnector(cohortName,
-                                                               remoteServerName,
-                                                               remoteServerType,
-                                                               owningOrganizationName,
-                                                               metadataCollectionId,
-                                                               remoteConnection));
-
-        /*
-         * Pass the remote connector to each registered connector consumer if enterprise access is enabled.
-         */
-        if (enterpriseAccessEnabled)
-        {
-            for (RegisteredConnectorConsumer registeredConnectorConsumer : registeredConnectorConsumers)
-            {
-                registeredConnectorConsumer.getConnectorConsumer().addRemoteConnector(metadataCollectionId,
-                                                                                      this.getOMRSRepositoryConnector(remoteConnection,
-                                                                                                                      remoteServerName,
-                                                                                                                      remoteServerType,
-                                                                                                                      owningOrganizationName,
-                                                                                                                      metadataCollectionId));
-            }
-        }
-    }
-
-
-    /**
-     * Pass details that identify the connection for the repository that has left one of the open metadata repository cohorts.
-     * Since any repository may be a member of multiple cohorts, we only remove it from the list if it is
-     * the last connector for this repository to be removed.
-     *
-     * @param cohortName - name of the cohort removing the remote connection.
-     * @param metadataCollectionId - Unique identifier for the metadata collection.
-     */
-    public synchronized void removeRemoteConnection(String         cohortName,
-                                                    String         metadataCollectionId)
-    {
-        /*
-         * Remove the connector from the registered list and work out if the repository is still registered
-         * after it has been removed from the specified cohort.
-         */
-        Iterator<RegisteredConnector>  iterator = registeredRemoteConnectors.iterator();
-        int                            repositoryRegistrationCount = 0;
-
-        while (iterator.hasNext())
-        {
-            RegisteredConnector registeredRemoteConnector = iterator.next();
-
-            if (registeredRemoteConnector.getMetadataCollectionId().equals(metadataCollectionId))
-            {
-                /*
-                 * Found a match for this repository - if the cohort matches too, remove it.  If the
-                 * cohort does not match then increment the count of registrations that still exist.
-                 */
-                if (registeredRemoteConnector.getSource().equals(cohortName))
-                {
-                    iterator.remove();
-                }
-                else
-                {
-                    repositoryRegistrationCount ++;
-                }
-            }
-        }
-
-        /*
-         * Remove the connector from the registered connector consumers if federation is enabled
-         * and the repository is no longer registered through any cohort.
-         */
-        if ((enterpriseAccessEnabled) && (repositoryRegistrationCount == 0))
-        {
-            for (RegisteredConnectorConsumer registeredConnectorConsumer : registeredConnectorConsumers)
-            {
-                registeredConnectorConsumer.getConnectorConsumer().removeRemoteConnector(metadataCollectionId);
-            }
-        }
-    }
-
-
-    /**
-     * Remove all of the remote connections for the requested open metadata repository cohort.
-     * Care must be taken to only remove the remote connectors from the registered connector consumers if the
-     * remote connection is only registered with this cohort.
-     *
-     * @param cohortName - name of the cohort
-     */
-    public synchronized void removeCohort(String   cohortName)
-    {
-        /*
-         * Step through the list of registered remote connections, building a list of metadata collection ids for
-         * the cohort
-         */
-        ArrayList<String>    metadataCollectionIds = new ArrayList<>();
-
-        for (RegisteredConnector  registeredRemoteConnector : registeredRemoteConnectors)
-        {
-            if (registeredRemoteConnector.getSource().equals(cohortName))
-            {
-                metadataCollectionIds.add(registeredRemoteConnector.getMetadataCollectionId());
-            }
-        }
-
-        /*
-         * Use the list of metadata collection Ids to call removeRemoteConnection().  This will manage the
-         * removal of the remote connectors from the connector consumers if it is uniquely registered in this
-         * cohort.
-         */
-        for (String  metadataCollectionId : metadataCollectionIds)
-        {
-            this.removeRemoteConnection(cohortName, metadataCollectionId);
-        }
-    }
-
-
-    /**
-     * Register the supplied connector consumer with the connector manager.  During the registration
-     * request, the connector manager will pass the connector to the local repository and
-     * the connectors to all currently registered remote repositories.  Once successfully registered
-     * the connector manager will call the connector consumer each time the repositories in the
-     * metadata repository cluster changes.
-     *
-     * @param connectorConsumer OMRSConnectorConsumer interested in details of the connectors to
-     *                           all repositories registered in the metadata repository cluster.
-     * @return String identifier for the connectorConsumer - used for the unregister call.
-     */
-    public synchronized String registerConnectorConsumer(OMRSConnectorConsumer    connectorConsumer)
-    {
-        /*
-         * Store the new connector consumer.
-         */
-        RegisteredConnectorConsumer   registeredConnectorConsumer = new RegisteredConnectorConsumer(connectorConsumer);
-        String                        connectorConsumerId = registeredConnectorConsumer.getConnectorConsumerId();
-
-        registeredConnectorConsumers.add(registeredConnectorConsumer);
-
-
-        /*
-         * Pass the registered local connector to the new connector consumer (if available).
-         */
-        if (localRepositoryConnector != null)
-        {
-            connectorConsumer.setLocalConnector(this.localMetadataCollectionId,
-                                                this.localRepositoryConnector);
-        }
-
-        /*
-         * Pass each of the registered remote connectors (if any) to the new connector consumer
-         * if federation is enabled.
-         */
-        if (enterpriseAccessEnabled)
-        {
-            for (RegisteredConnector registeredConnector : registeredRemoteConnectors)
-            {
-                connectorConsumer.addRemoteConnector(registeredConnector.getMetadataCollectionId(),
-                                                     getOMRSRepositoryConnector(registeredConnector.getConnection(),
-                                                                                registeredConnector.getServerName(),
-                                                                                registeredConnector.getServerType(),
-                                                                                registeredConnector.getOwningOrganizationName(),
-                                                                                registeredConnector.getMetadataCollectionId()));
-            }
-        }
-
-        return connectorConsumerId;
-    }
-
-
-    /**
-     * Unregister a connector consumer from the connector manager so it is no longer informed of
-     * changes to the metadata repository cluster.
-     *
-     * @param connectorConsumerId String identifier of the connector consumer returned on the
-     *                             registerConnectorConsumer.
-     */
-    public synchronized void unregisterConnectorConsumer(String   connectorConsumerId)
-    {
-        /*
-         * Remove the connector consumer from the registered list.
-         */
-        Iterator<RegisteredConnectorConsumer> iterator = registeredConnectorConsumers.iterator();
-
-        while(iterator.hasNext())
-        {
-            RegisteredConnectorConsumer registeredConnectorConsumer = iterator.next();
-
-            if (registeredConnectorConsumer.getConnectorConsumerId().equals(connectorConsumerId))
-            {
-                iterator.remove();
-                break;
-            }
-        }
-    }
-
-
-    /**
-     * Private method to convert a Connection into an OMRS repository connector using the OCF ConnectorBroker.
-     * The OCF ConnectorBroker is needed because the implementation of the OMRS connector is unknown and
-     * may have come from a third party.   Thus the official OCF protocol is followed to create the connector.
-     * Any failure to create the connector is returned as an exception.
-     *
-     * @param connection - Connection properties
-     * @param serverName - name of the server for this connection.
-     * @param serverType - type of the remote server.
-     * @param owningOrganizationName - name of the organization the owns the remote server.
-     * @param metadataCollectionId - metadata collection Id for this repository
-     * @return OMRSRepositoryConnector for the connection
-     */
-    private OMRSRepositoryConnector getOMRSRepositoryConnector(Connection connection,
-                                                               String     serverName,
-                                                               String     serverType,
-                                                               String     owningOrganizationName,
-                                                               String     metadataCollectionId)
-    {
-        String     methodName = "getOMRSRepositoryConnector()";
-
-        try
-        {
-            ConnectorBroker         connectorBroker     = new ConnectorBroker();
-            Connector               connector           = connectorBroker.getConnector(connection);
-
-            OMRSRepositoryConnector repositoryConnector = (OMRSRepositoryConnector) connector;
-
-            repositoryConnector.setServerName(serverName);
-            repositoryConnector.setServerType(serverType);
-            repositoryConnector.setOrganizationName(owningOrganizationName);
-            repositoryConnector.setMaxPageSize(maxPageSize);
-            repositoryConnector.setRepositoryValidator(new OMRSRepositoryValidator(repositoryContentManager));
-            repositoryConnector.setRepositoryHelper((new OMRSRepositoryHelper(repositoryContentManager)));
-            repositoryConnector.setMetadataCollectionId(metadataCollectionId);
-            repositoryConnector.start();
-
-            return repositoryConnector;
-        }
-        catch (Throwable  error)
-        {
-            /*
-             * If there is a problem initializing the connector then the ConnectorBroker will have created a
-             * detailed exception already.  The only error case that this method has introduced is the cast
-             * of the Connector to OMRSRepositoryConnector.  This could occur if the connector configured is a valid
-             * OCF Connector but not an OMRSRepositoryConnector.
-             */
-            String  connectionName = connection.getConnectionName();
-
-            OMRSErrorCode errorCode = OMRSErrorCode.INVALID_OMRS_CONNECTION;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(connectionName);
-
-            throw new OMRSRuntimeException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction(),
-                                           error);
-        }
-    }
-
-
-    /**
-     * RegisteredConnector holds the information about connecting to a repository in the open metadata repository
-     * cluster.
-     */
-    private class RegisteredConnector
-    {
-        private String     source;
-        private String     serverName;
-        private String     serverType;
-        private String     owningOrganizationName;
-        private String     metadataCollectionId;
-        private Connection connection;
-
-
-        /**
-         * Constructor to set up registered connector.
-         *
-         * @param source - name of the source of the connector.
-         * @param serverName - name of the server for this connection.
-         * @param serverType - type of the remote server.
-         * @param owningOrganizationName - name of the organization the owns the remote server.
-         * @param metadataCollectionId - unique identifier for the metadata collection that this connector accesses.
-         * @param connection - connection used to generate the connector
-         */
-        public RegisteredConnector(String     source,
-                                   String     serverName,
-                                   String     serverType,
-                                   String     owningOrganizationName,
-                                   String     metadataCollectionId,
-                                   Connection connection)
-        {
-            this.source = source;
-            this.serverName = serverName;
-            this.serverType = serverType;
-            this.owningOrganizationName = owningOrganizationName;
-            this.metadataCollectionId = metadataCollectionId;
-            this.connection = connection;
-        }
-
-
-        /**
-         * Return the source name for this connector. (Typically the cohort)
-         *
-         * @return String name
-         */
-        public String getSource()
-        {
-            return source;
-        }
-
-
-        /**
-         * Return the name of the server that this connection is used to access.
-         *
-         * @return String name
-         */
-        public String getServerName()
-        {
-            return serverName;
-        }
-
-
-        /**
-         * Return the type of server that this connection is used to access.
-         *
-         * @return String type name
-         */
-        public String getServerType()
-        {
-            return serverType;
-        }
-
-
-        /**
-         * Return the name of the organization that owns the server that this connection is used to access.
-         *
-         * @return String name
-         */
-        public String getOwningOrganizationName()
-        {
-            return owningOrganizationName;
-        }
-
-        /**
-         * Return the unique identifier for the metadata collection that this connector accesses.
-         *
-         * @return String identifier
-         */
-        public String getMetadataCollectionId()
-        {
-            return metadataCollectionId;
-        }
-
-
-        /**
-         * Return the connection used to generate the connector to the metadata repository.
-         *
-         * @return Connection properties
-         */
-        public Connection getConnection()
-        {
-            return connection;
-        }
-    }
-
-
-    /**
-     * RegisteredConnectorConsumer relates a connector consumer to an identifier.  It is used by
-     * OMRSEnterpriseConnectorManager to manage the list of registered connector consumers.
-     */
-    private class RegisteredConnectorConsumer
-    {
-        private String                   connectorConsumerId  = null;
-        private OMRSConnectorConsumer    connectorConsumer = null;
-
-
-        /**
-         * Constructor when the identifier of the connector consumer is known.
-         *
-         * @param connectorConsumerId - unique identifier of the connection consumer
-         * @param connectorConsumer - connector consumer itself
-         */
-        public RegisteredConnectorConsumer(String connectorConsumerId, OMRSConnectorConsumer connectorConsumer)
-        {
-            this.connectorConsumerId = connectorConsumerId;
-            this.connectorConsumer = connectorConsumer;
-        }
-
-
-        /**
-         * Constructor when the identifier for the connector consumer needs to be allocated.
-         *
-         * @param connectorConsumer - connector consumer itself
-         */
-        public RegisteredConnectorConsumer(OMRSConnectorConsumer connectorConsumer)
-        {
-            this.connectorConsumer = connectorConsumer;
-            this.connectorConsumerId = UUID.randomUUID().toString();
-        }
-
-
-        /**
-         * Return the unique identifier of the connector consumer.
-         *
-         * @return String identifier
-         */
-        public String getConnectorConsumerId()
-        {
-            return connectorConsumerId;
-        }
-
-
-        /**
-         * Return the registered connector consumer.
-         *
-         * @return - connector consumer object ref
-         */
-        public OMRSConnectorConsumer getConnectorConsumer()
-        {
-            return connectorConsumer;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSConnection.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSConnection.java b/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSConnection.java
deleted file mode 100644
index 9704d93..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSConnection.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omrs.enterprise.repositoryconnector;
-
-import org.apache.atlas.ocf.properties.Connection;
-import org.apache.atlas.ocf.properties.ConnectorType;
-
-/**
- * EnterpriseOMRSConnection provides a valid connection for the EnterpriseOMRSConnector.
- */
-public class EnterpriseOMRSConnection extends Connection
-{
-    final ConnectorType enterpriseConnectorType = new ConnectorType(null,
-                                                                    null,
-                                                                    null,
-                                                                    null,
-                                                                    null,
-                                                                    null,
-                                                                    null,
-                                                                    null,
-                                                                    null,
-                                                                    EnterpriseOMRSConnectorProvider.class.getName());
-
-
-    /**
-     * Default Constructor that sets up the connector
-     */
-    public EnterpriseOMRSConnection()
-    {
-        super(null);
-        super.connectorType = enterpriseConnectorType;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSConnectorProperties.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSConnectorProperties.java b/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSConnectorProperties.java
deleted file mode 100644
index 72821ad..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSConnectorProperties.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.enterprise.repositoryconnector;
-
-import org.apache.atlas.ocf.ffdc.PropertyServerException;
-import org.apache.atlas.ocf.properties.ConnectedAssetProperties;
-import org.apache.atlas.omrs.enterprise.connectormanager.OMRSConnectorManager;
-
-
-/**
- * EnterpriseOMRSConnectorProperties provides information about the connections and the metadata collections
- * that the EnterpriseOMRSRepositoryConnector is retrieving information from.
- */
-public class EnterpriseOMRSConnectorProperties extends ConnectedAssetProperties
-{
-    public EnterpriseOMRSConnectorProperties(EnterpriseOMRSRepositoryConnector parentConnector,
-                                             OMRSConnectorManager              connectorManager,
-                                             String                            enterpriseMetadataCollectionId,
-                                             String                            enterpriseMetadataCollectionName)
-    {
-        super();
-        // TODO not implemented yet
-    }
-
-
-    /**
-     * Request the values in the ConnectedAssetProperties are refreshed with the current values from the
-     * metadata repository.  In the case of the
-     *
-     * @throws PropertyServerException - there is a problem connecting to the server to retrieve metadata.
-     */
-    public void refresh() throws PropertyServerException
-    {
-        // TODO not implemented yet
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSConnectorProvider.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSConnectorProvider.java b/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSConnectorProvider.java
deleted file mode 100644
index 8db8230..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSConnectorProvider.java
+++ /dev/null
@@ -1,177 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.enterprise.repositoryconnector;
-
-import org.apache.atlas.ocf.Connector;
-import org.apache.atlas.ocf.ffdc.ConnectionCheckedException;
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.ocf.properties.Connection;
-import org.apache.atlas.omrs.enterprise.connectormanager.OMRSConnectorManager;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryContentManager;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnectorProviderBase;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.UUID;
-
-
-/**
- * In the Open Connector Framework (OCF), a ConnectorProvider is a factory for a specific type of connector.
- * The EnterpriseOMRSConnectorProvider is the connector provider for the EnterpriseOMRSRepositoryConnector.
- *
- * It will return new instances of the EnterpriseOMRSRepositoryConnector as long as it is configured with the connector
- * manager.  This should happen at server startup, which means the exception due to a lack of connector
- * manager are unexpected.
- */
-public class EnterpriseOMRSConnectorProvider extends OMRSRepositoryConnectorProviderBase
-{
-    private        final int hashCode = UUID.randomUUID().hashCode();
-
-    private static final Logger log = LoggerFactory.getLogger(EnterpriseOMRSConnectorProvider.class);
-
-    private static OMRSConnectorManager         connectorManager                 = null;
-    private static OMRSRepositoryContentManager repositoryContentManager         = null;
-    private static String                       localServerName                  = null;
-    private static String                       localServerType                  = null;
-    private static String                       owningOrganizationName           = null;
-    private static String                       enterpriseMetadataCollectionId   = null;
-    private static String                       enterpriseMetadataCollectionName = null;
-
-
-    /**
-     * Set up the connector manager.  This call is used to control whether the EnterpriseOMRSConnectorProvider
-     * produces connectors or not.  An EnterpriseOMRSRepositoryConnector needs the connector manager to maintain the
-     * list of connectors to the repositories in the cohort.
-     *
-     * @param connectorManager - manager of the list of connectors to remote repositories.
-     * @param repositoryContentManager - manager of lists of active and known types with associated helper methods
-     * @param localServerName - name of the local server for this connection.
-     * @param localServerType - type of the local server.
-     * @param owningOrganizationName - name of the organization the owns the remote server.
-     * @param enterpriseMetadataCollectionId - unique identifier for the combined metadata collection covered by the
-     *                                      connected open metadata repositories.
-     * @param enterpriseMetadataCollectionName - name of the combined metadata collection covered by the connected open
-     *                                        metadata repositories.  Used for messages.
-     */
-    public synchronized static void initialize(OMRSConnectorManager         connectorManager,
-                                               OMRSRepositoryContentManager repositoryContentManager,
-                                               String                       localServerName,
-                                               String                       localServerType,
-                                               String                       owningOrganizationName,
-                                               String                       enterpriseMetadataCollectionId,
-                                               String                       enterpriseMetadataCollectionName)
-    {
-        EnterpriseOMRSConnectorProvider.connectorManager = connectorManager;
-        EnterpriseOMRSConnectorProvider.repositoryContentManager = repositoryContentManager;
-        EnterpriseOMRSConnectorProvider.localServerName = localServerName;
-        EnterpriseOMRSConnectorProvider.localServerType = localServerType;
-        EnterpriseOMRSConnectorProvider.owningOrganizationName = owningOrganizationName;
-        EnterpriseOMRSConnectorProvider.enterpriseMetadataCollectionId = enterpriseMetadataCollectionId;
-        EnterpriseOMRSConnectorProvider.enterpriseMetadataCollectionName = enterpriseMetadataCollectionName;
-    }
-
-
-    /**
-     * Typical constructor used with the connector broker.  It sets up the class to use for the repository connector
-     * instance.
-     */
-    public EnterpriseOMRSConnectorProvider()
-    {
-        super();
-
-        Class    connectorClass = EnterpriseOMRSRepositoryConnector.class;
-
-        super.setConnectorClassName(connectorClass.getName());
-    }
-
-
-    /**
-     * Creates a new instance of an EnterpriseOMRSRepositoryConnector based on the information in the supplied connection.
-     *
-     * @param connection - connection that should have all of the properties needed by the Connector Provider
-     *                   to create a connector instance.
-     * @return Connector - instance of the connector.
-     * @throws ConnectionCheckedException - if there are missing or invalid properties in the connection
-     * @throws ConnectorCheckedException - if there are issues instantiating or initializing the connector
-     */
-    public Connector getConnector(Connection connection) throws ConnectionCheckedException, ConnectorCheckedException
-    {
-        String   methodName = "getConnector()";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(methodName + " called");
-        }
-
-        if (EnterpriseOMRSConnectorProvider.connectorManager == null)
-        {
-            /*
-             * If the cohort is not connected then throw an exception to indicate that the repositories are offline.
-             */
-            OMRSErrorCode errorCode = OMRSErrorCode.COHORT_NOT_CONNECTED;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new ConnectorCheckedException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-
-        /*
-         * Create and initialize a new connector.
-         */
-        EnterpriseOMRSRepositoryConnector connector = new EnterpriseOMRSRepositoryConnector(EnterpriseOMRSConnectorProvider.connectorManager);
-
-        connector.initialize(this.getNewConnectorGUID(), connection);
-        connector.setServerName(localServerName);
-        connector.setServerType(localServerType);
-        connector.setRepositoryName(enterpriseMetadataCollectionName);
-        connector.setOrganizationName(owningOrganizationName);
-        connector.setRepositoryHelper(new OMRSRepositoryHelper(repositoryContentManager));
-        connector.setRepositoryValidator(new OMRSRepositoryValidator(repositoryContentManager));
-        connector.setMetadataCollectionId(enterpriseMetadataCollectionId);
-        connector.initializeConnectedAssetProperties(new EnterpriseOMRSConnectorProperties(connector,
-                                                                                           EnterpriseOMRSConnectorProvider.connectorManager,
-                                                                                           enterpriseMetadataCollectionId,
-                                                                                           enterpriseMetadataCollectionName));
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(methodName + " returns: " + connector.getConnectorInstanceId() + ", " + connection.getConnectionName());
-        }
-
-        return connector;
-    }
-
-
-    /**
-     * Simple hashCode implementation
-     *
-     * @return hashCode
-     */
-    public int hashCode()
-    {
-        return hashCode;
-    }
-}


[46/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/MapSchemaElement.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/MapSchemaElement.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/MapSchemaElement.java
deleted file mode 100644
index 56ffdff..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/MapSchemaElement.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * MapSchemaElement describes a schema element of type map.  It stores the type of schema element for the domain
- * (eg property name) for the map and the schema element for the range (eg property value) for the map.
- */
-public class MapSchemaElement extends SchemaElement
-{
-    private   SchemaElement  mapFromElement = null;
-    private   SchemaElement  mapToElement = null;
-
-
-    /**
-     * Typical constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param versionNumber - the version number of the schema element - null means no version number.
-     * @param author - the name of the author of the schema element. Null means the author is unknown.
-     * @param usage - the usage guidance for this schema element.  Null means no guidance available.
-     * @param encodingStandard - encoding standard used for this schema.  It may be XML, JSON, SQL DDL or something else.
-     *                           Null means the encoding standard is unknown or there are many choices.
-     * @param mapFromElement - the type of schema element that represents the key or property name for the map.
-     *                          This is also called the domain of the map.
-     * @param mapToElement - the type of schema element that represents the property value for the map.
-     *                       This is also called the range of the map.
-     */
-    public MapSchemaElement(AssetDescriptor      parentAsset,
-                            ElementType          type,
-                            String               guid,
-                            String               url,
-                            Classifications      classifications,
-                            String               qualifiedName,
-                            AdditionalProperties additionalProperties,
-                            Meanings             meanings,
-                            String               versionNumber,
-                            String               author,
-                            String               usage,
-                            String               encodingStandard,
-                            SchemaElement        mapFromElement,
-                            SchemaElement        mapToElement)
-    {
-        super(parentAsset,
-              type,
-              guid,
-              url,
-              classifications,
-              qualifiedName,
-              additionalProperties,
-              meanings,
-              versionNumber,
-              author,
-              usage,
-              encodingStandard);
-
-        this.mapFromElement = mapFromElement;
-        this.mapToElement = mapToElement;
-    }
-
-    /**
-     * Copy/clone Constructor - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the definitions clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param parentAsset - description of the asset that this map is attached to.
-     * @param templateSchema - template object to copy.
-     */
-    public MapSchemaElement(AssetDescriptor  parentAsset, MapSchemaElement templateSchema)
-    {
-        super(parentAsset, templateSchema);
-
-        if (templateSchema != null)
-        {
-            SchemaElement  templateMapFromElement = templateSchema.getMapFromElement();
-            SchemaElement  templateMapToElement = templateSchema.getMapToElement();
-
-            if (templateMapFromElement != null)
-            {
-                mapFromElement = templateMapFromElement.cloneSchemaElement(super.getParentAsset());
-            }
-
-            if (templateMapToElement != null)
-            {
-                mapToElement = templateMapToElement.cloneSchemaElement(super.getParentAsset());
-            }
-        }
-    }
-
-
-    /**
-     * Return the type of schema element that represents the key or property name for the map.
-     * This is also called the domain of the map.
-     *
-     * @return SchemaElement
-     */
-    public SchemaElement getMapFromElement()
-    {
-        return mapFromElement;
-    }
-
-
-    /**
-     * Return the type of schema element that represents the property value for the map.
-     * This is also called the range of the map.
-     *
-     * @return SchemaElement
-     */
-    public SchemaElement getMapToElement()
-    {
-        return mapToElement;
-    }
-
-
-    /**
-     * Returns a clone of this object as the abstract SchemaElement class.
-     *
-     * @param parentAsset - description of the asset that this schema element is attached to.
-     * @return SchemaElement
-     */
-    @Override
-    public SchemaElement cloneSchemaElement(AssetDescriptor parentAsset)
-    {
-        return new MapSchemaElement(parentAsset, this);
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "MapSchemaElement{" +
-                "mapFromElement=" + mapFromElement +
-                ", mapToElement=" + mapToElement +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Meaning.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Meaning.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Meaning.java
deleted file mode 100644
index 078b44c..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Meaning.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-/**
- * Meaning is a cut-down summary of a glossary term to aid the asset consumer in understanding the content
- * of an asset.
- */
-public class Meaning extends ElementHeader
-{
-    /*
-     * Attributes of a meaning object definition
-     */
-    protected String      name = null;
-    protected String      description = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param name - name of the glossary term
-     * @param description - description of the glossary term.
-     */
-    public Meaning(AssetDescriptor      parentAsset,
-                   ElementType          type,
-                   String               guid,
-                   String               url,
-                   Classifications      classifications,
-                   String               name,
-                   String               description)
-    {
-        super(parentAsset, type, guid, url, classifications);
-
-        this.name = name;
-        this.description = description;
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateMeaning - element to copy
-     */
-    public Meaning(AssetDescriptor parentAsset, Meaning templateMeaning)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(parentAsset, templateMeaning);
-
-        if (templateMeaning != null)
-        {
-            /*
-             * Copy the values from the supplied meaning object.
-             */
-            name = templateMeaning.getName();
-            description = templateMeaning.getDescription();
-        }
-    }
-
-
-    /**
-     * Return the glossary term name.
-     *
-     * @return String name
-     */
-    public String getName()
-    {
-        return name;
-    }
-
-
-    /**
-     * Return the description of the glossary term.
-     *
-     * @return String description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Meaning{" +
-                "name='" + name + '\'' +
-                ", description='" + description + '\'' +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                ", classifications=" + classifications +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Meanings.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Meanings.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Meanings.java
deleted file mode 100644
index 8f51491..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Meanings.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * Meanings supports an iterator over a list of glossary definitions.  Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class Meanings extends AssetPropertyIteratorBase implements Iterator<Meaning>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public Meanings(AssetDescriptor              parentAsset,
-                    int                          totalElementCount,
-                    int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public Meanings(AssetDescriptor   parentAsset, Meanings    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new Meaning(parentAsset, (Meaning)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract Meanings  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return Meaning - next element object that has been cloned.
-     */
-    @Override
-    public Meaning next()
-    {
-        return (Meaning)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Meanings{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Note.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Note.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Note.java
deleted file mode 100644
index 0a81cb6..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Note.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Date;
-
-/**
- * Note defines the properties of a single note in a note log.
- */
-public class Note extends Referenceable
-{
-    /*
-     * Attributes of a Note
-     */
-    private String text = null;
-    private Date   lastUpdate = null;
-    private String user = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param text - the text of the note
-     * @param lastUpdate - the last update date for the note.
-     * @param user - the user id of the person who created the note
-     */
-    public Note(AssetDescriptor      parentAsset,
-                ElementType          type,
-                String               guid,
-                String               url,
-                Classifications      classifications,
-                String               qualifiedName,
-                AdditionalProperties additionalProperties,
-                Meanings             meanings,
-                String               text,
-                Date                 lastUpdate,
-                String               user)
-    {
-        super(parentAsset, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-
-        this.text = text;
-        this.lastUpdate = lastUpdate;
-        this.user = user;
-    }
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateNote - note to copy
-     */
-    public Note(AssetDescriptor parentAsset, Note templateNote)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(parentAsset, templateNote);
-
-        if (templateNote != null)
-        {
-            /*
-             * Copy the properties from the supplied note.
-             */
-            text = templateNote.getText();
-            user = templateNote.getUser();
-
-            Date templateLastUpdate = templateNote.getLastUpdate();
-            if (templateLastUpdate != null)
-            {
-                lastUpdate = new Date(templateLastUpdate.getTime());
-            }
-        }
-    }
-
-
-    /**
-     * Return the text of the note.
-     *
-     * @return String text
-     */
-    public String getText() { return text; }
-
-
-    /**
-     * Return the last time a change was made to this note.
-     *
-     * @return Date last update
-     */
-    public Date getLastUpdate()
-    {
-        if (lastUpdate == null)
-        {
-            return lastUpdate;
-        }
-        else
-        {
-            return new Date(lastUpdate.getTime());
-        }
-    }
-
-
-    /**
-     * Return the user id of the person who created the note.  Null means the user id is not known.
-     *
-     * @return String - liking user
-     */
-    public String getUser() {
-        return user;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Note{" +
-                "text='" + text + '\'' +
-                ", lastUpdate=" + lastUpdate +
-                ", user='" + user + '\'' +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/NoteLog.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/NoteLog.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/NoteLog.java
deleted file mode 100644
index 5340c9a..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/NoteLog.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-/**
- * NoteLog manages a list of notes for an asset
- */
-public class NoteLog extends Referenceable
-{
-    /*
-     * Attributes of an note log
-     */
-    private String displayName = null;
-    private String description = null;
-    private Notes  notes = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param displayName - consumable name
-     * @param description - description property stored for the note log.
-     * @param notes - list of notes for this note log.
-     */
-    public NoteLog(AssetDescriptor      parentAsset,
-                   ElementType          type,
-                   String               guid,
-                   String               url,
-                   Classifications      classifications,
-                   String               qualifiedName,
-                   AdditionalProperties additionalProperties,
-                   Meanings             meanings,
-                   String               displayName,
-                   String               description,
-                   Notes                notes)
-    {
-        super(parentAsset, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-
-        this.displayName = displayName;
-        this.description = description;
-        this.notes = notes;
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateNotelog - note log to copy
-     */
-    public NoteLog(AssetDescriptor parentAsset, NoteLog templateNotelog)
-    {
-        /*
-         * Initialize the super class.
-         */
-        super(parentAsset, templateNotelog);
-
-        if (templateNotelog != null)
-        {
-            /*
-             * Copy the values from the supplied template.
-             */
-            displayName = templateNotelog.getDisplayName();
-            description = templateNotelog.getDescription();
-
-            Notes     templateNotes = templateNotelog.getNotes();
-            if (templateNotes != null)
-            {
-                notes = templateNotes.cloneIterator(parentAsset);
-            }
-        }
-    }
-
-
-    /**
-     * Returns the stored display name property for the note log.
-     * If no display name is available then null is returned.
-     *
-     * @return displayName
-     */
-    public String getDisplayName()
-    {
-        return displayName;
-    }
-
-
-    /**
-     * Returns the stored description property for the note log.
-     * If no description is provided then null is returned.
-     *
-     * @return description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Return the list of notes defined for this note log.
-     *
-     * @return Notes - list of notes
-     */
-    public Notes getNotes()
-    {
-        if (notes == null)
-        {
-            return notes;
-        }
-        else
-        {
-            return notes.cloneIterator(super.getParentAsset());
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "NoteLog{" +
-                "displayName='" + displayName + '\'' +
-                ", description='" + description + '\'' +
-                ", notes=" + notes +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/NoteLogs.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/NoteLogs.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/NoteLogs.java
deleted file mode 100644
index 5f4ac05..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/NoteLogs.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * NoteLogs supports an iterator over a list of note logs.  Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class NoteLogs extends AssetPropertyIteratorBase implements Iterator<NoteLog>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public NoteLogs(AssetDescriptor              parentAsset,
-                    int                          totalElementCount,
-                    int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public NoteLogs(AssetDescriptor   parentAsset, NoteLogs    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new NoteLog(parentAsset, (NoteLog)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract NoteLogs  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return NoteLog - next element object that has been cloned.
-     */
-    @Override
-    public NoteLog next()
-    {
-        return (NoteLog)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "NoteLogs{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Notes.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Notes.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Notes.java
deleted file mode 100644
index 077d7fa..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Notes.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * Notes supports an iterator over a list of notes within a note log.  Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class Notes extends AssetPropertyIteratorBase implements Iterator<Note>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public Notes(AssetDescriptor              parentAsset,
-                 int                          totalElementCount,
-                 int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public Notes(AssetDescriptor   parentAsset, Notes    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new Note(parentAsset, (Note)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract Notes  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return Note - next element object that has been cloned.
-     */
-    @Override
-    public Note next()
-    {
-        return (Note)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Notes{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/PagingIterator.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/PagingIterator.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/PagingIterator.java
deleted file mode 100644
index 8928041..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/PagingIterator.java
+++ /dev/null
@@ -1,337 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import org.apache.atlas.ocf.ffdc.OCFErrorCode;
-import org.apache.atlas.ocf.ffdc.OCFRuntimeException;
-import org.apache.atlas.ocf.ffdc.PropertyServerException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-
-/**
- * PagingIterator supports an iterator over a list of objects that extend AssetPropertyBase.
- * Callers can use it to step through the list just once.  If they want to parse the list again,
- * they could use the copy/clone constructor to create a new iterator.
- *
- * PagingIterator provides paging support to enable the list in the iterator to be much bigger than
- * can be stored in memory.  It maintains pointers for the full list, and a potentially smaller
- * cached list that is used to batch up elements being retrieved from the property (metadata) server.
- * Thus is combines the ability to process very large lists whilst minimising the chatter with the property server.
- *
- * The class uses a number of pointers and counts.  Imagine a list of 4000 columns in a table.
- * We can not retrieve all 4000 columns on one call. So we retrieve subsets over a number of REST calls as the
- * caller walks through the full list.
- * <ul>
- *     <li>
- *         totalElement is 4000 - ie how many elements there are in total.
- *     </li>
- *     <li>
- *         maxCacheSize is the maximum elements we can retrieve in one call
- *     </li>
- *     <li>
- *         cachedElementList.size() is how many elements we have in memory at this time.
- *     </li>
- * </ul>
- *
- * cachedElementList.size() is set to maxCacheSize() for all retrieves except for processing the last cache of elements.
- * For example, if the totalElement is 25 and the maxCacheSize() is 10 then we would retrieve 3 caches -
- * the first two would have 10 elements in them and the third will have 5 elements.
- * In the first 2 retrieves, maxCacheSize and cachedElementList.size() are set to 10.
- * In the last one, maxCacheSize==10 and cachedElementList.size()==5.
- */
-public class PagingIterator extends AssetPropertyBase implements Iterator<AssetPropertyBase>
-{
-    private int                          maxCacheSize         = 1;
-
-    private int                          totalElementCount    = 0;
-    private int                          cachedElementStart   = 0;
-    private ArrayList<AssetPropertyBase> cachedElementList    = new ArrayList<>();
-    private int                          cachedElementPointer = 0;
-
-    private AssetPropertyIteratorBase    iterator             = null;
-
-    private static final Logger log = LoggerFactory.getLogger(PagingIterator.class);
-
-
-
-    /**
-     * Typical Constructor creates an iterator with the supplied list of comments.
-     *
-     * @param parentAsset - descriptor of parent asset.
-     * @param iterator - type-specific iterator that wraps this paging iterator.
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public PagingIterator(AssetDescriptor              parentAsset,
-                          AssetPropertyIteratorBase    iterator,
-                          int                          totalElementCount,
-                          int                          maxCacheSize)
-    {
-        super(parentAsset);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("New PagingIterator:");
-            log.debug("==> totalElementCount: " + totalElementCount);
-            log.debug("==> maxCacheSize: " + maxCacheSize);
-        }
-
-
-        if (totalElementCount > 0)
-        {
-            this.totalElementCount = totalElementCount;
-        }
-
-        if (maxCacheSize > 0)
-        {
-            this.maxCacheSize = maxCacheSize;
-        }
-
-        if (iterator != null)
-        {
-            this.iterator = iterator;
-        }
-        else
-        {
-            /*
-             * Throw runtime exception to show the caller they are not using the list correctly.
-             */
-            OCFErrorCode errorCode = OCFErrorCode.NO_ITERATOR;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(this.getClass().getSimpleName(),
-                                                                            super.getParentAssetName(),
-                                                                            super.getParentAssetTypeName());
-
-            throw new OCFRuntimeException(errorCode.getHTTPErrorCode(),
-                                          this.getClass().getName(),
-                                          "next",
-                                          errorMessage,
-                                          errorCode.getSystemAction(),
-                                          errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param iterator - type-specific iterator that wraps this paging iterator.
-     * @param templateIterator - template to copy; null to create an empty iterator
-     */
-    public PagingIterator(AssetDescriptor           parentAsset,
-                          AssetPropertyIteratorBase iterator,
-                          PagingIterator            templateIterator)
-    {
-        super(parentAsset, templateIterator);
-
-        if (templateIterator != null)
-        {
-            this.cachedElementStart = 0;
-            this.cachedElementPointer = 0;
-            this.cachedElementList = new ArrayList<>();
-
-            if (templateIterator.totalElementCount > 0)
-            {
-                this.totalElementCount = templateIterator.totalElementCount;
-            }
-
-            if (templateIterator.maxCacheSize > 0)
-            {
-                this.maxCacheSize = templateIterator.maxCacheSize;
-            }
-
-            if (iterator != null)
-            {
-                this.iterator = iterator;
-            }
-            else
-            {
-            /*
-             * Throw runtime exception to show the caller they are not using the list correctly.
-             */
-                OCFErrorCode errorCode = OCFErrorCode.NO_ITERATOR;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(this.getClass().getSimpleName(),
-                                                                                super.getParentAssetName(),
-                                                                                super.getParentAssetTypeName());
-
-                throw new OCFRuntimeException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              "next",
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-            }
-
-            if (templateIterator.cachedElementStart == 0)
-            {
-                /*
-                 * The template's cache starts at the beginning of the total list so ok to copy it.
-                 */
-                for (AssetPropertyBase templateElement : templateIterator.cachedElementList)
-                {
-                    this.cachedElementList.add(iterator.cloneElement(parentAsset, templateElement));
-                }
-            }
-        }
-    }
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return (cachedElementStart < totalElementCount);
-    }
-
-
-    /**
-     * Return the next element in the list
-     *
-     * @return AssetPropertyBase - next element.
-     * @throws OCFRuntimeException - if there are no more elements in the list or there are problems retrieving
-     *                             elements from the property (metadata) server.
-     */
-    @Override
-    public AssetPropertyBase next()
-    {
-        /*
-         * Check more elements available
-         */
-        if (this.hasNext())
-        {
-            AssetPropertyBase retrievedElement = null;
-
-            /*
-             * If the pointer is at the end of the cache then retrieve more content from the property (metadata)
-             * server.
-             */
-            if (cachedElementPointer == cachedElementList.size())
-            {
-                try
-                {
-                    cachedElementList = iterator.getCachedList(cachedElementStart, maxCacheSize);
-                    cachedElementPointer = 0;
-                }
-                catch (PropertyServerException   error)
-                {
-                    /*
-                     * Problem retrieving next cache.  The exception includes a detailed error message,
-                     */
-                    OCFErrorCode errorCode = OCFErrorCode.PROPERTIES_NOT_AVAILABLE;
-                    String        errorMessage = errorCode.getErrorMessageId()
-                                               + errorCode.getFormattedErrorMessage(error.getErrorMessage(),
-                                                                                    this.toString());
-
-                    throw new OCFRuntimeException(errorCode.getHTTPErrorCode(),
-                                                  this.getClass().getName(),
-                                                  "next",
-                                                  errorMessage,
-                                                  errorCode.getSystemAction(),
-                                                  errorCode.getUserAction(),
-                                                  error);
-                }
-            }
-
-            retrievedElement = iterator.cloneElement(getParentAsset(), cachedElementList.get(cachedElementPointer));
-            cachedElementPointer++;
-            cachedElementStart++;
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("Returning next element:");
-                log.debug("==> totalElementCount: " + totalElementCount);
-                log.debug("==> cachedElementPointer: " + cachedElementPointer);
-                log.debug("==> cachedElementStart:" + cachedElementStart);
-                log.debug("==> maxCacheSize:" + maxCacheSize);
-            }
-
-
-            return retrievedElement;
-        }
-        else
-        {
-            /*
-             * Throw runtime exception to show the caller they are not using the list correctly.
-             */
-            OCFErrorCode errorCode = OCFErrorCode.NO_MORE_ELEMENTS;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(this.getClass().getSimpleName(),
-                                                                            super.getParentAssetName(),
-                                                                            super.getParentAssetTypeName());
-
-            throw new OCFRuntimeException(errorCode.getHTTPErrorCode(),
-                                          this.getClass().getName(),
-                                          "next",
-                                          errorMessage,
-                                          errorCode.getSystemAction(),
-                                          errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Return the number of elements in the list.
-     *
-     * @return elementCount
-     */
-    public int getElementCount()
-    {
-        return totalElementCount;
-    }
-
-
-    /**
-     * Remove the current element in the iterator.
-     */
-    @Override
-    public void remove()
-    {
-        /*
-         * Nothing to do since the removed element can never be revisited through this instance.
-         */
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "PagingIterator{" +
-                "maxCacheSize=" + maxCacheSize +
-                ", totalElementCount=" + totalElementCount +
-                ", cachedElementStart=" + cachedElementStart +
-                ", cachedElementList=" + cachedElementList +
-                ", cachedElementPointer=" + cachedElementPointer +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/PrimitiveSchemaElement.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/PrimitiveSchemaElement.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/PrimitiveSchemaElement.java
deleted file mode 100644
index ea4b28a..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/PrimitiveSchemaElement.java
+++ /dev/null
@@ -1,150 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * PrimitiveSchemaElement describes a schema element that has a primitive type.  This class stores which
- * type of primitive type it is an a default value if supplied.
- */
-public class PrimitiveSchemaElement extends SchemaElement
-{
-    private  String     dataType = null;
-    private  String     defaultValue = null;
-
-
-    /**
-     * Typical constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param versionNumber - the version number of the schema element - null means no version number.
-     * @param author - the name of the author of the schema element. Null means the author is unknown.
-     * @param usage - the usage guidance for this schema element.  Null means no guidance available.
-     * @param encodingStandard - encoding standard used for this schema.  It may be XML, JSON, SQL DDL or something else.
-     *                           Null means the encoding standard is unknown or there are many choices.
-     * @param dataType - the name of the data type for this element.  Null means unknown data type.
-     * @param defaultValue - String containing default value for the element
-     */
-    public PrimitiveSchemaElement(AssetDescriptor parentAsset,
-                                  ElementType type,
-                                  String guid,
-                                  String url,
-                                  Classifications classifications,
-                                  String qualifiedName,
-                                  AdditionalProperties additionalProperties,
-                                  Meanings meanings,
-                                  String versionNumber,
-                                  String author,
-                                  String usage,
-                                  String encodingStandard,
-                                  String dataType,
-                                  String defaultValue)
-    {
-        super(parentAsset,
-              type,
-              guid,
-              url,
-              classifications,
-              qualifiedName,
-              additionalProperties,
-              meanings,
-              versionNumber,
-              author,
-              usage,
-              encodingStandard);
-
-        this.dataType = dataType;
-        this.defaultValue = defaultValue;
-    }
-
-    /**
-     * Copy/clone Constructor - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the definitions clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param parentAsset - description of the asset that this schema element is attached to.
-     * @param templateSchemaElement - template object to copy.
-     */
-    public PrimitiveSchemaElement(AssetDescriptor  parentAsset, PrimitiveSchemaElement templateSchemaElement)
-    {
-        super(parentAsset, templateSchemaElement);
-
-        if (templateSchemaElement != null)
-        {
-            dataType = templateSchemaElement.getDataType();
-            defaultValue = templateSchemaElement.getDefaultValue();
-        }
-    }
-
-
-    /**
-     * Return the data type for this element.  Null means unknown data type.
-     *
-     * @return String DataType
-     */
-    public String getDataType() { return dataType; }
-
-
-    /**
-     * Return the default value for the element.  Null means no default value set up.
-     *
-     * @return String containing default value
-     */
-    public String getDefaultValue() { return defaultValue; }
-
-
-    /**
-     * Returns a clone of this object as the abstract SchemaElement class.
-     *
-     * @param parentAsset - description of the asset that this schema element is attached to.
-     * @return PrimitiveSchemaElement object
-     */
-    @Override
-    public SchemaElement cloneSchemaElement(AssetDescriptor parentAsset)
-    {
-        return new PrimitiveSchemaElement(parentAsset, this);
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "PrimitiveSchemaElement{" +
-                "dataType='" + dataType + '\'' +
-                ", defaultValue='" + defaultValue + '\'' +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/PropertyBase.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/PropertyBase.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/PropertyBase.java
deleted file mode 100644
index 124ac59..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/PropertyBase.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.io.Serializable;
-import java.util.UUID;
-
-
-/**
- * This property header implements any common mechanisms that all property objects need.
- */
-public abstract class PropertyBase implements Serializable
-{
-    private static final long     serialVersionUID = 1L;
-    private              int      hashCode = UUID.randomUUID().hashCode();
-
-
-    /**
-     * Typical Constructor
-     */
-    public PropertyBase()
-    {
-        /*
-         * Nothing to do.  This constructor is included so variables are added in this class at a later date
-         * without impacting the subclasses.
-         */
-    }
-
-
-    /**
-     * Copy/clone Constructor - the resulting object will return true if tested with this.equals(template) as
-     * long as the template object is not null;
-     *
-     * @param template - object being copied
-     */
-    public PropertyBase(PropertyBase template)
-    {
-        /*
-         * The hashCode value is replaced with the value from the template so the template object and this
-         * new object will return equals set to true.
-         */
-        if (template != null)
-        {
-            hashCode = template.hashCode();
-        }
-    }
-
-
-    /**
-     * Provide a common implementation of hashCode for all OCF properties objects.  The UUID is unique and
-     * is randomly assigned and so its hashCode is as good as anything to describe the hash code of the properties
-     * object.  This method may be overridden by subclasses.
-     */
-    public int hashCode()
-    {
-        return hashCode;
-    }
-
-
-    /**
-     * Provide a common implementation of equals for all OCF properties objects.  The UUID is unique and
-     * is randomly assigned and so its hashCode is as good as anything to evaluate the equality of the properties
-     * object.
-     *
-     * @param object - object to test
-     * @return boolean flag
-     */
-    @Override
-    public boolean equals(Object object)
-    {
-        if (this == object)
-        {
-            return true;
-        }
-        if (object == null || getClass() != object.getClass())
-        {
-            return false;
-        }
-
-        PropertyBase that = (PropertyBase) object;
-
-        return hashCode == that.hashCode;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "PropertyBase{" +
-                "hashCode=" + hashCode +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Rating.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Rating.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Rating.java
deleted file mode 100644
index 4ad041d..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Rating.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * Stores information about a rating connected to an asset.  Ratings provide informal feedback on the quality of assets
- * and can be added at any time.
- *
- * Ratings have the userId of the person who added it, a star rating and an optional review comment.
- *
- * The content of the rating is a personal judgement (which is why the user's id is in the object)
- * and there is no formal review of the ratings.  However, they can be used as a basis for crowd-sourcing
- * feedback to asset owners.
- */
-public class Rating extends ElementHeader
-{
-    /*
-     * Attributes of a Rating
-     */
-    private StarRating starRating = null;
-    private String     review = null;
-    private String     user = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param starRating - StarRating enum - the star value for the rating.
-     * @param review - String - review comments
-     * @param user - String - user id of person providing the rating
-     */
-    public Rating(AssetDescriptor parentAsset,
-                  ElementType     type,
-                  String          guid,
-                  String          url,
-                  Classifications classifications,
-                  StarRating      starRating,
-                  String          review,
-                  String          user)
-    {
-        super(parentAsset, type, guid, url, classifications);
-
-        this.starRating = starRating;
-        this.review = review;
-        this.user = user;
-    }
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateRating - element to copy
-     */
-    public Rating(AssetDescriptor parentAsset, Rating templateRating)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(parentAsset, templateRating);
-
-        if (templateRating != null)
-        {
-            /*
-             * Copy the values from the supplied tag.
-             */
-            user = templateRating.getUser();
-            starRating = templateRating.getStarRating();
-            review = templateRating.getReview();
-        }
-    }
-
-
-    /**
-     * Return the user id of the person who created the rating.  Null means the user id is not known.
-     *
-     * @return String - user
-     */
-    public String getUser() {
-        return user;
-    }
-
-
-    /**
-     * Return the stars for the rating.
-     *
-     * @return StarRating - starRating
-     */
-    public StarRating getStarRating() {
-        return starRating;
-    }
-
-
-    /**
-     * Return the review comments - null means no review is available.
-     *
-     * @return String - review comments
-     */
-    public String getReview()
-    {
-        return review;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Rating{" +
-                "starRating=" + starRating +
-                ", review='" + review + '\'' +
-                ", user='" + user + '\'' +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Ratings.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Ratings.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Ratings.java
deleted file mode 100644
index 98e25ed..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Ratings.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * Ratings supports an iterator over a list of ratings for an asset.
- * Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class Ratings extends AssetPropertyIteratorBase implements Iterator<Rating>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public Ratings(AssetDescriptor              parentAsset,
-                   int                          totalElementCount,
-                   int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public Ratings(AssetDescriptor   parentAsset, Ratings    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new Rating(parentAsset, (Rating)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract Ratings  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return Rating - next element object that has been cloned.
-     */
-    @Override
-    public Rating next()
-    {
-        return (Rating)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Ratings{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Referenceable.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Referenceable.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Referenceable.java
deleted file mode 100644
index 6d75aea..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Referenceable.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * Many open metadata entities are referenceable.  It means that they have a qualified name and additional
- * properties.  In addition the Referenceable class adds support for the parent asset, guid, url and type
- * for the entity through extending ElementHeader.
- */
-public class Referenceable extends ElementHeader
-{
-    /*
-     * Attributes of a Referenceable
-     */
-    protected  String                 qualifiedName = null;
-    protected  AdditionalProperties   additionalProperties = null;
-
-    /*
-     * Attached glossary terms
-     */
-    protected  Meanings               meanings = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     */
-    public Referenceable(AssetDescriptor      parentAsset,
-                         ElementType          type,
-                         String               guid,
-                         String               url,
-                         Classifications      classifications,
-                         String               qualifiedName,
-                         AdditionalProperties additionalProperties,
-                         Meanings             meanings)
-    {
-        super(parentAsset, type, guid, url, classifications);
-
-        this.qualifiedName = qualifiedName;
-        this.additionalProperties = additionalProperties;
-        this.meanings = meanings;
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateReferenceable - element to copy
-     */
-    public Referenceable(AssetDescriptor parentAsset, Referenceable templateReferenceable)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(parentAsset, templateReferenceable);
-
-        if (templateReferenceable != null)
-        {
-            /*
-             * Copy the qualified name from the supplied template.
-             */
-            qualifiedName = templateReferenceable.getQualifiedName();
-
-            /*
-             * Create a copy of the additional properties since the parent asset may have changed.
-             */
-            AdditionalProperties   templateAdditionalProperties = templateReferenceable.getAdditionalProperties();
-            if (templateAdditionalProperties != null)
-            {
-                additionalProperties = new AdditionalProperties(parentAsset, templateAdditionalProperties);
-            }
-
-            /*
-             * Create a copy of any glossary terms
-             */
-            Meanings  templateMeanings = templateReferenceable.getMeanings();
-            if (templateMeanings != null)
-            {
-                meanings = templateMeanings.cloneIterator(parentAsset);
-            }
-        }
-    }
-
-
-    /**
-     * Returns the stored qualified name property for the metadata entity.
-     * If no qualified name is available then the empty string is returned.
-     *
-     * @return qualifiedName
-     */
-    public String getQualifiedName()
-    {
-        return qualifiedName;
-    }
-
-
-    /**
-     * Return a copy of the additional properties.  Null means no additional properties are available.
-     *
-     * @return AdditionalProperties
-     */
-    public AdditionalProperties getAdditionalProperties()
-    {
-        if (additionalProperties == null)
-        {
-            return additionalProperties;
-        }
-        else
-        {
-            return new AdditionalProperties(super.getParentAsset(), additionalProperties);
-        }
-    }
-
-
-    /**
-     * Return a list of the glossary terms attached to this referenceable object.  Null means no terms available.
-     *
-     * @return list of glossary terms (summary)
-     */
-    public Meanings getMeanings()
-    {
-        if (meanings == null)
-        {
-            return meanings;
-        }
-        else
-        {
-            return meanings.cloneIterator(super.getParentAsset());
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Referenceable{" +
-                "qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedAsset.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedAsset.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedAsset.java
deleted file mode 100644
index 877a60b..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedAsset.java
+++ /dev/null
@@ -1,167 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import org.apache.atlas.ocf.ffdc.PropertyServerException;
-
-/**
- * RelatedAsset describes assets that are related to this asset.  For example, if the asset is a data store, the
- * related assets could be its supported data sets.
- */
-public class RelatedAsset extends Referenceable
-{
-    /*
-     * Properties that make up the summary properties of the related asset.
-     */
-    private String    displayName = null;
-    private String    description = null;
-    private String    owner = null;
-
-    /*
-     * The detailed properties that are retrieved from the server
-     */
-    private RelatedAssetProperties  relatedAssetProperties = null;
-
-
-    /**
-     * Typical constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param displayName - consumable name
-     * @param description - description property stored for the related asset.
-     * @param owner - the owner details for this related asset.
-     * @param relatedAssetProperties - detailed properties of the asset.
-     */
-    public RelatedAsset(AssetDescriptor         parentAsset,
-                        ElementType             type,
-                        String                  guid,
-                        String                  url,
-                        Classifications         classifications,
-                        String                  qualifiedName,
-                        AdditionalProperties    additionalProperties,
-                        Meanings                meanings,
-                        String                  displayName,
-                        String                  description,
-                        String                  owner,
-                        RelatedAssetProperties  relatedAssetProperties)
-    {
-        super(parentAsset, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-
-        this.displayName = displayName;
-        this.description = description;
-        this.owner = owner;
-        this.relatedAssetProperties = relatedAssetProperties;
-    }
-
-
-    /**
-     * Copy/clone constructor
-     *
-     * @param parentAsset - description of the asset that this related asset is attached to.
-     * @param templateRelatedAsset - template object to copy.
-     */
-    public RelatedAsset(AssetDescriptor  parentAsset, RelatedAsset templateRelatedAsset)
-    {
-        super(parentAsset, templateRelatedAsset);
-        if (templateRelatedAsset != null)
-        {
-            displayName = templateRelatedAsset.getDisplayName();
-            description = templateRelatedAsset.getDescription();
-            owner = templateRelatedAsset.getOwner();
-        }
-    }
-
-
-    /**
-     * Returns the stored display name property for the related asset.
-     * If no display name is available then null is returned.
-     *
-     * @return displayName
-     */
-    public String getDisplayName()
-    {
-        return displayName;
-    }
-
-
-    /**
-     * Returns the stored description property for the related asset.
-     * If no description is provided then null is returned.
-     *
-     * @return description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Returns the details of the owner for this related asset.
-     *
-     * @return String owner
-     */
-    public String getOwner() { return owner; }
-
-
-    /**
-     * Return the detailed properties for a related asset.
-     *
-     * @return a refreshed version of the RelatedAssetProperties
-     * @throws PropertyServerException - problems communicating with the property (metadata) server
-     */
-    public RelatedAssetProperties getRelatedAssetProperties() throws PropertyServerException
-    {
-        if (relatedAssetProperties != null)
-        {
-            relatedAssetProperties.refresh();
-        }
-
-        return relatedAssetProperties;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "RelatedAsset{" +
-                "displayName='" + displayName + '\'' +
-                ", description='" + description + '\'' +
-                ", owner='" + owner + '\'' +
-                ", relatedAssetProperties=" + relatedAssetProperties +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file


[40/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/client/AssetConsumer.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/client/AssetConsumer.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/client/AssetConsumer.java
deleted file mode 100644
index 80a98f5..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/client/AssetConsumer.java
+++ /dev/null
@@ -1,1260 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.client;
-
-import org.apache.atlas.ocf.Connector;
-import org.apache.atlas.ocf.ConnectorBroker;
-import org.apache.atlas.ocf.ffdc.ConnectionCheckedException;
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.ocf.properties.CommentType;
-import org.apache.atlas.omas.assetconsumer.server.properties.GUIDResponse;
-import org.apache.atlas.omas.connectedasset.properties.AssetUniverse;
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.ocf.properties.StarRating;
-import org.apache.atlas.omas.assetconsumer.AssetConsumerInterface;
-import org.apache.atlas.omas.assetconsumer.ffdc.*;
-import org.apache.atlas.omas.assetconsumer.ffdc.exceptions.*;
-import org.apache.atlas.omas.assetconsumer.server.properties.AssetConsumerOMASAPIResponse;
-import org.apache.atlas.omas.assetconsumer.server.properties.ConnectionResponse;
-import org.apache.atlas.omas.assetconsumer.server.properties.VoidResponse;
-import org.apache.atlas.omas.connectedasset.client.ConnectedAsset;
-import org.apache.atlas.omas.connectedasset.client.ConnectedAssetProperties;
-import org.springframework.web.client.RestTemplate;
-
-/**
- * The AssetConsumer Open Metadata Access Service (OMAS) provides an interface to support an application or tool
- * that is using Open Connector Framework (OCF) connectors to work with assets such as data stores, data sets and
- * APIs.  The interface is divided into three parts:
- * <ul>
- *     <li>Client-side only services that work with the OCF to create requested connectors.</li>
- *     <li>OMAS Server calls to retrieve connection information on behalf of the OCF.</li>
- *     <li>OMAS Server calls to add feedback to the asset.</li>
- * </ul>
- */
-public class AssetConsumer implements AssetConsumerInterface
-{
-    private String            omasServerURL;  /* Initialized in constructor */
-
-    /**
-     * Create a new AssetConsumer client.
-     *
-     * @param newServerURL - the network address of the server running the OMAS REST servers
-     */
-    public AssetConsumer(String     newServerURL)
-    {
-        omasServerURL = newServerURL;
-    }
-
-
-    /**
-     * Use the Open Connector Framework (OCF) to create a connector using the supplied connection.
-     *
-     * @param requestedConnection - connection describing the required connector.
-     * @param methodName - name of the calling method.
-     * @return a new connector.
-     */
-    private Connector  getConnectorForConnection(String          userId,
-                                                 Connection      requestedConnection,
-                                                 String          methodName) throws ConnectionCheckedException,
-                                                                                    ConnectorCheckedException
-    {
-        ConnectorBroker  connectorBroker = new ConnectorBroker();
-
-        /*
-         * Pass the connection to the ConnectorBroker to create the connector instance.
-         * Again, exceptions from this process are returned directly to the caller.
-         */
-        Connector newConnector = connectorBroker.getConnector(requestedConnection);
-
-        /*
-         * If no exception is thrown by getConnector, we should have a connector instance.
-         */
-        if (newConnector == null)
-        {
-            /*
-             * This is probably some sort of logic error since the connector should have been returned.
-             * Whatever the cause, the process can not proceed without a connector.
-             */
-            AssetConsumerErrorCode  errorCode = AssetConsumerErrorCode.NULL_CONNECTOR_RETURNED;
-            String                  errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new AssetConsumerRuntimeException(errorCode.getHTTPErrorCode(),
-                                                    this.getClass().getName(),
-                                                    methodName,
-                                                    errorMessage,
-                                                    errorCode.getSystemAction(),
-                                                    errorCode.getUserAction());
-        }
-
-        /*
-         * If the connector is successfully created, set up the Connected Asset Properties for the connector.
-         * The properties should be retrieved from the open metadata repositories, so use an OMAS implementation
-         * of the ConnectedAssetProperties object.
-         */
-        ConnectedAssetProperties connectedAssetProperties = new ConnectedAssetProperties(userId,
-                                                                                         omasServerURL,
-                                                                                         newConnector.getConnectorInstanceId(),
-                                                                                         newConnector.getConnection());
-
-        /*
-         * Pass the new connected asset properties to the connector
-         */
-        newConnector.initializeConnectedAssetProperties(connectedAssetProperties);
-
-        /*
-         * At this stage, the asset properties are not retrieved from the server.  This does not happen until the caller
-         * issues a connector.getConnectedAssetProperties.  This causes the connectedAssetProperties.refresh() call
-         * to be made, which contacts the OMAS server and retrieves the asset properties.
-         *
-         * Delaying the population of the connected asset properties ensures the latest values are returned to the
-         * caller (consider a long running connection).  Alternatively, these properties may not ever be used by the
-         * caller so retrieving the properties at this point would be unnecessary.
-         */
-
-        return newConnector;
-    }
-
-
-
-    /**
-     * Returns the connection object corresponding to the supplied connection name.
-     *
-     * @param userId - String - userId of user making request.
-     * @param name - this may be the qualifiedName or displayName of the connection.
-     *
-     * @return Connection retrieved from property server
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws UnrecognizedConnectionNameException - there is no connection defined for this name.
-     * @throws AmbiguousConnectionNameException - there is more than one connection defined for this name.
-     * @throws PropertyServerException - there is a problem retrieving information from the property (metadata) server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    private Connection getConnectionByName(String   userId,
-                                           String   name) throws InvalidParameterException,
-                                                                 UnrecognizedConnectionNameException,
-                                                                 AmbiguousConnectionNameException,
-                                                                 PropertyServerException,
-                                                                 UserNotAuthorizedException
-    {
-        final String   methodName = "getConnectionByName";
-        final String   urlTemplate = "/{0}/connection/by-name/{1}";
-
-        validateOMASServerURL(methodName);
-
-        ConnectionResponse   restResult = callConnectionGetRESTCall(methodName,
-                                                                    omasServerURL + urlTemplate,
-                                                                    userId,
-                                                                    name);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUnrecognizedConnectionNameException(methodName, restResult);
-        this.detectAndThrowAmbiguousConnectionNameException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-
-        return restResult.getConnection();
-    }
-
-
-    /**
-     * Returns the connector corresponding to the supplied connection name.
-     *
-     * @param userId - String - userId of user making request.
-     * @param connectionName - this may be the qualifiedName or displayName of the connection.
-     *
-     * @return Connector - connector instance.
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws UnrecognizedConnectionNameException - there is no connection defined for this name.
-     * @throws AmbiguousConnectionNameException - there is more than one connection defined for this name.
-     * @throws ConnectionCheckedException - there are errors in the configuration of the connection which is preventing
-     *                                      the creation of a connector.
-     * @throws ConnectorCheckedException - there are errors in the initialization of the connector.
-     * @throws PropertyServerException - there is a problem retrieving information from the property (metadata) server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public Connector getConnectorByName(String   userId,
-                                        String   connectionName) throws InvalidParameterException,
-                                                                        UnrecognizedConnectionNameException,
-                                                                        AmbiguousConnectionNameException,
-                                                                        ConnectionCheckedException,
-                                                                        ConnectorCheckedException,
-                                                                        PropertyServerException,
-                                                                        UserNotAuthorizedException
-    {
-        final String   methodName = "getConnectorByName";
-        final  String  nameParameter = "connectionName";
-
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateName(connectionName, nameParameter, methodName);
-
-        return this.getConnectorForConnection(userId,
-                                              this.getConnectionByName(userId, connectionName),
-                                              methodName);
-    }
-
-
-
-    /**
-     * Returns the connection object corresponding to the supplied connection GUID.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - the unique id for the connection within the property server.
-     *
-     * @return Connection retrieved from the property server
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * UnrecognizedConnectionGUIDException - the supplied GUID is not recognized by the property server.
-     * PropertyServerException - there is a problem retrieving information from the property (metadata) server.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    private Connection getConnectionByGUID(String     userId,
-                                           String     guid) throws InvalidParameterException,
-                                                                   UnrecognizedConnectionGUIDException,
-                                                                   PropertyServerException,
-                                                                   UserNotAuthorizedException
-    {
-        final String   methodName  = "getConnectionByGUID";
-        final String   urlTemplate = "/{0}/connection/{1}";
-
-        validateOMASServerURL(methodName);
-
-        ConnectionResponse   restResult = callConnectionGetRESTCall(methodName,
-                                                                    omasServerURL + urlTemplate,
-                                                                    userId,
-                                                                    guid);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUnrecognizedConnectionGUIDException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-
-        return restResult.getConnection();
-    }
-
-
-
-    /**
-     * Returns the connector corresponding to the supplied connection GUID.
-     *
-     * @param userId - String - userId of user making request.
-     * @param connectionGUID - the unique id for the connection within the property server.
-     *
-     * @return Connector - connector instance.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws UnrecognizedConnectionGUIDException - the supplied GUID is not recognized by the property server.
-     * @throws ConnectionCheckedException - there are errors in the configuration of the connection which is preventing
-     *                                      the creation of a connector.
-     * @throws ConnectorCheckedException - there are errors in the initialization of the connector.
-     * @throws PropertyServerException - there is a problem retrieving information from the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public Connector getConnectorByGUID(String     userId,
-                                        String     connectionGUID) throws InvalidParameterException,
-                                                                          UnrecognizedConnectionGUIDException,
-                                                                          ConnectionCheckedException,
-                                                                          ConnectorCheckedException,
-                                                                          PropertyServerException,
-                                                                          UserNotAuthorizedException
-    {
-        final  String  methodName = "getConnectorByGUID";
-        final  String  guidParameter = "connectionGUID";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(connectionGUID, guidParameter, methodName);
-
-        return this.getConnectorForConnection(userId,
-                                              this.getConnectionByGUID(userId, connectionGUID),
-                                              methodName);
-    }
-
-
-    /**
-     * Returns the connector corresponding to the supplied connection.
-     *
-     * @param userId - String - userId of user making request.
-     * @param connection - the connection object that contains the properties needed to create the connection.
-     *
-     * @return Connector - connector instance
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws ConnectionCheckedException - there are errors in the configuration of the connection which is preventing
-     *                                      the creation of a connector.
-     * @throws ConnectorCheckedException - there are errors in the initialization of the connector.
-     * @throws PropertyServerException - there is a problem retrieving information from the property (metadata) server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public Connector  getConnectorByConnection(String        userId,
-                                               Connection    connection) throws InvalidParameterException,
-                                                                                ConnectionCheckedException,
-                                                                                ConnectorCheckedException,
-                                                                                PropertyServerException,
-                                                                                UserNotAuthorizedException
-    {
-        final  String  methodName = "getConnectorByConnection";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-
-        return this.getConnectorForConnection(userId, connection, methodName);
-    }
-
-
-    /**
-     * Returns a comprehensive collection of properties about the requested asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for asset.
-     *
-     * @return AssetUniverse - a comprehensive collection of properties about the asset.
-
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem retrieving the asset properties from
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public AssetUniverse getAssetProperties(String   userId,
-                                            String   assetGUID) throws InvalidParameterException,
-                                                                       PropertyServerException,
-                                                                       UserNotAuthorizedException
-    {
-        final String   methodName = "getAssetProperties";
-        final String   guidParameter = "assetGUID";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(assetGUID, guidParameter, methodName);
-
-        ConnectedAsset connectedAssetClient = new ConnectedAsset(omasServerURL);
-
-        try
-        {
-            /*
-             * Make use of the ConnectedAsset OMAS Service which provides the metadata services for the
-             * Open Connector Framework (OCF).
-             */
-            return connectedAssetClient.getAssetProperties(userId, assetGUID);
-        }
-        catch (Throwable error)
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.NO_CONNECTED_ASSET;
-            String                 errorMessage = errorCode.getErrorMessageId()
-                                                + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new PropertyServerException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Creates an Audit log record for the asset.  This log record is stored in the Asset's Audit Log.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for the asset.
-     * @param connectorInstanceId - String - (optional) id of connector in use (if any).
-     * @param connectionName - String - (optional) name of the connection (extracted from the connector).
-     * @param connectorType - String - (optional) type of connector in use (if any).
-     * @param contextId - String - (optional) function name, or processId of the activity that the caller is performing.
-     * @param message - log record content.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public void  addLogMessageToAsset(String      userId,
-                                      String      assetGUID,
-                                      String      connectorInstanceId,
-                                      String      connectionName,
-                                      String      connectorType,
-                                      String      contextId,
-                                      String      message) throws InvalidParameterException,
-                                                                  PropertyServerException,
-                                                                  UserNotAuthorizedException
-    {
-        final String   methodName = "addLogMessageToAsset";
-        final String   guidParameter = "assetGUID";
-
-        final String   urlTemplate = "/{0}/asset/{1}/log-record?connectorInstanceId={2}&connectionName={3}&connectorType={4}&contextId={5}&message={6}";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(assetGUID, guidParameter, methodName);
-
-        VoidResponse restResult = callVoidPostRESTCall(methodName,
-                                                       omasServerURL + urlTemplate,
-                                                       userId,
-                                                       assetGUID,
-                                                       connectorInstanceId,
-                                                       connectionName,
-                                                       connectorType,
-                                                       contextId,
-                                                       message);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-    }
-
-
-
-    /**
-     * Adds a new public tag to the asset's properties.
-     *
-     * @param userId         - String - userId of user making request.
-     * @param assetGUID      - String - unique id for the asset.
-     * @param tagName        - String - name of the tag.
-     * @param tagDescription - String - (optional) description of the tag.  Setting a description, particularly in
-     *                       a public tag makes the tag more valuable to other users and can act as an embryonic
-     *                       glossary term.
-     * @return String - GUID for new tag.
-     * @throws InvalidParameterException  - one of the parameters is null or invalid.
-     * @throws PropertyServerException    - There is a problem adding the asset properties to
-     *                                    the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public String addTagToAsset(String userId,
-                                String assetGUID,
-                                String tagName,
-                                String tagDescription) throws InvalidParameterException,
-                                                              PropertyServerException,
-                                                              UserNotAuthorizedException
-    {
-        final String   methodName  = "addTagToAsset";
-        final String   guidParameter = "assetGUID";
-        final String   nameParameter = "tagName";
-
-        final String   urlTemplate = "/{0}/asset/{1}/tags?tagName={2}&tagDescription={3}";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(assetGUID, guidParameter, methodName);
-        validateName(tagName, nameParameter, methodName);
-
-        GUIDResponse restResult = callGUIDPOSTRESTCall(methodName,
-                                                       omasServerURL + urlTemplate,
-                                                       userId,
-                                                       assetGUID,
-                                                       tagName,
-                                                       tagDescription);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-
-        return restResult.getGUID();
-    }
-
-
-    /**
-     * Adds a new private tag to the asset's properties.
-     *
-     * @param userId         - String - userId of user making request.
-     * @param assetGUID      - String - unique id for the asset.
-     * @param tagName        - String - name of the tag.
-     * @param tagDescription - String - (optional) description of the tag.  Setting a description, particularly in
-     *                       a public tag makes the tag more valuable to other users and can act as an embryonic
-     *                       glossary term.
-     * @return String - GUID for new tag.
-     * @throws InvalidParameterException  - one of the parameters is null or invalid.
-     * @throws PropertyServerException    - There is a problem adding the asset properties to
-     *                                    the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public String addPrivateTagToAsset(String userId,
-                                       String assetGUID,
-                                       String tagName,
-                                       String tagDescription) throws InvalidParameterException,
-                                                                     PropertyServerException,
-                                                                     UserNotAuthorizedException
-    {
-        final String   methodName  = "addPrivateTagToAsset";
-        final String   guidParameter = "assetGUID";
-        final String   nameParameter = "tagName";
-
-        final String   urlTemplate = "/{0}/asset/{1}/tags/private?tagName={2}&tagDescription={3}";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(assetGUID, guidParameter, methodName);
-        validateName(tagName, nameParameter, methodName);
-
-        GUIDResponse restResult = callGUIDPOSTRESTCall(methodName,
-                                                       omasServerURL + urlTemplate,
-                                                       userId,
-                                                       assetGUID,
-                                                       tagName,
-                                                       tagDescription);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-
-        return restResult.getGUID();
-    }
-
-
-    /**
-     * Adds a rating to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for the asset.
-     * @param starRating - StarRating  - enumeration for none, one to five stars.
-     * @param review - String - user review of asset.
-     *
-     * @return guid of new rating object.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public String addRatingToAsset(String     userId,
-                                   String     assetGUID,
-                                   StarRating starRating,
-                                   String     review) throws InvalidParameterException,
-                                                             PropertyServerException,
-                                                             UserNotAuthorizedException
-    {
-        final String   methodName  = "addRatingToAsset";
-        final String   guidParameter = "assetGUID";
-
-        final String   urlTemplate = "/{0}/asset/{1}/ratings/?starRating={2}&review={3}";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(assetGUID, guidParameter, methodName);
-
-        GUIDResponse restResult = callGUIDPOSTRESTCall(methodName,
-                                                       omasServerURL + urlTemplate,
-                                                       userId,
-                                                       assetGUID,
-                                                       starRating,
-                                                       review);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-
-        return restResult.getGUID();
-    }
-
-
-    /**
-     * Adds a "Like" to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for the asset
-     *
-     * @return guid of new like object.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public String addLikeToAsset(String       userId,
-                                 String       assetGUID) throws InvalidParameterException,
-                                                                PropertyServerException,
-                                                                UserNotAuthorizedException
-    {
-        final String   methodName  = "addRatingToAsset";
-        final String   guidParameter = "assetGUID";
-
-        final String   urlTemplate = "/{0}/asset/{1}/likes";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(assetGUID, guidParameter, methodName);
-
-        GUIDResponse restResult = callGUIDPOSTRESTCall(methodName,
-                                                       omasServerURL + urlTemplate,
-                                                       userId,
-                                                       assetGUID);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-
-        return restResult.getGUID();
-    }
-
-
-    /**
-     * Adds a comment to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for the asset.
-     * @param commentType - type of comment enum.
-     * @param commentText - String - the text of the comment.
-     *
-     * @return guid of new comment.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public String addCommentToAsset(String      userId,
-                                    String      assetGUID,
-                                    CommentType commentType,
-                                    String      commentText) throws InvalidParameterException,
-                                                                    PropertyServerException,
-                                                                    UserNotAuthorizedException
-    {
-        final String   methodName  = "addCommentToAsset";
-        final String   guidParameter = "assetGUID";
-
-        final String   urlTemplate = "/{0}/asset/{1}/comments?commentType{2}&commentText={3}";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(assetGUID, guidParameter, methodName);
-
-        GUIDResponse restResult = callGUIDPOSTRESTCall(methodName,
-                                                       omasServerURL + urlTemplate,
-                                                       userId,
-                                                       assetGUID,
-                                                       commentType,
-                                                       commentText);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-
-        return restResult.getGUID();
-    }
-
-
-    /**
-     * Adds a comment to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param commentGUID - String - unique id for an existing comment.  Used to add a reply to a comment.
-     * @param commentType - type of comment enum.
-     * @param commentText - String - the text of the comment.
-     *
-     * @return guid of new comment.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public String addCommentReply(String      userId,
-                                  String      commentGUID,
-                                  CommentType commentType,
-                                  String      commentText) throws InvalidParameterException,
-                                                                  PropertyServerException,
-                                                                  UserNotAuthorizedException
-    {
-        final String   methodName  = "addCommentReply";
-        final String   commentGUIDParameter = "commentGUID";
-        final String   urlTemplate = "/{0}/comments/{1}/reply?commentType={2}&commentText={3}";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(commentGUID, commentGUIDParameter, methodName);
-
-        GUIDResponse restResult = callGUIDPOSTRESTCall(methodName,
-                                                       omasServerURL + urlTemplate,
-                                                       userId,
-                                                       commentGUID,
-                                                       commentType,
-                                                       commentText);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-
-        return restResult.getGUID();
-    }
-
-
-    /**
-     * Removes a tag from the asset that was added by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param tagGUID - String - unique id for the tag.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public void   removeTag(String     userId,
-                            String     tagGUID) throws InvalidParameterException,
-                                                       PropertyServerException,
-                                                       UserNotAuthorizedException
-    {
-        final String   methodName = "removeTag";
-        final String   guidParameter = "tagGUID";
-
-        final String   urlTemplate = "/{0}/tags/{guid}/delete";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(tagGUID, guidParameter, methodName);
-
-        VoidResponse restResult = callVoidPostRESTCall(methodName,
-                                                       omasServerURL + urlTemplate,
-                                                       userId,
-                                                       tagGUID);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-    }
-
-
-    /**
-     * Removes a tag from the asset that was added by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param tagGUID - String - unique id for the tag.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public void   removePrivateTag(String     userId,
-                                   String     tagGUID) throws InvalidParameterException,
-                                                              PropertyServerException,
-                                                              UserNotAuthorizedException
-    {
-        final String   methodName = "removePrivateTag";
-        final String   guidParameter = "tagGUID";
-
-        final String   urlTemplate = "/{0}/tags/private/{guid}/delete";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(tagGUID, guidParameter, methodName);
-
-        VoidResponse restResult = callVoidPostRESTCall(methodName,
-                                                       omasServerURL + urlTemplate,
-                                                       userId,
-                                                       tagGUID);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-    }
-
-
-    /**
-     * Removes of a star rating that was added to the asset by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param ratingGUID - String - unique id for the rating object
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public void   removeRating(String     userId,
-                               String     ratingGUID) throws InvalidParameterException,
-                                                             PropertyServerException,
-                                                             UserNotAuthorizedException
-    {
-        final String   methodName = "removeRating";
-        final String   guidParameter = "ratingGUID";
-
-        final String   urlTemplate = "/{0}/ratings/{guid}/delete";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(ratingGUID, guidParameter, methodName);
-
-        VoidResponse restResult = callVoidPostRESTCall(methodName,
-                                                       omasServerURL + urlTemplate,
-                                                       userId,
-                                                       ratingGUID);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-    }
-
-
-    /**
-     * Removes a "Like" added to the asset by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param likeGUID - String - unique id for the like object
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public void   removeLike(String     userId,
-                             String     likeGUID) throws InvalidParameterException,
-                                                         PropertyServerException,
-                                                         UserNotAuthorizedException
-    {
-        final String   methodName = "removeLike";
-        final String   guidParameter = "likeGUID";
-
-        final String   urlTemplate = "/{0}/likes/{guid}/delete";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(likeGUID, guidParameter, methodName);
-
-        VoidResponse restResult = callVoidPostRESTCall(methodName,
-                                                       omasServerURL + urlTemplate,
-                                                       userId,
-                                                       likeGUID);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-    }
-
-
-    /**
-     * Removes a comment added to the asset by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param commentGUID - String - unique id for the comment object
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the user does not have permission to perform this request.
-     */
-    public void   removeComment(String     userId,
-                                String     commentGUID) throws InvalidParameterException,
-                                                               PropertyServerException,
-                                                               UserNotAuthorizedException
-    {
-        final  String  methodName = "removeComment";
-        final  String  guidParameter = "commentGUID";
-
-        final String   urlTemplate = "/{0}/comments/{guid}/delete";
-
-        validateOMASServerURL(methodName);
-        validateUserId(userId, methodName);
-        validateGUID(commentGUID, guidParameter, methodName);
-
-        VoidResponse restResult = callVoidPostRESTCall(methodName,
-                                                       omasServerURL + urlTemplate,
-                                                       userId,
-                                                       commentGUID);
-
-        this.detectAndThrowInvalidParameterException(methodName, restResult);
-        this.detectAndThrowUserNotAuthorizedException(methodName, restResult);
-        this.detectAndThrowPropertyServerException(methodName, restResult);
-    }
-
-
-    /**
-     * Throw an exception if a server URL has not been supplied on the constructor.
-     *
-     * @param methodName - name of the method making the call.
-     * @throws PropertyServerException - the server URL is not set
-     */
-    private void validateOMASServerURL(String methodName) throws PropertyServerException
-    {
-        if (omasServerURL == null)
-        {
-            /*
-             * It is not possible to retrieve a connection without knowledge of where the OMAS Server is located.
-             */
-            AssetConsumerErrorCode errorCode    = AssetConsumerErrorCode.SERVER_URL_NOT_SPECIFIED;
-            String                 errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new PropertyServerException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Throw an exception if the supplied userId is null
-     *
-     * @param userId - user name to validate
-     * @param methodName - name of the method making the call.
-     * @throws InvalidParameterException - the userId is null
-     */
-    private void validateUserId(String userId,
-                                String methodName) throws InvalidParameterException
-    {
-        if (userId == null)
-        {
-            AssetConsumerErrorCode errorCode    = AssetConsumerErrorCode.NULL_USER_ID;
-            String                 errorMessage = errorCode.getErrorMessageId()
-                                                + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Throw an exception if the supplied userId is null
-     *
-     * @param guid - unique identifier to validate
-     * @param guidParameter - name of the parameter that passed the guid.
-     * @param methodName - name of the method making the call.
-     * @throws InvalidParameterException - the guid is null
-     */
-    private void validateGUID(String guid,
-                              String guidParameter,
-                              String methodName) throws InvalidParameterException
-    {
-        if (guid == null)
-        {
-            AssetConsumerErrorCode errorCode    = AssetConsumerErrorCode.NULL_GUID;
-            String                 errorMessage = errorCode.getErrorMessageId()
-                                                + errorCode.getFormattedErrorMessage(guidParameter,
-                                                                                     methodName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Throw an exception if the supplied userId is null
-     *
-     * @param name - unique name to validate
-     * @param nameParameter - name of the parameter that passed the name.
-     * @param methodName - name of the method making the call.
-     * @throws InvalidParameterException - the guid is null
-     */
-    private void validateName(String name,
-                              String nameParameter,
-                              String methodName) throws InvalidParameterException
-    {
-        if (name == null)
-        {
-            AssetConsumerErrorCode errorCode    = AssetConsumerErrorCode.NULL_NAME;
-            String                 errorMessage = errorCode.getErrorMessageId()
-                                                + errorCode.getFormattedErrorMessage(nameParameter,
-                                                                                     methodName);
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-    }
-
-
-
-    /**
-     * Issue a GET REST call that returns a Connection object.
-     *
-     * @param methodName - name of the method being called
-     * @param urlTemplate - template of the URL for the REST API call with place-holders for the parameters
-     * @param params - a list of parameters that are slotted into the url template
-     * @return ConnectionResponse
-     * @throws PropertyServerException - something went wrong with the REST call stack.
-     */
-    private ConnectionResponse callConnectionGetRESTCall(String    methodName,
-                                                         String    urlTemplate,
-                                                         Object... params) throws PropertyServerException
-    {
-        ConnectionResponse restResult = new ConnectionResponse();
-
-        /*
-         * Issue the request
-         */
-        try
-        {
-            RestTemplate restTemplate = new RestTemplate();
-
-            restResult = restTemplate.getForObject(urlTemplate, restResult.getClass(), params);
-        }
-        catch (Throwable error)
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.CLIENT_SIDE_REST_API_ERROR;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                     omasServerURL,
-                                                                                                     error.getMessage());
-
-            throw new PropertyServerException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction(),
-                                              error);
-        }
-
-        return restResult;
-    }
-
-
-    /**
-     * Issue a PATCH REST call that returns a TypeDefResponse object.
-     *
-     * @param methodName - name of the method being called
-     * @param urlTemplate - template of the URL for the REST API call with place-holders for the parameters
-     * @param params - a list of parameters that are slotted into the url template
-     * @return TypeDefResponse
-     * @throws PropertyServerException - something went wrong with the REST call stack.
-     */
-    private GUIDResponse callGUIDPOSTRESTCall(String    methodName,
-                                              String    urlTemplate,
-                                              Object... params) throws PropertyServerException
-    {
-        GUIDResponse restResult = new GUIDResponse();
-
-        /*
-         * Issue the request
-         */
-        try
-        {
-            RestTemplate restTemplate = new RestTemplate();
-
-            restResult = restTemplate.postForObject(urlTemplate, null, restResult.getClass(), params);
-        }
-        catch (Throwable error)
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.CLIENT_SIDE_REST_API_ERROR;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                     omasServerURL,
-                                                                                                     error.getMessage());
-
-            throw new PropertyServerException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction(),
-                                              error);
-        }
-
-        return restResult;
-    }
-
-
-    /**
-     * Issue a POST REST call that returns a VoidResponse object.  This is typically a create
-     *
-     * @param methodName - name of the method being called
-     * @param urlTemplate - template of the URL for the REST API call with place-holders for the parameters
-     * @param params - a list of parameters that are slotted into the url template
-     * @return VoidResponse
-     * @throws PropertyServerException - something went wrong with the REST call stack.
-     */
-    private VoidResponse callVoidPostRESTCall(String    methodName,
-                                              String    urlTemplate,
-                                              Object... params) throws PropertyServerException
-    {
-        VoidResponse restResult = new VoidResponse();
-
-        /*
-         * Issue the request
-         */
-        try
-        {
-            RestTemplate restTemplate = new RestTemplate();
-
-            restResult = restTemplate.postForObject(urlTemplate, null, restResult.getClass(), params);
-        }
-        catch (Throwable error)
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.CLIENT_SIDE_REST_API_ERROR;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                     omasServerURL,
-                                                                                                     error.getMessage());
-
-            throw new PropertyServerException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction(),
-                                              error);
-        }
-
-        return restResult;
-    }
-
-
-    /**
-     * Throw an AmbiguousConnectionNameException if it is encoded in the REST response.
-     *
-     * @param methodName - name of the method called
-     * @param restResult - response from the rest call.  This generated in the remote server.
-     * @throws AmbiguousConnectionNameException - encoded exception from the server
-     */
-    private void detectAndThrowAmbiguousConnectionNameException(String                       methodName,
-                                                                AssetConsumerOMASAPIResponse restResult) throws AmbiguousConnectionNameException
-    {
-        final String   exceptionClassName = AmbiguousConnectionNameException.class.getName();
-
-        if ((restResult != null) && (exceptionClassName.equals(restResult.getExceptionClassName())))
-        {
-            throw new AmbiguousConnectionNameException(restResult.getRelatedHTTPCode(),
-                                                       this.getClass().getName(),
-                                                       methodName,
-                                                       restResult.getExceptionErrorMessage(),
-                                                       restResult.getExceptionSystemAction(),
-                                                       restResult.getExceptionUserAction());
-        }
-    }
-
-
-    /**
-     * Throw an InvalidParameterException if it is encoded in the REST response.
-     *
-     * @param methodName - name of the method called
-     * @param restResult - response from the rest call.  This generated in the remote server.
-     * @throws InvalidParameterException - encoded exception from the server
-     */
-    private void detectAndThrowInvalidParameterException(String                       methodName,
-                                                         AssetConsumerOMASAPIResponse restResult) throws InvalidParameterException
-    {
-        final String   exceptionClassName = InvalidParameterException.class.getName();
-
-        if ((restResult != null) && (exceptionClassName.equals(restResult.getExceptionClassName())))
-        {
-            throw new InvalidParameterException(restResult.getRelatedHTTPCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                restResult.getExceptionErrorMessage(),
-                                                restResult.getExceptionSystemAction(),
-                                                restResult.getExceptionUserAction());
-        }
-    }
-
-
-    /**
-     * Throw an PropertyServerException if it is encoded in the REST response.
-     *
-     * @param methodName - name of the method called
-     * @param restResult - response from the rest call.  This generated in the remote server.
-     * @throws PropertyServerException - encoded exception from the server
-     */
-    private void detectAndThrowPropertyServerException(String                       methodName,
-                                                       AssetConsumerOMASAPIResponse restResult) throws PropertyServerException
-    {
-        final String   exceptionClassName = PropertyServerException.class.getName();
-
-        if ((restResult != null) && (exceptionClassName.equals(restResult.getExceptionClassName())))
-        {
-            throw new PropertyServerException(restResult.getRelatedHTTPCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              restResult.getExceptionErrorMessage(),
-                                              restResult.getExceptionSystemAction(),
-                                              restResult.getExceptionUserAction());
-        }
-    }
-
-
-    /**
-     * Throw an UnrecognizedConnectionGUIDException if it is encoded in the REST response.
-     *
-     * @param methodName - name of the method called
-     * @param restResult - response from the rest call.  This generated in the remote server.
-     * @throws UnrecognizedConnectionGUIDException - encoded exception from the server
-     */
-    private void detectAndThrowUnrecognizedConnectionGUIDException(String                       methodName,
-                                                                   AssetConsumerOMASAPIResponse restResult) throws UnrecognizedConnectionGUIDException
-    {
-        final String   exceptionClassName = UnrecognizedConnectionGUIDException.class.getName();
-
-        if ((restResult != null) && (exceptionClassName.equals(restResult.getExceptionClassName())))
-        {
-            throw new UnrecognizedConnectionGUIDException(restResult.getRelatedHTTPCode(),
-                                                          this.getClass().getName(),
-                                                          methodName,
-                                                          restResult.getExceptionErrorMessage(),
-                                                          restResult.getExceptionSystemAction(),
-                                                          restResult.getExceptionUserAction());
-        }
-    }
-
-
-    /**
-     * Throw an UnrecognizedConnectionNameException if it is encoded in the REST response.
-     *
-     * @param methodName - name of the method called
-     * @param restResult - response from the rest call.  This generated in the remote server.
-     * @throws UnrecognizedConnectionNameException - encoded exception from the server
-     */
-    private void detectAndThrowUnrecognizedConnectionNameException(String                       methodName,
-                                                                   AssetConsumerOMASAPIResponse restResult) throws UnrecognizedConnectionNameException
-    {
-        final String   exceptionClassName = UnrecognizedConnectionNameException.class.getName();
-
-        if ((restResult != null) && (exceptionClassName.equals(restResult.getExceptionClassName())))
-        {
-            throw new UnrecognizedConnectionNameException(restResult.getRelatedHTTPCode(),
-                                                          this.getClass().getName(),
-                                                          methodName,
-                                                          restResult.getExceptionErrorMessage(),
-                                                          restResult.getExceptionSystemAction(),
-                                                          restResult.getExceptionUserAction());
-        }
-    }
-
-
-    /**
-     * Throw an UserNotAuthorizedException if it is encoded in the REST response.
-     *
-     * @param methodName - name of the method called
-     * @param restResult - response from UserNotAuthorizedException - encoded exception from the server
-     */
-    private void detectAndThrowUserNotAuthorizedException(String                       methodName,
-                                                          AssetConsumerOMASAPIResponse restResult) throws UserNotAuthorizedException
-    {
-        final String   exceptionClassName = UserNotAuthorizedException.class.getName();
-
-        if ((restResult != null) && (exceptionClassName.equals(restResult.getExceptionClassName())))
-        {
-            throw new UserNotAuthorizedException(restResult.getRelatedHTTPCode(),
-                                                 this.getClass().getName(),
-                                                 methodName,
-                                                 restResult.getExceptionErrorMessage(),
-                                                 restResult.getExceptionSystemAction(),
-                                                 restResult.getExceptionUserAction());
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/events/AssetConsumerEvent.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/events/AssetConsumerEvent.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/events/AssetConsumerEvent.java
deleted file mode 100644
index 65a0634..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/events/AssetConsumerEvent.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.events;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.omas.assetconsumer.properties.Asset;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * AssetConsumerEvent describes the structure of the events emitted by the Asset Consumer OMAS.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class AssetConsumerEvent implements Serializable
-{
-    AssetConsumerEventType   eventType = AssetConsumerEventType.UNKNOWN_ASSET_CONSUMER_EVENT;
-    Asset                    asset = null;
-
-    private static final long     serialVersionUID = 1L;
-
-    /**
-     * Default constructor
-     */
-    public AssetConsumerEvent()
-    {
-    }
-
-
-    /**
-     * Return the type of event.
-     *
-     * @return event type enum
-     */
-    public AssetConsumerEventType getEventType()
-    {
-        return eventType;
-    }
-
-
-    /**
-     * Set up the type of event.
-     *
-     * @param eventType - event type enum
-     */
-    public void setEventType(AssetConsumerEventType eventType)
-    {
-        this.eventType = eventType;
-    }
-
-
-    /**
-     * Return the asset description.
-     *
-     * @return properties about the asset
-     */
-    public Asset getAsset()
-    {
-        return asset;
-    }
-
-
-    /**
-     * Set up the asset description.
-     *
-     * @param asset - properties about the asset.
-     */
-    public void setAsset(Asset asset)
-    {
-        this.asset = asset;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/events/AssetConsumerEventType.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/events/AssetConsumerEventType.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/events/AssetConsumerEventType.java
deleted file mode 100644
index 7e5a35d..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/events/AssetConsumerEventType.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.events;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * AssetConsumerEventType describes the different types of events produced by the AssetConsumer OMAS.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum AssetConsumerEventType implements Serializable
-{
-    UNKNOWN_ASSET_CONSUMER_EVENT  (0,  "UnknownAssetConsumerEvent",  "An Asset Consumer event that is not recognized by the local server."),
-    NEW_ASSET_EVENT               (1,  "NewAsset",                   "A new asset has been defined."),
-    UPDATED_ASSET_EVENT           (2,  "UpdatedAsset",               "An existing asset has been updated."),
-    DELETED_ASSET_EVENT           (3,  "DeletedAsset",               "An existing asset has been deleted.");
-
-
-    private static final long     serialVersionUID = 1L;
-
-    private  int      eventTypeCode;
-    private  String   eventTypeName;
-    private  String   eventTypeDescription;
-
-
-    /**
-     * Default Constructor - sets up the specific values for this instance of the enum.
-     *
-     * @param eventTypeCode - int identifier used for indexing based on the enum.
-     * @param eventTypeName - string name used for messages that include the enum.
-     * @param eventTypeDescription - default description for the enum value - used when natural resource
-     *                                     bundle is not available.
-     */
-    AssetConsumerEventType(int eventTypeCode, String eventTypeName, String eventTypeDescription)
-    {
-        this.eventTypeCode = eventTypeCode;
-        this.eventTypeName = eventTypeName;
-        this.eventTypeDescription = eventTypeDescription;
-    }
-
-
-    /**
-     * Return the int identifier used for indexing based on the enum.
-     *
-     * @return int identifier code
-     */
-    public int getEventTypeCode()
-    {
-        return eventTypeCode;
-    }
-
-
-    /**
-     * Return the string name used for messages that include the enum.
-     *
-     * @return String name
-     */
-    public String getEventTypeName()
-    {
-        return eventTypeName;
-    }
-
-
-    /**
-     * Return the default description for the enum value - used when natural resource
-     * bundle is not available.
-     *
-     * @return String default description
-     */
-    public String getEventTypeDescription()
-    {
-        return eventTypeDescription;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/AssetConsumerErrorCode.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/AssetConsumerErrorCode.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/AssetConsumerErrorCode.java
deleted file mode 100644
index 3b13004..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/ffdc/AssetConsumerErrorCode.java
+++ /dev/null
@@ -1,251 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.ffdc;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.text.MessageFormat;
-import java.util.Arrays;
-
-/**
- * The AssetConsumerErrorCode is used to define first failure data capture (FFDC) for errors that occur when working with
- * the Asset Consumer OMAS Services.  It is used in conjunction with both Checked and Runtime (unchecked) exceptions.
- *
- * The 5 fields in the enum are:
- * <ul>
- *     <li>HTTP Error Code - for translating between REST and JAVA - Typically the numbers used are:</li>
- *     <li><ul>
- *         <li>500 - internal error</li>
- *         <li>400 - invalid parameters</li>
- *         <li>404 - not found</li>
- *         <li>409 - data conflict errors - eg item already defined</li>
- *     </ul></li>
- *     <li>Error Message Id - to uniquely identify the message</li>
- *     <li>Error Message Text - includes placeholder to allow additional values to be captured</li>
- *     <li>SystemAction - describes the result of the error</li>
- *     <li>UserAction - describes how a AssetConsumerInterface should correct the error</li>
- * </ul>
- */
-public enum AssetConsumerErrorCode
-{
-    SERVER_URL_NOT_SPECIFIED(400, "OMAS-ASSETCONSUMER-400-001 ",
-            "The OMAS Server URL is null",
-            "The system is unable to connect to the OMAS Server to retrieve metadata properties.",
-            "Ensure a valid OMAS Server URL is passed to the AssetConsumer when it is created."),
-    SERVER_URL_MALFORMED(400, "OMAS-ASSETCONSUMER-400-002 ",
-            "The OMAS Server URL {0} is not in a recognized format",
-            "The system is unable to connect to the OMAS Server to retrieve metadata properties.",
-            "Ensure a valid OMAS Server URL is passed to the AssetConsumer when it is created."),
-    NULL_USER_ID(400, "OMAS-ASSETCONSUMER-400-003 ",
-            "The user identifier (user id) passed on the {0} operation is null",
-            "The system is unable to process the request without a user id.",
-            "Correct the code in the caller to provide the user id."),
-    NULL_GUID(400, "OMAS-ASSETCONSUMER-400-004 ",
-            "The unique identifier (guid) passed on the {0} parameter of the {1} operation is null",
-            "The system is unable to process the request without a guid.",
-            "Correct the code in the caller to provide the guid."),
-    NULL_NAME(400, "OMAS-ASSETCONSUMER-400-005 ",
-            "The name passed on the {0} parameter of the {1} operation is null",
-            "The system is unable to process the request without a name.",
-            "Correct the code in the caller to provide the name."),
-    NO_CONNECTED_ASSET(400, "OMAS-ASSETCONSUMER-400-006 ",
-            "The request for the properties of asset {0} failed with the following message returned: {1}",
-            "The system is unable to process the request.",
-            "Use the information in the message to understand the nature of the problem and once it is resolved, retry the request."),
-    TOO_MANY_CONNECTIONS(400, "OMAS-ASSETCONSUMER-400-007 ",
-            "The request for a named connection {0} from server {1} returned {2} connections",
-            "The system is unable to return the results.",
-            "Use the information in the message to understand the nature of the problem and once it is resolved, retry the request."),
-    USER_NOT_AUTHORIZED(400, "OMAS-ASSETCONSUMER-400-008 ",
-            "User {0} is not authorized to issue the {1} request for open metadata access service {3} on server {4}",
-            "The system is unable to process the request.",
-            "Verify the access rights of the user."),
-    PROPERTY_SERVER_ERROR(400, "OMAS-ASSETCONSUMER-400-009 ",
-            "An unexpected error was returned by the property server during {1} request for open metadata access service {2} on server {3}; message was {0}",
-            "The system is unable to process the request.",
-            "Verify the access rights of the user."),
-    NULL_ENUM(400, "OMAS-ASSETCONSUMER-400-010 ",
-            "The enumeration value passed on the {0} parameter of the {1} operation is null",
-            "The system is unable to process the request without this enumeration value.",
-            "Correct the code in the caller to provide the name."),
-    NULL_TEXT(400, "OMAS-ASSETCONSUMER-400-011 ",
-            "The text field value passed on the {0} parameter of the {1} operation is null",
-            "The system is unable to process the request without this text field value.",
-            "Correct the code in the caller to provide the name."),
-    OMRS_NOT_INITIALIZED(404, "OMAS-ASSETCONSUMER-404-001 ",
-            "The open metadata repository services are not initialized for the {0} operation",
-            "The system is unable to connect to the open metadata property server.",
-            "Check that the server where the Asset Consumer OMAS is running initialized correctly.  " +
-                      "Correct any errors discovered and retry the request when the open metadata services are available."),
-    OMRS_NOT_AVAILABLE(404, "OMAS-ASSETCONSUMER-404-002 ",
-            "The open metadata repository services are not available for the {0} operation",
-            "The system is unable to connect to the open metadata property server.",
-            "Check that the server where the Asset Consumer OMAS is running initialized correctly.  " +
-                       "Correct any errors discovered and retry the request when the open metadata services are available."),
-    NO_METADATA_COLLECTION(404, "OMAS-ASSETCONSUMER-404-004 ",
-            "The requested connection {0} is not found in OMAS Server {1}",
-            "The system is unable to populate the requested connection object.",
-            "Check that the connection name and the open metadata server URL is correct.  Retry the request when the connection is available in the OMAS Service"),
-    CONNECTION_NOT_FOUND(404, "OMAS-ASSETCONSUMER-404-005 ",
-            "The requested connection {0} is not found in OMAS Server {1}, optional error message {2}",
-            "The system is unable to populate the requested connection object.",
-            "Check that the connection name and the OMAS Server URL is correct.  Retry the request when the connection is available in the OMAS Service"),
-    PROXY_CONNECTION_FOUND(404, "OMAS-ASSETCONSUMER-404-006 ",
-            "Only an entity proxy for requested connection {0} is found in the open metadata server {1}, error message was: {2}",
-            "The system is unable to populate the requested connection object.",
-            "Check that the connection name and the OMAS Server URL is correct.  Retry the request when the connection is available in the OMAS Service"),
-    ASSET_NOT_FOUND(404, "OMAS-ASSETCONSUMER-404-006 ",
-            "The requested asset {0} is not found for connection {1}",
-            "The system is unable to populate the asset properties object because none of the open metadata repositories are returning the asset's properties.",
-            "Verify that the OMAS Service running and the connection definition in use is linked to the Asset definition in the metadata repository. Then retry the request."),
-    UNKNOWN_ASSET(404, "OMAS-ASSETCONSUMER-404-006 ",
-            "The asset with unique identifier {0} is not found for method {1} of access service {2} in open metadata server {3}, error message was: {4}",
-            "The system is unable to update information associated with the asset because none of the connected open metadata repositories recognize the asset's unique identifier.",
-            "The unique identifier of the asset is supplied by the caller.  Verify that the caller's logic is correct, and that there are no errors being reported by the open metadata repository. Once all errors have been resolved, retry the request."),
-    NULL_CONNECTION_RETURNED(500, "OMAS-ASSETCONSUMER-500-001 ",
-            "The requested connection named {0} is not returned by the open metadata Server {1}",
-            "The system is unable to create a connector because the OMAS Server is not returning the Connection properties.",
-            "Verify that the OMAS server running and the connection definition is correctly configured."),
-    NULL_CONNECTOR_RETURNED(500, "OMAS-ASSETCONSUMER-500-002 ",
-            "The requested connector for connection named {0} is not returned by the OMAS Server {1}",
-            "The system is unable to create a connector.",
-            "Verify that the OMAS server is running and the connection definition is correctly configured."),
-    NULL_RESPONSE_FROM_API(503, "OMAS-ASSETCONSUMER-503-001 ",
-            "A null response was received from REST API call {0} to server {1}",
-            "The system has issued a call to an open metadata access service REST API in a remote server and has received a null response.",
-            "Look for errors in the remote server's audit log and console to understand and correct the source of the error."),
-    CLIENT_SIDE_REST_API_ERROR(503, "OMAS-ASSETCONSUMER-503-002 ",
-            "A client-side exception was received from API call {0} to repository {1}.  The error message was {2}",
-            "The server has issued a call to the open metadata access service REST API in a remote server and has received an exception from the local client libraries.",
-            "Look for errors in the local server's console to understand and correct the source of the error."),
-    SERVICE_NOT_INITIALIZED(503, "OMAS-ASSETCONSUMER-503-003 ",
-            "The access service has not been initialized and can not support REST API call {0}",
-            "The server has received a call to one of its open metadata access services but is unable to process it because the access service is not active.",
-            "If the server is supposed to have this access service activated, correct the server configuration and restart the server.")
-    ;
-
-
-    private int    httpErrorCode;
-    private String errorMessageId;
-    private String errorMessage;
-    private String systemAction;
-    private String userAction;
-
-    private static final Logger log = LoggerFactory.getLogger(AssetConsumerErrorCode.class);
-
-
-    /**
-     * The constructor for AssetConsumerErrorCode expects to be passed one of the enumeration rows defined in
-     * AssetConsumerErrorCode above.   For example:
-     *
-     *     AssetConsumerErrorCode   errorCode = AssetConsumerErrorCode.ASSET_NOT_FOUND;
-     *
-     * This will expand out to the 5 parameters shown below.
-     *
-     * @param newHTTPErrorCode - error code to use over REST calls
-     * @param newErrorMessageId - unique Id for the message
-     * @param newErrorMessage - text for the message
-     * @param newSystemAction - description of the action taken by the system when the error condition happened
-     * @param newUserAction - instructions for resolving the error
-     */
-    AssetConsumerErrorCode(int  newHTTPErrorCode, String newErrorMessageId, String newErrorMessage, String newSystemAction, String newUserAction)
-    {
-        this.httpErrorCode = newHTTPErrorCode;
-        this.errorMessageId = newErrorMessageId;
-        this.errorMessage = newErrorMessage;
-        this.systemAction = newSystemAction;
-        this.userAction = newUserAction;
-    }
-
-
-    public int getHTTPErrorCode()
-    {
-        return httpErrorCode;
-    }
-
-
-    /**
-     * Returns the unique identifier for the error message.
-     *
-     * @return errorMessageId
-     */
-    public String getErrorMessageId()
-    {
-        return errorMessageId;
-    }
-
-
-    /**
-     * Returns the error message with placeholders for specific details.
-     *
-     * @return errorMessage (unformatted)
-     */
-    public String getUnformattedErrorMessage()
-    {
-        return errorMessage;
-    }
-
-
-    /**
-     * Returns the error message with the placeholders filled out with the supplied parameters.
-     *
-     * @param params - strings that plug into the placeholders in the errorMessage
-     * @return errorMessage (formatted with supplied parameters)
-     */
-    public String getFormattedErrorMessage(String... params)
-    {
-        if (log.isDebugEnabled())
-        {
-            log.debug(String.format("<== OCFErrorCode.getMessage(%s)", Arrays.toString(params)));
-        }
-
-        MessageFormat mf = new MessageFormat(errorMessage);
-        String result = mf.format(params);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(String.format("==> OCFErrorCode.getMessage(%s): %s", Arrays.toString(params), result));
-        }
-
-        return result;
-    }
-
-
-    /**
-     * Returns a description of the action taken by the system when the condition that caused this exception was
-     * detected.
-     *
-     * @return systemAction
-     */
-    public String getSystemAction()
-    {
-        return systemAction;
-    }
-
-
-    /**
-     * Returns instructions of how to resolve the issue reported in this exception.
-     *
-     * @return userAction
-     */
-    public String getUserAction()
-    {
-        return userAction;
-    }
-}


[20/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSRepositoryConnector.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSRepositoryConnector.java b/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSRepositoryConnector.java
deleted file mode 100644
index 996ca27..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/repositoryconnector/EnterpriseOMRSRepositoryConnector.java
+++ /dev/null
@@ -1,473 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.enterprise.repositoryconnector;
-
-import org.apache.atlas.ocf.Connector;
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.omrs.auditlog.OMRSAuditCode;
-import org.apache.atlas.omrs.auditlog.OMRSAuditLog;
-import org.apache.atlas.omrs.auditlog.OMRSAuditingComponent;
-import org.apache.atlas.omrs.enterprise.connectormanager.OMRSConnectorConsumer;
-import org.apache.atlas.omrs.enterprise.connectormanager.OMRSConnectorManager;
-import org.apache.atlas.omrs.ffdc.exception.RepositoryErrorException;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollection;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceHeader;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.OMRSRuntimeException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-/**
- * EnterpriseOMRSRepositoryConnector supports federating calls to multiple metadata repositories.  As a result,
- * its OMRSMetadataCollection (EnterpriseOMRSMetadataCollection) returns metadata from all repositories in the
- * connected open metadata repository cohort(s).
- * <p>
- *     An instance of the EnterpriseOMRSRepositoryConnector is created by each Open Metadata Access Service (OMAS)
- *     using the OCF ConnectorBroker.  They use its metadata collection to retrieve and send the metadata they need.
- * </p>
- * <p>
- *     Each EnterpriseOMRSRepositoryConnector instance needs to maintain an up to date list of OMRS Connectors to all of the
- *     repositories in the connected open metadata repository cohort(s).  It does by registering as an OMRSConnectorConsumer
- *     with the OMRSConnectorManager to be notified when connectors to new open metadata repositories are available.
- * </p>
- */
-public class EnterpriseOMRSRepositoryConnector extends OMRSRepositoryConnector implements OMRSConnectorConsumer
-{
-    private OMRSConnectorManager             connectorManager                 = null;
-    private String                           connectorConsumerId              = null;
-
-    private FederatedConnector               localCohortConnector             = null;
-    private ArrayList<FederatedConnector>    remoteCohortConnectors           = new ArrayList<>();
-
-    private String                           accessServiceName                = null;
-
-    private static final Logger       log      = LoggerFactory.getLogger(EnterpriseOMRSRepositoryConnector.class);
-    private static final OMRSAuditLog auditLog = new OMRSAuditLog(OMRSAuditingComponent.ENTERPRISE_REPOSITORY_CONNECTOR);
-
-
-    /**
-     * Constructor used by the EnterpriseOMRSConnectorProvider.
-     *
-     * @param connectorManager - provides notifications as repositories register and unregister with the
-     *                         cohorts.
-     */
-    public EnterpriseOMRSRepositoryConnector(OMRSConnectorManager connectorManager)
-    {
-        super();
-
-        String   methodName = "constructor";
-
-        this.connectorManager = connectorManager;
-
-        if (connectorManager != null)
-        {
-            this.connectorConsumerId = connectorManager.registerConnectorConsumer(this);
-        }
-        else
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.INVALID_COHORT_CONFIG;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new OMRSRuntimeException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Set up the unique Id for this metadata collection.
-     *
-     * @param metadataCollectionId - String unique Id
-     */
-    public void setMetadataCollectionId(String     metadataCollectionId)
-    {
-        super.metadataCollectionId = metadataCollectionId;
-
-        if (metadataCollectionId != null)
-        {
-            super.metadataCollection = new EnterpriseOMRSMetadataCollection(this,
-                                                                            super.serverName,
-                                                                            repositoryHelper,
-                                                                            repositoryValidator,
-                                                                            metadataCollectionId);
-
-        }
-    }
-
-
-    /**
-     * Return the name of the access service using this connector.
-     *
-     * @return access service name
-     */
-    public String getAccessServiceName()
-    {
-        return accessServiceName;
-    }
-
-
-    /**
-     * Set up the name of the access service using this connector.
-     *
-     * @param accessServiceName - string name
-     */
-    public void setAccessServiceName(String accessServiceName)
-    {
-        this.accessServiceName = accessServiceName;
-    }
-
-
-    /**
-     * Indicates that the connector is completely configured and can begin processing.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public void start() throws ConnectorCheckedException
-    {
-        super.start();
-
-        final String actionDescription = "start";
-
-        OMRSAuditCode auditCode = OMRSAuditCode.STARTING_ENTERPRISE_CONNECTOR;
-        auditLog.logRecord(actionDescription,
-                           auditCode.getLogMessageId(),
-                           auditCode.getSeverity(),
-                           auditCode.getFormattedLogMessage(accessServiceName),
-                           null,
-                           auditCode.getSystemAction(),
-                           auditCode.getUserAction());
-    }
-
-
-    /**
-     * Free up any resources held since the connector is no longer needed.
-     *
-     * @throws ConnectorCheckedException - there is a problem disconnecting the connector.
-     */
-    public void disconnect() throws ConnectorCheckedException
-    {
-        super.disconnect();
-
-        final String actionDescription = "disconnect";
-
-        OMRSAuditCode auditCode = OMRSAuditCode.DISCONNECTING_ENTERPRISE_CONNECTOR;
-        auditLog.logRecord(actionDescription,
-                           auditCode.getLogMessageId(),
-                           auditCode.getSeverity(),
-                           auditCode.getFormattedLogMessage(accessServiceName),
-                           null,
-                           auditCode.getSystemAction(),
-                           auditCode.getUserAction());
-
-        if ((connectorManager != null) && (connectorConsumerId != null))
-        {
-            connectorManager.unregisterConnectorConsumer(connectorConsumerId);
-        }
-
-        localCohortConnector = null;
-        remoteCohortConnectors = new ArrayList<>();
-    }
-
-
-    /**
-     * Returns the connector to the repository where the supplied instance can be updated - ie its home repository.
-     *
-     * @param instance - instance to test
-     * @param methodName - name of method making the request (used for logging)
-     * @return repository connector
-     * @throws RepositoryErrorException - home metadata collection is null
-     */
-    protected OMRSRepositoryConnector  getHomeConnector(InstanceHeader      instance,
-                                                        String              methodName) throws RepositoryErrorException
-    {
-        this.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateHomeMetadataGUID(repositoryName, instance, methodName);
-
-        String  instanceMetadataCollectionId = instance.getMetadataCollectionId();
-
-        if (instanceMetadataCollectionId.equals(localCohortConnector.getMetadataCollectionId()))
-        {
-            return localCohortConnector.getConnector();
-        }
-
-        for (FederatedConnector   remoteCohortConnector : remoteCohortConnectors)
-        {
-            if (remoteCohortConnector != null)
-            {
-                if (instanceMetadataCollectionId.equals(remoteCohortConnector.getMetadataCollectionId()))
-                {
-                    return remoteCohortConnector.getConnector();
-                }
-            }
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Returns the list of repository connectors that the EnterpriseOMRSRepositoryConnector is federating queries across.
-     *
-     * This method is used by this connector's metadata collection object on each request it processes.  This
-     * means it always has the most up to date list of connectors to work with.
-     *
-     * @param methodName - name of method making the request (used for logging)
-     * @return OMRSRepositoryConnector List
-     * @throws RepositoryErrorException - the enterprise services are not available
-     */
-    protected List<OMRSRepositoryConnector> getCohortConnectors(String     methodName) throws RepositoryErrorException
-    {
-        this.validateRepositoryIsActive(methodName);
-
-        List<OMRSRepositoryConnector> cohortConnectors = new ArrayList<>();
-
-        /*
-         * Make sure the local connector is first.
-         */
-        if (localCohortConnector != null)
-        {
-            cohortConnectors.add(localCohortConnector.getConnector());
-        }
-
-        /*
-         * Now add the remote connectors.
-         */
-        for (FederatedConnector federatedConnector : remoteCohortConnectors)
-        {
-            cohortConnectors.add(federatedConnector.getConnector());
-        }
-
-        if (! cohortConnectors.isEmpty())
-        {
-            return cohortConnectors;
-        }
-        else
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NO_REPOSITORIES;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(accessServiceName);
-
-            throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction());
-        }
-
-    }
-
-
-    /**
-     * Save the connector to the local repository.  This is passed from the OMRSConnectorManager.
-     *
-     * @param metadataCollectionId - Unique identifier for the metadata collection.
-     * @param localConnector - OMRSRepositoryConnector object for the local repository.
-     */
-    public void setLocalConnector(String                  metadataCollectionId,
-                                  OMRSRepositoryConnector localConnector)
-    {
-        if (localConnector != null)
-        {
-            localCohortConnector = new FederatedConnector(metadataCollectionId, localConnector);
-        }
-        else
-        {
-            localCohortConnector = null;
-        }
-    }
-
-
-    /**
-     * Pass the connector to one of the remote repositories in the metadata repository cohort.
-     *
-     * @param metadataCollectionId - Unique identifier for the metadata collection.
-     * @param remoteConnector - OMRSRepositoryConnector object providing access to the remote repository.
-     */
-    public void addRemoteConnector(String                  metadataCollectionId,
-                                   OMRSRepositoryConnector remoteConnector)
-    {
-        if (remoteConnector != null)
-        {
-            remoteCohortConnectors.add(new FederatedConnector(metadataCollectionId, remoteConnector));
-        }
-    }
-
-
-    /**
-     * Pass the metadata collection id for a repository that has just left the metadata repository cohort.
-     *
-     * @param metadataCollectionId - identifier of the metadata collection that is no longer available.
-     */
-    public void removeRemoteConnector(String  metadataCollectionId)
-    {
-        Iterator<FederatedConnector> iterator = remoteCohortConnectors.iterator();
-
-        while(iterator.hasNext())
-        {
-            FederatedConnector registeredConnector = iterator.next();
-
-            if (registeredConnector.getMetadataCollectionId().equals(metadataCollectionId))
-            {
-                this.disconnectConnector(registeredConnector);
-                iterator.remove();
-            }
-        }
-    }
-
-
-    /**
-     * Call disconnect on all registered connectors and stop calling them.  The OMRS is about to shutdown.
-     */
-    public void disconnectAllConnectors()
-    {
-        try
-        {
-            super.disconnect();
-        }
-        catch (Throwable error)
-        {
-            /*
-             * Nothing to do
-             */
-        }
-
-        if (localCohortConnector != null)
-        {
-            this.disconnectConnector(localCohortConnector);
-        }
-
-        if (remoteCohortConnectors != null)
-        {
-            for (FederatedConnector remoteConnector : remoteCohortConnectors)
-            {
-                if (remoteConnector != null)
-                {
-                    this.disconnectConnector(remoteConnector);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * Issue a disconnect call on the supplied connector.
-     *
-     * @param federatedConnector - connector to disconnect.
-     */
-    private void disconnectConnector(FederatedConnector  federatedConnector)
-    {
-        Connector    connector = null;
-
-        if (federatedConnector != null)
-        {
-            connector = federatedConnector.getConnector();
-        }
-
-        if (connector != null)
-        {
-            try
-            {
-                connector.disconnect();
-            }
-            catch (Throwable  error)
-            {
-                log.error("Exception from disconnect of connector to metadata collection:" + federatedConnector.getMetadataCollectionId() + "  Error message was: " + error.getMessage());
-            }
-        }
-    }
-
-    /**
-     * FederatedConnector is a private class for storing details of each of the connectors to the repositories
-     * in the open metadata repository cohort.
-     */
-    private class FederatedConnector
-    {
-        private String                  metadataCollectionId = null;
-        private OMRSRepositoryConnector connector            = null;
-
-
-        /**
-         * Constructor to set up the details of a federated connector.
-         *
-         * @param metadataCollectionId - unique identifier for the metadata collection accessed through the connector
-         * @param connector - connector for the repository
-         */
-        public FederatedConnector(String metadataCollectionId, OMRSRepositoryConnector connector)
-        {
-            this.metadataCollectionId = metadataCollectionId;
-            this.connector = connector;
-        }
-
-
-        /**
-         * Return the identifier for the metadata collection accessed through the connector.
-         *
-         * @return String identifier
-         */
-        public String getMetadataCollectionId()
-        {
-            return metadataCollectionId;
-        }
-
-
-        /**
-         * Return the connector for the repository.
-         *
-         * @return OMRSRepositoryConnector object
-         */
-        public OMRSRepositoryConnector getConnector()
-        {
-            return connector;
-        }
-
-
-        /**
-         * Return the metadata collection associated with the connector.
-         *
-         * @return OMRSMetadataCollection object
-         */
-        public OMRSMetadataCollection getMetadataCollection()
-        {
-            if (connector != null)
-            {
-                try
-                {
-                    return connector.getMetadataCollection();
-                }
-                catch (Throwable   error)
-                {
-                    return null;
-                }
-            }
-
-            return null;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSEventListener.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSEventListener.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSEventListener.java
deleted file mode 100644
index 2c8de30..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSEventListener.java
+++ /dev/null
@@ -1,826 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement;
-
-import org.apache.atlas.omrs.auditlog.OMRSAuditCode;
-import org.apache.atlas.omrs.auditlog.OMRSAuditLog;
-import org.apache.atlas.omrs.auditlog.OMRSAuditingComponent;
-import org.apache.atlas.omrs.eventmanagement.events.*;
-import org.apache.atlas.omrs.eventmanagement.events.v1.OMRSEventV1;
-import org.apache.atlas.omrs.topicconnectors.OMRSTopicListener;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * <p>
- * The OMRSEventListener manages inbound events from the metadata repository cohort.  There are
- * two main groups of events: registration events that are handled by the OMRSCohortRegistry and metadata
- * events that describe changes to TypeDefs and metadata instances.  The metadata events are handled by the
- * local connector.
- * </p>
- * <p>
- * The role of the OMRSEventListener is to decide which events to process.  This is controlled by the
- * synchronization rule passed on the constructor.
- * </p>
- */
-public class OMRSEventListener implements OMRSTopicListener
-{
-    private String cohortName                = null;
-    private String localMetadataCollectionId = null;
-
-    /*
-     * There is an event processor for each category of event.  The OMRSEventListener passes appropriate events to these
-     * objects depending on the settings of its configuration.
-     */
-    private OMRSRegistryEventProcessor registryEventProcessor = null;
-    private OMRSTypeDefEventProcessor  typeDefEventProcessor  = null;
-    private OMRSInstanceEventProcessor instanceEventProcessor = null;
-
-    /*
-     * The audit log is used for recording events, decisions, errors and exceptions
-     */
-    private  OMRSAuditLog                           auditLog = new OMRSAuditLog(OMRSAuditingComponent.EVENT_LISTENER);
-
-
-    private static final Logger log = LoggerFactory.getLogger(OMRSEventListener.class);
-
-
-    /**
-     * Default Constructor - saves configuration parameters.
-     *
-     * @param cohortName - name of the cohort that this event listener belongs to
-     * @param localMetadataCollectionId - unique identifier for the local metadata collection
-     * @param registryEventProcessor - processor for registry events
-     * @param typeDefEventProcessor - processor for TypeDef synchronization events
-     * @param instanceEventProcessor - processor for metadata instance replication
-     */
-    public OMRSEventListener(String                                cohortName,
-                             String                                localMetadataCollectionId,
-                             OMRSRegistryEventProcessor            registryEventProcessor,
-                             OMRSTypeDefEventProcessor             typeDefEventProcessor,
-                             OMRSInstanceEventProcessor            instanceEventProcessor)
-    {
-        this.cohortName = cohortName;
-        this.localMetadataCollectionId = localMetadataCollectionId;
-        this.registryEventProcessor = registryEventProcessor;
-        this.typeDefEventProcessor  = typeDefEventProcessor;
-        this.instanceEventProcessor = instanceEventProcessor;
-    }
-
-
-    /**
-     * Process an incoming event.  This method is called by the OMRSTopicConnector.  The processing is careful of nulls
-     * and ignores an event that is incorrectly formatted.  The assumption is that the unformatted part of the message
-     * is an extension from a newer version of the protocol and can be ignored.
-     *
-     * @param event Version 1 of the OMRSEvent that defines the category and payload of the incoming event.
-     */
-    public void processEvent(OMRSEventV1 event)
-    {
-        String   actionDescription = "Process Incoming Event";
-
-        /*
-         * The event should not be null but worth checking.
-         */
-        if (event != null)
-        {
-            /*
-             *  If the event came from this server - then ignore it.
-             */
-            if ((localMetadataCollectionId != null) &&
-                    (localMetadataCollectionId.equals(event.getOriginator().getMetadataCollectionId())))
-            {
-                if (log.isDebugEnabled())
-                {
-                    log.debug("Ignoring event that this server originated");
-                }
-            }
-            else
-            {
-                /*
-                 * Determine the category of event to process.
-                 */
-                switch (event.getEventCategory())
-                {
-                    case REGISTRY:
-                        this.processRegistryEvent(new OMRSRegistryEvent(event));
-                        break;
-
-                    case TYPEDEF:
-                        this.processTypeDefEvent(new OMRSTypeDefEvent(event));
-                        break;
-
-                    case INSTANCE:
-                        this.processInstanceEvent(new OMRSInstanceEvent(event));
-                        break;
-
-                    default:
-                        /*
-                         * Nothing to do since this server does not understand the message type.  This situation
-                         * will occur if the local server is back level from another server in the cohort
-                         * and the more advanced server supports new types of messages,
-                         */
-                        OMRSAuditCode auditCode = OMRSAuditCode.PROCESS_UNKNOWN_EVENT;
-
-                        auditLog.logRecord(actionDescription,
-                                           auditCode.getLogMessageId(),
-                                           auditCode.getSeverity(),
-                                           auditCode.getFormattedLogMessage(),
-                                           "event {" + event.toString() + "}",
-                                           auditCode.getSystemAction(),
-                                           auditCode.getUserAction());
-
-                        if (log.isDebugEnabled())
-                        {
-                            log.debug("Unknown event received :|");
-                        }
-
-                }
-            }
-        }
-        else
-        {
-            /*
-             * A null event was passed - probably should not happen so log audit record.
-             */
-            OMRSAuditCode auditCode = OMRSAuditCode.NULL_OMRS_EVENT_RECEIVED;
-
-            auditLog.logRecord(actionDescription,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("Null OMRS Event received :(");
-            }
-        }
-    }
-
-
-    /**
-     * The event contains a registry event.  It needs to be further unpacked and passed to the appropriate
-     * registry event processor (OMRSCohortRegistry).
-     *
-     * @param registryEvent event to unpack
-     */
-    private void processRegistryEvent(OMRSRegistryEvent   registryEvent)
-    {
-        if (log.isDebugEnabled())
-        {
-            log.debug("Processing registry event", registryEvent);
-        }
-
-        if (registryEvent == null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Null registry event - ignoring event");
-            }
-        }
-        else if (registryEventProcessor == null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("No registry event processor - ignoring event ");
-            }
-        }
-        else /* process registry event */
-        {
-            OMRSRegistryEventType registryEventType       = registryEvent.getRegistryEventType();
-            OMRSEventOriginator   registryEventOriginator = registryEvent.getEventOriginator();
-
-            if ((registryEventType != null) && (registryEventOriginator != null))
-            {
-                switch (registryEventType)
-                {
-                    case REGISTRATION_EVENT:
-                        registryEventProcessor.processRegistrationEvent(cohortName,
-                                                                        registryEventOriginator.getMetadataCollectionId(),
-                                                                        registryEventOriginator.getServerName(),
-                                                                        registryEventOriginator.getServerType(),
-                                                                        registryEventOriginator.getOrganizationName(),
-                                                                        registryEvent.getRegistrationTimestamp(),
-                                                                        registryEvent.getRemoteConnection());
-                        break;
-
-                    case RE_REGISTRATION_EVENT:
-                        registryEventProcessor.processReRegistrationEvent(cohortName,
-                                                                          registryEventOriginator.getMetadataCollectionId(),
-                                                                          registryEventOriginator.getServerName(),
-                                                                          registryEventOriginator.getServerType(),
-                                                                          registryEventOriginator.getOrganizationName(),
-                                                                          registryEvent.getRegistrationTimestamp(),
-                                                                          registryEvent.getRemoteConnection());
-                        break;
-
-                    case REFRESH_REGISTRATION_REQUEST:
-                        registryEventProcessor.processRegistrationRefreshRequest(cohortName,
-                                                                                 registryEventOriginator.getServerName(),
-                                                                                 registryEventOriginator.getServerType(),
-                                                                                 registryEventOriginator.getOrganizationName());
-                        break;
-
-                    case UN_REGISTRATION_EVENT:
-                        registryEventProcessor.processUnRegistrationEvent(cohortName,
-                                                                          registryEventOriginator.getMetadataCollectionId(),
-                                                                          registryEventOriginator.getServerName(),
-                                                                          registryEventOriginator.getServerType(),
-                                                                          registryEventOriginator.getOrganizationName());
-                        break;
-
-                    case REGISTRATION_ERROR_EVENT:
-                        OMRSRegistryEventErrorCode errorCode = registryEvent.getErrorCode();
-
-                        if (errorCode != null)
-                        {
-                            switch(errorCode)
-                            {
-                                case BAD_REMOTE_CONNECTION:
-                                    registryEventProcessor.processBadConnectionEvent(cohortName,
-                                                                                     registryEventOriginator.getMetadataCollectionId(),
-                                                                                     registryEventOriginator.getServerName(),
-                                                                                     registryEventOriginator.getServerType(),
-                                                                                     registryEventOriginator.getOrganizationName(),
-                                                                                     registryEvent.getTargetMetadataCollectionId(),
-                                                                                     registryEvent.getTargetRemoteConnection(),
-                                                                                     registryEvent.getErrorMessage());
-                                    break;
-
-                                case CONFLICTING_COLLECTION_ID:
-                                    registryEventProcessor.processConflictingCollectionIdEvent(cohortName,
-                                                                                               registryEventOriginator.getMetadataCollectionId(),
-                                                                                               registryEventOriginator.getServerName(),
-                                                                                               registryEventOriginator.getServerType(),
-                                                                                               registryEventOriginator.getOrganizationName(),
-                                                                                               registryEvent.getTargetMetadataCollectionId(),
-                                                                                               registryEvent.getErrorMessage());
-                                    break;
-
-                                default:
-                                    if (log.isDebugEnabled())
-                                    {
-                                        log.debug("Unknown registry event error code - ignoring event");
-                                    }
-                                    break;
-                            }
-                        }
-                        else
-                        {
-                            if (log.isDebugEnabled())
-                            {
-                                log.debug("Null registry event error code - ignoring event");
-                            }
-                        }
-                        break;
-
-                    default:
-                        /*
-                         * New type of registry event that this server does not understand - ignore it
-                         */
-                        if (log.isDebugEnabled())
-                        {
-                            log.debug("Unknown registry event: " + registryEvent.toString());
-                        }
-                        break;
-                }
-            }
-            else
-            {
-                if (log.isDebugEnabled())
-                {
-                    log.debug("Ignored registry event: " + registryEvent.toString());
-                }
-            }
-        }
-    }
-
-
-    /**
-     * Unpack and deliver a TypeDef event to the TypeDefEventProcessor
-     *
-     * @param typeDefEvent - event to unpack
-     */
-    private void processTypeDefEvent(OMRSTypeDefEvent   typeDefEvent)
-    {
-        if (typeDefEvent == null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Null TypeDef event - ignoring event");
-            }
-        }
-        else if (typeDefEventProcessor == null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("No TypeDef event processor - ignoring event");
-            }
-        }
-        else
-        {
-            OMRSTypeDefEventType  typeDefEventType       = typeDefEvent.getTypeDefEventType();
-            OMRSEventOriginator   typeDefEventOriginator = typeDefEvent.getEventOriginator();
-
-            if ((typeDefEventType != null) && (typeDefEventOriginator != null))
-            {
-                switch (typeDefEventType)
-                {
-                    case NEW_TYPEDEF_EVENT:
-                        typeDefEventProcessor.processNewTypeDefEvent(cohortName,
-                                                                     typeDefEventOriginator.getMetadataCollectionId(),
-                                                                     typeDefEventOriginator.getServerName(),
-                                                                     typeDefEventOriginator.getServerType(),
-                                                                     typeDefEventOriginator.getOrganizationName(),
-                                                                     typeDefEvent.getTypeDef());
-                        break;
-
-                    case NEW_ATTRIBUTE_TYPEDEF_EVENT:
-                        typeDefEventProcessor.processNewAttributeTypeDefEvent(cohortName,
-                                                                              typeDefEventOriginator.getMetadataCollectionId(),
-                                                                              typeDefEventOriginator.getServerName(),
-                                                                              typeDefEventOriginator.getServerType(),
-                                                                              typeDefEventOriginator.getOrganizationName(),
-                                                                              typeDefEvent.getAttributeTypeDef());
-                        break;
-
-                    case UPDATED_TYPEDEF_EVENT:
-                        typeDefEventProcessor.processUpdatedTypeDefEvent(cohortName,
-                                                                         typeDefEventOriginator.getMetadataCollectionId(),
-                                                                         typeDefEventOriginator.getServerName(),
-                                                                         typeDefEventOriginator.getServerType(),
-                                                                         typeDefEventOriginator.getOrganizationName(),
-                                                                         typeDefEvent.getTypeDefPatch());
-                        break;
-
-                    case DELETED_TYPEDEF_EVENT:
-                        typeDefEventProcessor.processDeletedTypeDefEvent(cohortName,
-                                                                         typeDefEventOriginator.getMetadataCollectionId(),
-                                                                         typeDefEventOriginator.getServerName(),
-                                                                         typeDefEventOriginator.getServerType(),
-                                                                         typeDefEventOriginator.getOrganizationName(),
-                                                                         typeDefEvent.getTypeDefGUID(),
-                                                                         typeDefEvent.getTypeDefName());
-                        break;
-
-                    case DELETED_ATTRIBUTE_TYPEDEF_EVENT:
-                        typeDefEventProcessor.processDeletedAttributeTypeDefEvent(cohortName,
-                                                                                  typeDefEventOriginator.getMetadataCollectionId(),
-                                                                                  typeDefEventOriginator.getServerName(),
-                                                                                  typeDefEventOriginator.getServerType(),
-                                                                                  typeDefEventOriginator.getOrganizationName(),
-                                                                                  typeDefEvent.getTypeDefGUID(),
-                                                                                  typeDefEvent.getTypeDefName());
-                        break;
-
-                    case RE_IDENTIFIED_TYPEDEF_EVENT:
-                        typeDefEventProcessor.processReIdentifiedTypeDefEvent(cohortName,
-                                                                              typeDefEventOriginator.getMetadataCollectionId(),
-                                                                              typeDefEventOriginator.getServerName(),
-                                                                              typeDefEventOriginator.getServerType(),
-                                                                              typeDefEventOriginator.getOrganizationName(),
-                                                                              typeDefEvent.getOriginalTypeDefSummary(),
-                                                                              typeDefEvent.getTypeDef());
-                        break;
-
-                    case RE_IDENTIFIED_ATTRIBUTE_TYPEDEF_EVENT:
-                        typeDefEventProcessor.processReIdentifiedAttributeTypeDefEvent(cohortName,
-                                                                                       typeDefEventOriginator.getMetadataCollectionId(),
-                                                                                       typeDefEventOriginator.getServerName(),
-                                                                                       typeDefEventOriginator.getServerType(),
-                                                                                       typeDefEventOriginator.getOrganizationName(),
-                                                                                       typeDefEvent.getOriginalAttributeTypeDef(),
-                                                                                       typeDefEvent.getAttributeTypeDef());
-
-                    case TYPEDEF_ERROR_EVENT:
-                        OMRSTypeDefEventErrorCode errorCode = typeDefEvent.getErrorCode();
-
-                        if (errorCode != null)
-                        {
-                            switch(errorCode)
-                            {
-                                case CONFLICTING_TYPEDEFS:
-                                    typeDefEventProcessor.processTypeDefConflictEvent(cohortName,
-                                                                                      typeDefEventOriginator.getMetadataCollectionId(),
-                                                                                      typeDefEventOriginator.getServerName(),
-                                                                                      typeDefEventOriginator.getServerType(),
-                                                                                      typeDefEventOriginator.getOrganizationName(),
-                                                                                      typeDefEvent.getOriginalTypeDefSummary(),
-                                                                                      typeDefEvent.getOtherMetadataCollectionId(),
-                                                                                      typeDefEvent.getOtherTypeDefSummary(),
-                                                                                      typeDefEvent.getErrorMessage());
-                                    break;
-
-                                case CONFLICTING_ATTRIBUTE_TYPEDEFS:
-                                    typeDefEventProcessor.processAttributeTypeDefConflictEvent(cohortName,
-                                                                                               typeDefEventOriginator.getMetadataCollectionId(),
-                                                                                               typeDefEventOriginator.getServerName(),
-                                                                                               typeDefEventOriginator.getServerType(),
-                                                                                               typeDefEventOriginator.getOrganizationName(),
-                                                                                               typeDefEvent.getOriginalAttributeTypeDef(),
-                                                                                               typeDefEvent.getOtherMetadataCollectionId(),
-                                                                                               typeDefEvent.getOtherAttributeTypeDef(),
-                                                                                               typeDefEvent.getErrorMessage());
-
-                                case TYPEDEF_PATCH_MISMATCH:
-                                    typeDefEventProcessor.processTypeDefPatchMismatchEvent(cohortName,
-                                                                                           typeDefEventOriginator.getMetadataCollectionId(),
-                                                                                           typeDefEventOriginator.getServerName(),
-                                                                                           typeDefEventOriginator.getServerType(),
-                                                                                           typeDefEventOriginator.getOrganizationName(),
-                                                                                           typeDefEvent.getTargetMetadataCollectionId(),
-                                                                                           typeDefEvent.getTargetTypeDefSummary(),
-                                                                                           typeDefEvent.getOtherTypeDef(),
-                                                                                           typeDefEvent.getErrorMessage());
-                                    break;
-
-                                default:
-                                    if (log.isDebugEnabled())
-                                    {
-                                        log.debug("Unknown TypeDef event error code - ignoring event");
-                                    }
-                                    break;
-                            }
-                        }
-                        else
-                        {
-                            if (log.isDebugEnabled())
-                            {
-                                log.debug("Ignored TypeDef event - null error code");
-                            }
-                        }
-                        break;
-
-                    default:
-                        if (log.isDebugEnabled())
-                        {
-                            log.debug("Ignored TypeDef event - unknown type");
-                        }
-                        break;
-                }
-            }
-        }
-    }
-
-
-    /**
-     * Unpack and deliver an instance event to the InstanceEventProcessor
-     *
-     * @param instanceEvent - event to unpack
-     */
-    private void processInstanceEvent(OMRSInstanceEvent  instanceEvent)
-    {
-        if (log.isDebugEnabled())
-        {
-            log.debug("Processing instance event", instanceEvent);
-        }
-
-        if (instanceEvent == null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Null instance event - ignoring event");
-            }
-        }
-        else
-        {
-            OMRSInstanceEventType instanceEventType       = instanceEvent.getInstanceEventType();
-            OMRSEventOriginator   instanceEventOriginator = instanceEvent.getEventOriginator();
-
-            if ((instanceEventType != null) && (instanceEventOriginator != null))
-            {
-                switch (instanceEventType)
-                {
-                    case NEW_ENTITY_EVENT:
-                        instanceEventProcessor.processNewEntityEvent(cohortName,
-                                                                     instanceEventOriginator.getMetadataCollectionId(),
-                                                                     instanceEventOriginator.getServerName(),
-                                                                     instanceEventOriginator.getServerType(),
-                                                                     instanceEventOriginator.getOrganizationName(),
-                                                                     instanceEvent.getEntity());
-                        break;
-
-                    case UPDATED_ENTITY_EVENT:
-                        instanceEventProcessor.processUpdatedEntityEvent(cohortName,
-                                                                         instanceEventOriginator.getMetadataCollectionId(),
-                                                                         instanceEventOriginator.getServerName(),
-                                                                         instanceEventOriginator.getServerType(),
-                                                                         instanceEventOriginator.getOrganizationName(),
-                                                                         instanceEvent.getEntity());
-                        break;
-
-                    case CLASSIFIED_ENTITY_EVENT:
-                        instanceEventProcessor.processClassifiedEntityEvent(cohortName,
-                                                                            instanceEventOriginator.getMetadataCollectionId(),
-                                                                            instanceEventOriginator.getServerName(),
-                                                                            instanceEventOriginator.getServerType(),
-                                                                            instanceEventOriginator.getOrganizationName(),
-                                                                            instanceEvent.getEntity());
-                        break;
-
-                    case RECLASSIFIED_ENTITY_EVENT:
-                        instanceEventProcessor.processReclassifiedEntityEvent(cohortName,
-                                                                              instanceEventOriginator.getMetadataCollectionId(),
-                                                                              instanceEventOriginator.getServerName(),
-                                                                              instanceEventOriginator.getServerType(),
-                                                                              instanceEventOriginator.getOrganizationName(),
-                                                                              instanceEvent.getEntity());
-                        break;
-
-                    case DECLASSIFIED_ENTITY_EVENT:
-                        instanceEventProcessor.processDeclassifiedEntityEvent(cohortName,
-                                                                              instanceEventOriginator.getMetadataCollectionId(),
-                                                                              instanceEventOriginator.getServerName(),
-                                                                              instanceEventOriginator.getServerType(),
-                                                                              instanceEventOriginator.getOrganizationName(),
-                                                                              instanceEvent.getEntity());
-                        break;
-
-                    case DELETED_ENTITY_EVENT:
-                        instanceEventProcessor.processDeletedEntityEvent(cohortName,
-                                                                         instanceEventOriginator.getMetadataCollectionId(),
-                                                                         instanceEventOriginator.getServerName(),
-                                                                         instanceEventOriginator.getServerType(),
-                                                                         instanceEventOriginator.getOrganizationName(),
-                                                                         instanceEvent.getEntity());
-                        break;
-
-                    case PURGED_ENTITY_EVENT:
-                        instanceEventProcessor.processPurgedEntityEvent(cohortName,
-                                                                        instanceEventOriginator.getMetadataCollectionId(),
-                                                                        instanceEventOriginator.getServerName(),
-                                                                        instanceEventOriginator.getServerType(),
-                                                                        instanceEventOriginator.getOrganizationName(),
-                                                                        instanceEvent.getTypeDefGUID(),
-                                                                        instanceEvent.getTypeDefName(),
-                                                                        instanceEvent.getInstanceGUID());
-                        break;
-
-                    case UNDONE_ENTITY_EVENT:
-                        instanceEventProcessor.processUndoneEntityEvent(cohortName,
-                                                                        instanceEventOriginator.getMetadataCollectionId(),
-                                                                        instanceEventOriginator.getServerName(),
-                                                                        instanceEventOriginator.getServerType(),
-                                                                        instanceEventOriginator.getOrganizationName(),
-                                                                        instanceEvent.getEntity());
-                        break;
-
-                    case RESTORED_ENTITY_EVENT:
-                        instanceEventProcessor.processRestoredEntityEvent(cohortName,
-                                                                          instanceEventOriginator.getMetadataCollectionId(),
-                                                                          instanceEventOriginator.getServerName(),
-                                                                          instanceEventOriginator.getServerType(),
-                                                                          instanceEventOriginator.getOrganizationName(),
-                                                                          instanceEvent.getEntity());
-                        break;
-
-                    case REFRESH_ENTITY_REQUEST:
-                        instanceEventProcessor.processRefreshEntityRequested(cohortName,
-                                                                             instanceEventOriginator.getMetadataCollectionId(),
-                                                                             instanceEventOriginator.getServerName(),
-                                                                             instanceEventOriginator.getServerType(),
-                                                                             instanceEventOriginator.getOrganizationName(),
-                                                                             instanceEvent.getTypeDefGUID(),
-                                                                             instanceEvent.getTypeDefName(),
-                                                                             instanceEvent.getInstanceGUID(),
-                                                                             instanceEvent.getHomeMetadataCollectionId());
-                        break;
-
-                    case REFRESHED_ENTITY_EVENT:
-                        instanceEventProcessor.processRefreshEntityEvent(cohortName,
-                                                                         instanceEventOriginator.getMetadataCollectionId(),
-                                                                         instanceEventOriginator.getServerName(),
-                                                                         instanceEventOriginator.getServerType(),
-                                                                         instanceEventOriginator.getOrganizationName(),
-                                                                         instanceEvent.getEntity());
-                        break;
-
-                    case RE_HOMED_ENTITY_EVENT:
-                        instanceEventProcessor.processReHomedEntityEvent(cohortName,
-                                                                         instanceEventOriginator.getMetadataCollectionId(),
-                                                                         instanceEventOriginator.getServerName(),
-                                                                         instanceEventOriginator.getServerType(),
-                                                                         instanceEventOriginator.getOrganizationName(),
-                                                                         instanceEvent.getOriginalHomeMetadataCollectionId(),
-                                                                         instanceEvent.getEntity());
-                        break;
-
-                    case RETYPED_ENTITY_EVENT:
-                        instanceEventProcessor.processReTypedEntityEvent(cohortName,
-                                                                         instanceEventOriginator.getMetadataCollectionId(),
-                                                                         instanceEventOriginator.getServerName(),
-                                                                         instanceEventOriginator.getServerType(),
-                                                                         instanceEventOriginator.getOrganizationName(),
-                                                                         instanceEvent.getOriginalTypeDefSummary(),
-                                                                         instanceEvent.getEntity());
-                        break;
-
-                    case RE_IDENTIFIED_ENTITY_EVENT:
-                        instanceEventProcessor.processReIdentifiedEntityEvent(cohortName,
-                                                                              instanceEventOriginator.getMetadataCollectionId(),
-                                                                              instanceEventOriginator.getServerName(),
-                                                                              instanceEventOriginator.getServerType(),
-                                                                              instanceEventOriginator.getOrganizationName(),
-                                                                              instanceEvent.getOriginalInstanceGUID(),
-                                                                              instanceEvent.getEntity());
-                        break;
-
-                    case NEW_RELATIONSHIP_EVENT:
-                        instanceEventProcessor.processNewRelationshipEvent(cohortName,
-                                                                           instanceEventOriginator.getMetadataCollectionId(),
-                                                                           instanceEventOriginator.getServerName(),
-                                                                           instanceEventOriginator.getServerType(),
-                                                                           instanceEventOriginator.getOrganizationName(),
-                                                                           instanceEvent.getRelationship());
-                        break;
-
-                    case UPDATED_RELATIONSHIP_EVENT:
-                        instanceEventProcessor.processUpdatedRelationshipEvent(cohortName,
-                                                                               instanceEventOriginator.getMetadataCollectionId(),
-                                                                               instanceEventOriginator.getServerName(),
-                                                                               instanceEventOriginator.getServerType(),
-                                                                               instanceEventOriginator.getOrganizationName(),
-                                                                               instanceEvent.getRelationship());
-                        break;
-
-                    case UNDONE_RELATIONSHIP_EVENT:
-                        instanceEventProcessor.processUndoneRelationshipEvent(cohortName,
-                                                                              instanceEventOriginator.getMetadataCollectionId(),
-                                                                              instanceEventOriginator.getServerName(),
-                                                                              instanceEventOriginator.getServerType(),
-                                                                              instanceEventOriginator.getOrganizationName(),
-                                                                              instanceEvent.getRelationship());
-                        break;
-
-                    case DELETED_RELATIONSHIP_EVENT:
-                        instanceEventProcessor.processDeletedRelationshipEvent(cohortName,
-                                                                               instanceEventOriginator.getMetadataCollectionId(),
-                                                                               instanceEventOriginator.getServerName(),
-                                                                               instanceEventOriginator.getServerType(),
-                                                                               instanceEventOriginator.getOrganizationName(),
-                                                                               instanceEvent.getRelationship());
-                        break;
-
-                    case PURGED_RELATIONSHIP_EVENT:
-                        instanceEventProcessor.processPurgedEntityEvent(cohortName,
-                                                                        instanceEventOriginator.getMetadataCollectionId(),
-                                                                        instanceEventOriginator.getServerName(),
-                                                                        instanceEventOriginator.getServerType(),
-                                                                        instanceEventOriginator.getOrganizationName(),
-                                                                        instanceEvent.getTypeDefGUID(),
-                                                                        instanceEvent.getTypeDefName(),
-                                                                        instanceEvent.getInstanceGUID());
-                        break;
-
-                    case RESTORED_RELATIONSHIP_EVENT:
-                        instanceEventProcessor.processRestoredRelationshipEvent(cohortName,
-                                                                                instanceEventOriginator.getMetadataCollectionId(),
-                                                                                instanceEventOriginator.getServerName(),
-                                                                                instanceEventOriginator.getServerType(),
-                                                                                instanceEventOriginator.getOrganizationName(),
-                                                                                instanceEvent.getRelationship());
-                        break;
-
-                    case REFRESH_RELATIONSHIP_REQUEST:
-                        instanceEventProcessor.processRefreshRelationshipRequest(cohortName,
-                                                                                 instanceEventOriginator.getMetadataCollectionId(),
-                                                                                 instanceEventOriginator.getServerName(),
-                                                                                 instanceEventOriginator.getServerType(),
-                                                                                 instanceEventOriginator.getOrganizationName(),
-                                                                                 instanceEvent.getTypeDefGUID(),
-                                                                                 instanceEvent.getTypeDefName(),
-                                                                                 instanceEvent.getInstanceGUID(),
-                                                                                 instanceEvent.getHomeMetadataCollectionId());
-                        break;
-
-                    case REFRESHED_RELATIONSHIP_EVENT:
-                        instanceEventProcessor.processRefreshRelationshipEvent(cohortName,
-                                                                               instanceEventOriginator.getMetadataCollectionId(),
-                                                                               instanceEventOriginator.getServerName(),
-                                                                               instanceEventOriginator.getServerType(),
-                                                                               instanceEventOriginator.getOrganizationName(),
-                                                                               instanceEvent.getRelationship());
-                        break;
-
-                    case RE_IDENTIFIED_RELATIONSHIP_EVENT:
-                        instanceEventProcessor.processReIdentifiedRelationshipEvent(cohortName,
-                                                                                    instanceEventOriginator.getMetadataCollectionId(),
-                                                                                    instanceEventOriginator.getServerName(),
-                                                                                    instanceEventOriginator.getServerType(),
-                                                                                    instanceEventOriginator.getOrganizationName(),
-                                                                                    instanceEvent.getOriginalInstanceGUID(),
-                                                                                    instanceEvent.getRelationship());
-                        break;
-
-                    case RE_HOMED_RELATIONSHIP_EVENT:
-                        instanceEventProcessor.processReHomedRelationshipEvent(cohortName,
-                                                                               instanceEventOriginator.getMetadataCollectionId(),
-                                                                               instanceEventOriginator.getServerName(),
-                                                                               instanceEventOriginator.getServerType(),
-                                                                               instanceEventOriginator.getOrganizationName(),
-                                                                               instanceEvent.getOriginalHomeMetadataCollectionId(),
-                                                                               instanceEvent.getRelationship());
-                        break;
-
-                    case RETYPED_RELATIONSHIP_EVENT:
-                        instanceEventProcessor.processReTypedRelationshipEvent(cohortName,
-                                                                               instanceEventOriginator.getMetadataCollectionId(),
-                                                                               instanceEventOriginator.getServerName(),
-                                                                               instanceEventOriginator.getServerType(),
-                                                                               instanceEventOriginator.getOrganizationName(),
-                                                                               instanceEvent.getOriginalTypeDefSummary(),
-                                                                               instanceEvent.getRelationship());
-                        break;
-
-                    case INSTANCE_ERROR_EVENT:
-                        OMRSInstanceEventErrorCode errorCode = instanceEvent.getErrorCode();
-
-                        if (errorCode != null)
-                        {
-                            switch(errorCode)
-                            {
-                                case CONFLICTING_INSTANCES:
-                                    instanceEventProcessor.processConflictingInstancesEvent(cohortName,
-                                                                                            instanceEventOriginator.getMetadataCollectionId(),
-                                                                                            instanceEventOriginator.getServerName(),
-                                                                                            instanceEventOriginator.getServerType(),
-                                                                                            instanceEventOriginator.getOrganizationName(),
-                                                                                            instanceEvent.getTargetMetadataCollectionId(),
-                                                                                            instanceEvent.getTargetTypeDefSummary(),
-                                                                                            instanceEvent.getTargetInstanceGUID(),
-                                                                                            instanceEvent.getOtherMetadataCollectionId(),
-                                                                                            instanceEvent.getOtherOrigin(),
-                                                                                            instanceEvent.getOtherTypeDefSummary(),
-                                                                                            instanceEvent.getOtherInstanceGUID(),
-                                                                                            instanceEvent.getErrorMessage());
-                                    break;
-
-                                case CONFLICTING_TYPE:
-                                    instanceEventProcessor.processConflictingTypeEvent(cohortName,
-                                                                                       instanceEventOriginator.getMetadataCollectionId(),
-                                                                                       instanceEventOriginator.getServerName(),
-                                                                                       instanceEventOriginator.getServerType(),
-                                                                                       instanceEventOriginator.getOrganizationName(),
-                                                                                       instanceEvent.getTargetMetadataCollectionId(),
-                                                                                       instanceEvent.getTargetTypeDefSummary(),
-                                                                                       instanceEvent.getTargetInstanceGUID(),
-                                                                                       instanceEvent.getOtherTypeDefSummary(),
-                                                                                       instanceEvent.getErrorMessage());
-                                    break;
-
-                                default:
-                                    if (log.isDebugEnabled())
-                                    {
-                                        log.debug("Unknown instance event error code - ignoring event");
-                                    }
-                                    break;
-                            }
-                        }
-                        else
-                        {
-                            if (log.isDebugEnabled())
-                            {
-                                log.debug("Ignored Instance event - null error code");
-                            }
-                        }
-                        break;
-
-                    default:
-                        if (log.isDebugEnabled())
-                        {
-                            log.debug("Ignored Instance event - unknown type");
-                        }
-                        break;
-                }
-            }
-            else
-            {
-                if (log.isDebugEnabled())
-                {
-                    log.debug("Ignored instance event - null type");
-                }
-            }
-        }
-    }
-}
-
-
-


[26/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveHelper.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveHelper.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveHelper.java
deleted file mode 100644
index 7994b08..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveHelper.java
+++ /dev/null
@@ -1,619 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.archivemanager;
-
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceStatus;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.*;
-
-import java.util.ArrayList;
-import java.util.Date;
-
-/**
- * OMRSArchiveHelper provides utility methods to help in the construction of open metadata archives.
- */
-public class OMRSArchiveHelper
-{
-    private   OMRSArchiveBuilder    archiveBuilder;
-    private   String                archiveGUID;
-    private   String                originatorName;
-    private   Date                  creationDate;
-    private   long                  versionNumber;
-    private   String                versionName;
-
-
-    /**
-     * Constructor receives information about the archive being built.
-     *
-     * @param archiveBuilder - archive builder with the archive contents in it.
-     * @param archiveGUID - unique identifier for the archive.
-     * @param originatorName - name of the person / process creating the archive.
-     * @param creationDate - date that the archive was first built.
-     * @param versionNumber - version number of the archive.
-     * @param versionName - version name for the archive.
-     */
-    public OMRSArchiveHelper(OMRSArchiveBuilder     archiveBuilder,
-                             String                 archiveGUID,
-                             String                 originatorName,
-                             Date                   creationDate,
-                             long                   versionNumber,
-                             String                 versionName)
-    {
-        this.archiveBuilder = archiveBuilder;
-        this.archiveGUID = archiveGUID;
-        this.originatorName = originatorName;
-        this.creationDate = creationDate;
-        this.versionNumber = versionNumber;
-        this.versionName = versionName;
-    }
-
-
-    /**
-     * Set up an individual primitive definition
-     *
-     * @param primitiveDefCategory - category of the primitive def defines the unique
-     *                             information about this primitive type.
-     * @return initialized PrimitiveDef object ready for the archive
-     */
-    public PrimitiveDef getPrimitiveDef(PrimitiveDefCategory primitiveDefCategory)
-    {
-        PrimitiveDef  primitiveDef = new PrimitiveDef(primitiveDefCategory);
-
-        primitiveDef.setGUID(primitiveDefCategory.getGUID());
-        primitiveDef.setName(primitiveDefCategory.getName());
-        primitiveDef.setVersion(versionNumber);
-        primitiveDef.setVersionName(versionName);
-
-        return primitiveDef;
-    }
-
-
-    /**
-     * Create a CollectionDef for an Array.  A new CollectionDef is required for each combination of primitive types
-     * used to initialize the collection.  Each CollectionDef has its own unique identifier (guid) and
-     * its name is a combination of the collection type and the primitives use to initialize it.
-     *
-     * @param guid - unique identifier for the CollectionDef
-     * @param description - short default description of the enum type
-     * @param descriptionGUID - guid of the glossary term describing this collection type
-     * @param arrayType - type of the array.
-     * @return Filled out CollectionDef
-     */
-    public CollectionDef getArrayCollectionDef(String                guid,
-                                               String                description,
-                                               String                descriptionGUID,
-                                               PrimitiveDefCategory  arrayType)
-    {
-        CollectionDef   collectionDef = new CollectionDef(CollectionDefCategory.OM_COLLECTION_ARRAY);
-
-        collectionDef.setGUID(guid);
-        collectionDef.setName("array<" + arrayType.getName() + ">");
-        collectionDef.setDescription(description);
-        collectionDef.setDescriptionGUID(descriptionGUID);
-
-        ArrayList<PrimitiveDefCategory> argumentList = new ArrayList<>();
-        argumentList.add(arrayType);
-        collectionDef.setArgumentTypes(argumentList);
-
-        return collectionDef;
-    }
-
-
-    /**
-     * Create a CollectionDef for a map.  A new CollectionDef is required for each combination of primitive types
-     * used to initialize the collection.  Each CollectionDef has its own unique identifier (guid) and
-     * its name is a combination of the collection type and the primitives use to initialize it.
-     *
-     * @param guid - unique identifier for the CollectionDef
-     * @param description - short default description of the enum type
-     * @param descriptionGUID - guid of the glossary term describing this collection type
-     * @param propertyKeyType - type of the key for the map.
-     * @param propertyValueType  - type of map value.
-     * @return Filled out CollectionDef
-     */
-    public CollectionDef getMapCollectionDef(String                guid,
-                                             String                description,
-                                             String                descriptionGUID,
-                                             PrimitiveDefCategory  propertyKeyType,
-                                             PrimitiveDefCategory  propertyValueType)
-    {
-        CollectionDef   collectionDef = new CollectionDef(CollectionDefCategory.OM_COLLECTION_MAP);
-
-        collectionDef.setGUID(guid);
-        collectionDef.setName("map<" + propertyKeyType.getName() + "," + propertyValueType.getName() + ">");
-        collectionDef.setDescription(description);
-        collectionDef.setDescriptionGUID(descriptionGUID);
-        collectionDef.setVersion(versionNumber);
-        collectionDef.setVersionName(versionName);
-
-        ArrayList<PrimitiveDefCategory> argumentList = new ArrayList<>();
-        argumentList.add(propertyKeyType);
-        argumentList.add(propertyValueType);
-        collectionDef.setArgumentTypes(argumentList);
-
-        return collectionDef;
-    }
-
-
-    /**
-     * Create an EnumDef that has no valid values defined.  These are added by the caller.
-     *
-     * @param guid - unique identifier for the CollectionDef
-     * @param name - unique name for the CollectionDef
-     * @param description - short default description of the enum type
-     * @param descriptionGUID - guid of the glossary term describing this enum type
-     * @return basic EnumDef without valid values
-     */
-    public EnumDef getEmptyEnumDef(String                guid,
-                                   String                name,
-                                   String                description,
-                                   String                descriptionGUID)
-    {
-        EnumDef  enumDef = new EnumDef();
-
-        enumDef.setGUID(guid);
-        enumDef.setName(name);
-        enumDef.setDescription(description);
-        enumDef.setDescriptionGUID(descriptionGUID);
-        enumDef.setDefaultValue(null);
-        enumDef.setVersion(versionNumber);
-        enumDef.setVersionName(versionName);
-
-        return enumDef;
-    }
-
-
-    /**
-     * Create an EnumElementDef that carries one of the valid values for an Enum.
-     *
-     * @param ordinal - code number
-     * @param value - name
-     * @param description - short description
-     * @param descriptionGUID - guid of the glossary term describing this enum element
-     * @return Fully filled out EnumElementDef
-     */
-    public EnumElementDef  getEnumElementDef(int     ordinal,
-                                             String  value,
-                                             String  description,
-                                             String  descriptionGUID)
-    {
-        EnumElementDef   enumElementDef = new EnumElementDef();
-
-        enumElementDef.setOrdinal(ordinal);
-        enumElementDef.setValue(value);
-        enumElementDef.setDescription(description);
-        enumElementDef.setDescriptionGUID(descriptionGUID);
-
-        return enumElementDef;
-    }
-
-
-    /**
-     * Sets up a default EntityDef.  Calling methods can override the default values.  This EntityDef
-     * has no attribute defined.
-     *
-     * @param guid - unique identifier for the entity
-     * @param name - name of the entity
-     * @param superType - Super type for this entity (null for top-level)
-     * @param description - short description of the entity
-     * @param descriptionGUID - guid of the glossary term describing this entity type
-     * @return Initialized EntityDef
-     */
-    public EntityDef  getDefaultEntityDef(String                  guid,
-                                          String                  name,
-                                          TypeDefLink             superType,
-                                          String                  description,
-                                          String                  descriptionGUID)
-    {
-        EntityDef entityDef = new EntityDef();
-
-        /*
-         * Set up the parameters supplied by the caller.
-         */
-        entityDef.setGUID(guid);
-        entityDef.setName(name);
-        entityDef.setSuperType(superType);
-        entityDef.setDescription(description);
-        entityDef.setDescriptionGUID(descriptionGUID);
-
-        /*
-         * Set up the defaults
-         */
-        entityDef.setOrigin(archiveGUID);
-        entityDef.setCreatedBy(originatorName);
-        entityDef.setCreateTime(creationDate);
-        entityDef.setVersion(versionNumber);
-        entityDef.setVersionName(versionName);
-
-        /*
-         * Set default valid instance statuses
-         */
-        ArrayList<InstanceStatus> validInstanceStatusList = new ArrayList<>();
-        validInstanceStatusList.add(InstanceStatus.ACTIVE);
-        validInstanceStatusList.add(InstanceStatus.DELETED);
-        entityDef.setValidInstanceStatusList(validInstanceStatusList);
-
-        return entityDef;
-    }
-
-
-    /**
-     * Return an attribute with the supplied name and description that is of type String.  It is set up to be optional,
-     * indexable (useful for searches) but the value does not need to be unique.
-     * These are the typical values used for most open metadata attribute.
-     * They can be changed by the caller once the TypeDefAttribute is returned.
-     *
-     * @param attributeName - name of the attribute
-     * @param attributeDescription - short description for the attribute
-     * @param attributeDescriptionGUID - guid of the glossary term that describes this attribute.
-     * @return  TypeDefAttribute of type string
-     */
-    public TypeDefAttribute  getStringTypeDefAttribute(String      attributeName,
-                                                       String      attributeDescription,
-                                                       String      attributeDescriptionGUID)
-    {
-        TypeDefAttribute     attribute = new TypeDefAttribute();
-
-        attribute.setAttributeName(attributeName);
-        attribute.setAttributeDescription(attributeDescription);
-        attribute.setAttributeDescriptionGUID(attributeDescriptionGUID);
-        attribute.setAttributeType(this.archiveBuilder.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_STRING.getName()));
-        attribute.setAttributeCardinality(AttributeCardinality.AT_MOST_ONE);
-        attribute.setValuesMinCount(0);
-        attribute.setValuesMaxCount(1);
-        attribute.setIndexable(true);
-        attribute.setUnique(false);
-        attribute.setDefaultValue(null);
-        attribute.setExternalStandardMappings(null);
-
-        return attribute;
-    }
-
-
-    /**
-     * Return an attribute with the supplied name and description that is of type int.  It is set up to be optional,
-     * indexable (useful for searches) but the value does not need to be unique.
-     * These are the typical values used for most open metadata attribute.
-     * They can be changed by the caller once the TypeDefAttribute is returned.
-     *
-     * @param attributeName - name of the attribute
-     * @param attributeDescription - short description for the attribute
-     * @param attributeDescriptionGUID - guid of the glossary term that describes this attribute.
-     * @return  TypeDefAttribute of type string
-     */
-    public TypeDefAttribute  getIntTypeDefAttribute(String      attributeName,
-                                                    String      attributeDescription,
-                                                    String      attributeDescriptionGUID)
-    {
-        TypeDefAttribute     attribute = new TypeDefAttribute();
-
-        attribute.setAttributeName(attributeName);
-        attribute.setAttributeDescription(attributeDescription);
-        attribute.setAttributeDescriptionGUID(attributeDescriptionGUID);
-        attribute.setAttributeType(this.archiveBuilder.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_INT.getName()));
-        attribute.setAttributeCardinality(AttributeCardinality.AT_MOST_ONE);
-        attribute.setValuesMinCount(0);
-        attribute.setValuesMaxCount(1);
-        attribute.setIndexable(true);
-        attribute.setUnique(false);
-        attribute.setDefaultValue(null);
-        attribute.setExternalStandardMappings(null);
-
-        return attribute;
-    }
-
-
-    /**
-     * Return an attribute with the supplied name and description that is of type date.  It is set up to be optional,
-     * indexable (useful for searches) but the value does not need to be unique.
-     * These are the typical values used for most open metadata attribute.
-     * They can be changed by the caller once the TypeDefAttribute is returned.
-     *
-     * @param attributeName - name of the attribute
-     * @param attributeDescription - short description for the attribute
-     * @param attributeDescriptionGUID - guid of the glossary term that describes this attribute.
-     * @return  TypeDefAttribute of type string
-     */
-    public TypeDefAttribute  getDateTypeDefAttribute(String      attributeName,
-                                                     String      attributeDescription,
-                                                     String      attributeDescriptionGUID)
-    {
-        TypeDefAttribute     attribute = new TypeDefAttribute();
-
-        attribute.setAttributeName(attributeName);
-        attribute.setAttributeDescription(attributeDescription);
-        attribute.setAttributeDescriptionGUID(attributeDescriptionGUID);
-        attribute.setAttributeType(this.archiveBuilder.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_DATE.getName()));
-        attribute.setAttributeCardinality(AttributeCardinality.AT_MOST_ONE);
-        attribute.setValuesMinCount(0);
-        attribute.setValuesMaxCount(1);
-        attribute.setIndexable(true);
-        attribute.setUnique(false);
-        attribute.setDefaultValue(null);
-        attribute.setExternalStandardMappings(null);
-
-        return attribute;
-    }
-
-
-    /**
-     * Return an attribute with the supplied name and description that is an array of strings.
-     * It is set up to be optional,
-     * indexable (useful for searches) but the value does not need to be unique.
-     * These are the typical values used for most open metadata attribute.
-     * They can be changed by the caller once the TypeDefAttribute is returned.
-     *
-     * @param attributeName - name of the attribute
-     * @param attributeDescription - short description for the attribute
-     * @param attributeDescriptionGUID - guid of the glossary term that describes this attribute.
-     * @return  TypeDefAttribute of type string
-     */
-    public TypeDefAttribute  getArrayStringTypeDefAttribute(String      attributeName,
-                                                            String      attributeDescription,
-                                                            String      attributeDescriptionGUID)
-    {
-        TypeDefAttribute     attribute = new TypeDefAttribute();
-
-        attribute.setAttributeName(attributeName);
-        attribute.setAttributeDescription(attributeDescription);
-        attribute.setAttributeDescriptionGUID(attributeDescriptionGUID);
-        attribute.setAttributeType(this.archiveBuilder.getCollectionDef("array<string>"));
-        attribute.setAttributeCardinality(AttributeCardinality.AT_MOST_ONE);
-        attribute.setValuesMinCount(0);
-        attribute.setValuesMaxCount(1);
-        attribute.setIndexable(true);
-        attribute.setUnique(false);
-        attribute.setDefaultValue(null);
-        attribute.setExternalStandardMappings(null);
-
-        return attribute;
-    }
-
-
-    /**
-     * Return an attribute with the supplied name and description that is of a map from string to string.
-     * It is set up to be optional,
-     * indexable (useful for searches) but the value does not need to be unique.
-     * These are the typical values used for most open metadata attribute.
-     * They can be changed by the caller once the TypeDefAttribute is returned.
-     *
-     * @param attributeName - name of the attribute
-     * @param attributeDescription - short description for the attribute
-     * @param attributeDescriptionGUID - guid of the glossary term that describes this attribute.
-     * @return  TypeDefAttribute of type string
-     */
-    public TypeDefAttribute  getMapStringStringTypeDefAttribute(String      attributeName,
-                                                                String      attributeDescription,
-                                                                String      attributeDescriptionGUID)
-    {
-        TypeDefAttribute     attribute = new TypeDefAttribute();
-
-        attribute.setAttributeName(attributeName);
-        attribute.setAttributeDescription(attributeDescription);
-        attribute.setAttributeDescriptionGUID(attributeDescriptionGUID);
-        attribute.setAttributeType(this.archiveBuilder.getCollectionDef("map<string,string>"));
-        attribute.setAttributeCardinality(AttributeCardinality.AT_MOST_ONE);
-        attribute.setValuesMinCount(0);
-        attribute.setValuesMaxCount(1);
-        attribute.setIndexable(true);
-        attribute.setUnique(false);
-        attribute.setDefaultValue(null);
-        attribute.setExternalStandardMappings(null);
-
-        return attribute;
-    }
-
-
-    /**
-     * Return an attribute with the supplied name, type and description.  It is set up to be optional,
-     * indexable (useful for searches) but the value does not need to be unique.
-     * These are the typical values used for most open metadata attribute.
-     * They can be changed by the caller once the TypeDefAttribute is returned.
-     *
-     * @param enumTypeName - name of the enum type for this attribute
-     * @param attributeName - name of the attribute
-     * @param attributeDescription - short description for the attribute
-     * @param attributeDescriptionGUID - guid of the glossary term that describes this attribute.
-     * @return  TypeDefAttribute of type string
-     */
-    public TypeDefAttribute  getEnumTypeDefAttribute(String     enumTypeName,
-                                                     String     attributeName,
-                                                     String     attributeDescription,
-                                                     String     attributeDescriptionGUID)
-    {
-        TypeDefAttribute     attribute = new TypeDefAttribute();
-
-        attribute.setAttributeName(attributeName);
-        attribute.setAttributeDescription(attributeDescription);
-        attribute.setAttributeDescriptionGUID(attributeDescriptionGUID);
-        attribute.setAttributeType(this.archiveBuilder.getEnumDef(enumTypeName));
-        attribute.setAttributeCardinality(AttributeCardinality.AT_MOST_ONE);
-        attribute.setValuesMinCount(0);
-        attribute.setValuesMaxCount(1);
-        attribute.setIndexable(true);
-        attribute.setUnique(false);
-        attribute.setDefaultValue(null);
-        attribute.setExternalStandardMappings(null);
-
-        return attribute;
-    }
-
-
-    /**
-     * Returns a basic RelationshipDef without any attributes or ends set up.
-     * The caller is responsible for adding the attributes and ends definition.
-     *
-     * @param guid - unique identifier for the relationship
-     * @param name - name of the relationship
-     * @param superType - Super type for this relationship (null for top-level)
-     * @param description - short default description of the relationship
-     * @param descriptionGUID - guid of the glossary term that describes this relationship
-     * @param relationshipCategory - is this an association, aggregation or composition?
-     * @param propagationRule - should classifications propagate over this relationship?
-     * @return RelationshipDef with no ends defined.
-     */
-    public RelationshipDef getBasicRelationshipDef(String                        guid,
-                                                   String                        name,
-                                                   TypeDefLink                   superType,
-                                                   String                        description,
-                                                   String                        descriptionGUID,
-                                                   RelationshipCategory          relationshipCategory,
-                                                   ClassificationPropagationRule propagationRule)
-    {
-        RelationshipDef relationshipDef = new RelationshipDef();
-
-        /*
-         * Set up the parameters supplied by the caller.
-         */
-        relationshipDef.setGUID(guid);
-        relationshipDef.setName(name);
-        relationshipDef.setSuperType(superType);
-        relationshipDef.setDescription(description);
-        relationshipDef.setDescriptionGUID(descriptionGUID);
-
-        /*
-         * Set up the defaults
-         */
-        relationshipDef.setOrigin(archiveGUID);
-        relationshipDef.setCreatedBy(originatorName);
-        relationshipDef.setCreateTime(creationDate);
-        relationshipDef.setVersion(versionNumber);
-        relationshipDef.setVersionName(versionName);
-
-        /*
-         * Set default valid instance statuses
-         */
-        ArrayList<InstanceStatus>    validInstanceStatusList  = new ArrayList<>();
-        validInstanceStatusList.add(InstanceStatus.ACTIVE);
-        validInstanceStatusList.add(InstanceStatus.DELETED);
-        relationshipDef.setValidInstanceStatusList(validInstanceStatusList);
-
-        /*
-         * Set up the category of relationship
-         */
-        relationshipDef.setRelationshipCategory(relationshipCategory);
-
-        if ((relationshipCategory == RelationshipCategory.AGGREGATION) ||
-                (relationshipCategory == RelationshipCategory.COMPOSITION))
-        {
-            /*
-             * By convention, end 1 is the container end in the open metadata model.
-             */
-            relationshipDef.setRelationshipContainerEnd(RelationshipContainerEnd.END1);
-        }
-        else
-        {
-            relationshipDef.setRelationshipContainerEnd(RelationshipContainerEnd.NOT_APPLICABLE);
-        }
-
-        /*
-         * Use the supplied propagation rule.
-         */
-        relationshipDef.setPropagationRule(propagationRule);
-
-        return relationshipDef;
-    }
-
-
-    /**
-     * Returns a RelationshipEndDef object that sets up details of an entity at one end of a relationship.
-     *
-     * @param entityType - details of the type of entity connected to this end.
-     * @param attributeName - name of the attribute that the entity at the other end uses to refer to this entity.
-     * @param attributeDescription - description of this attribute
-     * @param attributeDescriptionGUID - unique identifier of the glossary term describing this attribute.
-     * @param attributeCardinality - cardinality of this end of the relationship.
-     * @return the definition of one end of a Relationship.
-     */
-    public RelationshipEndDef  getRelationshipEndDef(TypeDefLink          entityType,
-                                                     String               attributeName,
-                                                     String               attributeDescription,
-                                                     String               attributeDescriptionGUID,
-                                                     AttributeCardinality attributeCardinality)
-    {
-        RelationshipEndDef  relationshipEndDef = new RelationshipEndDef();
-
-        relationshipEndDef.setEntityType(entityType);
-        relationshipEndDef.setAttributeName(attributeName);
-        relationshipEndDef.setAttributeDescription(attributeDescription);
-        relationshipEndDef.setAttributeDescriptionGUID(attributeDescriptionGUID);
-        relationshipEndDef.setAttributeCardinality(attributeCardinality);
-
-        return relationshipEndDef;
-    }
-
-
-    /**
-     * Returns a basic ClassificationDef without any attributes.   The caller is responsible for adding the
-     * attribute definitions.
-     *
-     * @param guid - unique identifier for the classification
-     * @param name - name of the classification
-     * @param superType - Super type for this classification (null for top-level)
-     * @param description - short description of the classification
-     * @param descriptionGUID - unique identifier of the glossary term that describes this classification.
-     * @param validEntityDef - which entities can this classification be linked to.
-     * @param propagatable - can the classification propagate over relationships?
-     * @return ClassificationDef with no attributes defined.
-     */
-    public ClassificationDef getClassificationDef(String                        guid,
-                                                  String                        name,
-                                                  TypeDefLink                   superType,
-                                                  String                        description,
-                                                  String                        descriptionGUID,
-                                                  TypeDefLink                   validEntityDef,
-                                                  boolean                       propagatable)
-    {
-        ClassificationDef classificationDef = new ClassificationDef();
-
-        /*
-         * Set up the parameters supplied by the caller.
-         */
-        classificationDef.setGUID(guid);
-        classificationDef.setName(name);
-        classificationDef.setSuperType(superType);
-        classificationDef.setDescription(description);
-        classificationDef.setDescriptionGUID(descriptionGUID);
-
-        /*
-         * Set up the defaults
-         */
-        classificationDef.setOrigin(archiveGUID);
-        classificationDef.setCreatedBy(originatorName);
-        classificationDef.setCreateTime(creationDate);
-        classificationDef.setVersion(versionNumber);
-        classificationDef.setVersionName(versionName);
-
-        /*
-         * Set default valid instance statuses
-         */
-        ArrayList<InstanceStatus>    validInstanceStatusList  = new ArrayList<>();
-        validInstanceStatusList.add(InstanceStatus.ACTIVE);
-        validInstanceStatusList.add(InstanceStatus.DELETED);
-        classificationDef.setValidInstanceStatusList(validInstanceStatusList);
-
-        /*
-         * Set up the supplied validEntityTypes and propagatable flag.
-         */
-        ArrayList<TypeDefLink>   validEntityDefs = new ArrayList<>();
-        validEntityDefs.add(validEntityDef);
-        classificationDef.setValidEntityDefs(validEntityDefs);
-        classificationDef.setPropagatable(propagatable);
-
-        return classificationDef;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveManager.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveManager.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveManager.java
deleted file mode 100644
index c640928..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveManager.java
+++ /dev/null
@@ -1,433 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.archivemanager;
-
-import org.apache.atlas.omrs.archivemanager.opentypes.OpenMetadataTypesArchive;
-import org.apache.atlas.omrs.archivemanager.properties.OpenMetadataArchive;
-import org.apache.atlas.omrs.archivemanager.properties.OpenMetadataArchiveInstanceStore;
-import org.apache.atlas.omrs.archivemanager.properties.OpenMetadataArchiveProperties;
-import org.apache.atlas.omrs.archivemanager.properties.OpenMetadataArchiveTypeStore;
-import org.apache.atlas.omrs.archivemanager.store.OpenMetadataArchiveStoreConnector;
-import org.apache.atlas.omrs.auditlog.OMRSAuditCode;
-import org.apache.atlas.omrs.auditlog.OMRSAuditLog;
-import org.apache.atlas.omrs.auditlog.OMRSAuditingComponent;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSInstanceEventProcessor;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSTypeDefEventProcessor;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryContentManager;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityDetail;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.Relationship;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.AttributeTypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefPatch;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * OMRSArchiveManager manages the loading and unloading of open metadata archives from the local OMRS repository.
- * An open metadata archive provides pre-built definitions for types and metadata instances.
- */
-public class OMRSArchiveManager
-{
-    private List<OpenMetadataArchiveStoreConnector>      openMetadataArchiveStores   = new ArrayList<>();
-    private OMRSRepositoryContentManager                 repositoryContentManager    = null;
-    private OMRSInstanceEventProcessor                   localInstanceEventProcessor = null;
-
-
-    /*
-     * The audit log provides a verifiable record of the open metadata archives that have been loaded into
-     * the open metadata repository.  The Logger is for standard debug.
-     */
-    private static final OMRSAuditLog auditLog = new OMRSAuditLog(OMRSAuditingComponent.ARCHIVE_MANAGER);
-
-    /**
-     * Constructor to save the initial list of open metadata archives from the server startup configuration.
-     * These will be processed as soon as the event processors are supplied from the local repository.
-     *
-     * @param startUpOpenMetadataArchives - initial list of open metadata archives provided in startup configuration
-     */
-    public OMRSArchiveManager(List<OpenMetadataArchiveStoreConnector>    startUpOpenMetadataArchives)
-    {
-        if (startUpOpenMetadataArchives != null)
-        {
-            this.openMetadataArchiveStores = new ArrayList<>(startUpOpenMetadataArchives);
-        }
-    }
-
-
-    /**
-     * Close down any open archives.
-     */
-    public void close()
-    {
-        for (OpenMetadataArchiveStoreConnector archiveStore : openMetadataArchiveStores)
-        {
-            if (archiveStore != null)
-            {
-                try
-                {
-                    archiveStore.disconnect();
-                }
-                catch (Throwable error)
-                {
-                    /*
-                     * nothing to do
-                     */
-                }
-            }
-        }
-    }
-
-
-    /**
-     * The local repository is accessed through its inbound event processors.  A server will always have
-     * the local Content Manager and TypeDef Processor but the local Instance Processor is only available
-     * if the local server has a metadata repository defined.
-     *
-     * @param repositoryContentManager - typeDef processor for the local repository
-     * @param instanceProcessor - instance processor for the local repository
-     */
-    public void setLocalRepository(OMRSRepositoryContentManager repositoryContentManager,
-                                   OMRSInstanceEventProcessor   instanceProcessor)
-    {
-        this.repositoryContentManager = repositoryContentManager;
-        this.localInstanceEventProcessor = instanceProcessor;
-
-        /*
-         * The repository content manager is seeded with all of the open metadata types.
-         */
-        processOpenMetadataTypes();
-
-        /*
-         * Once the open metadata types are in place, the archive stores are processed.
-         */
-        for (OpenMetadataArchiveStoreConnector archiveStore : this.openMetadataArchiveStores)
-        {
-            processOpenMetadataArchiveStore(archiveStore, repositoryContentManager, instanceProcessor);
-        }
-    }
-
-
-    /**
-     * Add a new archive to the local repository. If there are problems processing the archive, an exception is thrown.
-     * This method allows archives to be loaded into a running server.
-     *
-     * @param archiveStore - new open metadata archive to process
-     */
-    public void addOpenMetadataArchive(OpenMetadataArchiveStoreConnector     archiveStore)
-    {
-        this.processOpenMetadataArchiveStore(archiveStore, repositoryContentManager, localInstanceEventProcessor);
-        this.openMetadataArchiveStores.add(archiveStore);
-    }
-
-
-    /**
-     * Unpack and process the contents an open metadata archive store, passing its contents to the local
-     * repository (if it exists).
-     */
-    private void processOpenMetadataTypes()
-    {
-        OpenMetadataTypesArchive    openMetadataTypesArchive = new OpenMetadataTypesArchive();
-        OpenMetadataArchive         openMetadataTypes        = openMetadataTypesArchive.getOpenMetadataArchive();
-
-        repositoryContentManager.setOpenMetadataTypesOriginGUID(openMetadataTypesArchive.getArchiveGUID());
-        processOpenMetadataArchive(openMetadataTypes, repositoryContentManager, localInstanceEventProcessor);
-    }
-
-    /**
-     * Unpack and process the contents an open metadata archive store, passing its contents to the local
-     * repository (if it exists).
-     *
-     * @param archiveStore - open metadata archive store to process
-     */
-    private void processOpenMetadataArchiveStore(OpenMetadataArchiveStoreConnector    archiveStore,
-                                                 OMRSTypeDefEventProcessor            typeDefProcessor,
-                                                 OMRSInstanceEventProcessor           instanceProcessor)
-    {
-        if (archiveStore != null)
-        {
-            /*
-             * Each archive store has a header, a section of new type definitions (TypeDefs) and a section of
-             * metadata instances.
-             */
-            OpenMetadataArchive archiveContent = archiveStore.getArchiveContents();
-
-            if (archiveContent == null)
-            {
-                final String     actionDescription = "Process Open Metadata Archive";
-
-                OMRSAuditCode auditCode = OMRSAuditCode.EMPTY_ARCHIVE;
-                auditLog.logRecord(actionDescription,
-                                   auditCode.getLogMessageId(),
-                                   auditCode.getSeverity(),
-                                   auditCode.getFormattedLogMessage(),
-                                   null,
-                                   auditCode.getSystemAction(),
-                                   auditCode.getUserAction());
-            }
-            else
-            {
-                processOpenMetadataArchive(archiveContent, typeDefProcessor, instanceProcessor);
-            }
-        }
-    }
-
-
-    /**
-     * Step through the content of an open metadata archive, passing its contents to the local repository (if it
-     * exists).
-     *
-     * @param archiveContent - open metadata archive to process
-     */
-    private void processOpenMetadataArchive(OpenMetadataArchive          archiveContent,
-                                            OMRSTypeDefEventProcessor    typeDefProcessor,
-                                            OMRSInstanceEventProcessor   instanceProcessor)
-    {
-        OMRSAuditCode    auditCode;
-        final String     actionDescription = "Process Open Metadata Archive";
-
-        OpenMetadataArchiveProperties    archiveProperties    = archiveContent.getArchiveProperties();
-
-        if (archiveProperties != null)
-        {
-            auditCode = OMRSAuditCode.PROCESSING_ARCHIVE;
-            auditLog.logRecord(actionDescription,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(archiveProperties.getArchiveName()),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-
-
-            OpenMetadataArchiveTypeStore     archiveTypeStore     = archiveContent.getArchiveTypeStore();
-            OpenMetadataArchiveInstanceStore archiveInstanceStore = archiveContent.getArchiveInstanceStore();
-
-            int                              typeCount            = 0;
-            int                              instanceCount        = 0;
-
-
-            if (archiveTypeStore != null)
-            {
-                typeCount = this.processTypeDefStore(archiveProperties, archiveTypeStore, typeDefProcessor);
-            }
-
-            if (archiveInstanceStore != null)
-            {
-                instanceCount = this.processInstanceStore(archiveProperties, archiveInstanceStore, instanceProcessor);
-            }
-
-            auditCode = OMRSAuditCode.COMPLETED_ARCHIVE;
-            auditLog.logRecord(actionDescription,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(Integer.toString(typeCount),
-                                                                Integer.toString(instanceCount),
-                                                                archiveProperties.getArchiveName()),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-        }
-        else
-        {
-            auditCode = OMRSAuditCode.NULL_PROPERTIES_IN_ARCHIVE;
-            auditLog.logRecord(actionDescription,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * The TypeStore is in two parts.  First there is an optional list of patches to existing TypeDefs.
-     * Then an optional list of new TypeDefs.  It is possible that this archive has been processed before
-     * and so any duplicates detected are ignored.  However, conflicting TypeDefs are detected.
-     * Any problems found in applying the archive contents are recorded on the audit log.
-     *
-     * @param archiveProperties - properties of the archive used for logging
-     * @param archiveTypeStore - TypeStore from the archive
-     * @return type count
-     */
-    private int  processTypeDefStore(OpenMetadataArchiveProperties    archiveProperties,
-                                     OpenMetadataArchiveTypeStore     archiveTypeStore,
-                                     OMRSTypeDefEventProcessor        typeDefProcessor)
-    {
-        List<TypeDefPatch>     typeDefPatches       = archiveTypeStore.getTypeDefPatches();
-        List<AttributeTypeDef> newAttributeTypeDefs = archiveTypeStore.getAttributeTypeDefs();
-        List<TypeDef>          newTypeDefs          = archiveTypeStore.getNewTypeDefs();
-        int                    typeCount            = 0;
-
-        if (typeDefProcessor != null)
-        {
-            String       sourceName = OMRSAuditingComponent.ARCHIVE_MANAGER.getComponentName();
-            String       originatorMetadataCollectionId = archiveProperties.getArchiveGUID();
-            String       originatorServerName = archiveProperties.getArchiveName();
-            String       originatorServerType = null;
-            String       originatorName = archiveProperties.getOriginatorName();
-            String       originatorOrganizationName = archiveProperties.getOriginatorOrganization();
-
-            /*
-             * Originator name can not be null since it is used as the userId for calls to the repository
-             */
-            if (originatorName == null)
-            {
-                originatorName = sourceName;
-            }
-
-            if (archiveProperties.getArchiveType() != null)
-            {
-                originatorServerType = archiveProperties.getArchiveType().getArchiveTypeName();
-            }
-
-            if (typeDefPatches != null)
-            {
-                for (TypeDefPatch typeDefPatch : typeDefPatches)
-                {
-                    if (typeDefPatch != null)
-                    {
-                        typeDefProcessor.processUpdatedTypeDefEvent(originatorName,
-                                                                    originatorMetadataCollectionId,
-                                                                    originatorServerName,
-                                                                    originatorServerType,
-                                                                    originatorOrganizationName,
-                                                                    typeDefPatch);
-                        typeCount ++;
-                    }
-                }
-            }
-
-            if (newAttributeTypeDefs != null)
-            {
-                for (AttributeTypeDef newAttributeTypeDef : newAttributeTypeDefs)
-                {
-                    if (newAttributeTypeDef != null)
-                    {
-                        typeDefProcessor.processNewAttributeTypeDefEvent(originatorName,
-                                                                originatorMetadataCollectionId,
-                                                                originatorServerName,
-                                                                originatorServerType,
-                                                                originatorOrganizationName,
-                                                                newAttributeTypeDef);
-
-                        typeCount ++;
-                    }
-                }
-            }
-
-            if (newTypeDefs != null)
-            {
-                for (TypeDef newTypeDef : newTypeDefs)
-                {
-                    if (newTypeDef != null)
-                    {
-                        typeDefProcessor.processNewTypeDefEvent(originatorName,
-                                                                originatorMetadataCollectionId,
-                                                                originatorServerName,
-                                                                originatorServerType,
-                                                                originatorOrganizationName,
-                                                                newTypeDef);
-                        typeCount ++;
-                    }
-                }
-            }
-        }
-
-        return typeCount;
-    }
-
-
-    /**
-     * The InstanceStore is in two parts - an optional list of entities followed by an optional list
-     * of relationships.  It is possible that this archive has been processed before
-     * and so any duplicates detected are ignored.  However, conflicting instances are detected.
-     * Any problems found in applying the archive contents are recorded on the audit log.
-     *
-     * @param archiveProperties - properties describing the archive used in logging
-     * @param archiveInstanceStore - the instance store to process
-     * @param instanceProcessor - the processor to add the instances to the local repository.  It may be null
-     *                          if there is no local repository configured for this server.
-     * @return instance count
-     */
-    private int  processInstanceStore(OpenMetadataArchiveProperties    archiveProperties,
-                                      OpenMetadataArchiveInstanceStore archiveInstanceStore,
-                                      OMRSInstanceEventProcessor       instanceProcessor)
-    {
-        List<EntityDetail>    entities = archiveInstanceStore.getEntities();
-        List<Relationship>    relationships = archiveInstanceStore.getRelationships();
-        int                   instanceCount = 0;
-
-        if (instanceProcessor != null)
-        {
-            String       sourceName = OMRSAuditingComponent.ARCHIVE_MANAGER.getComponentName();
-            String       originatorMetadataCollectionId = archiveProperties.getArchiveGUID();
-            String       originatorServerName = archiveProperties.getArchiveName();
-            String       originatorServerType = null;
-            String       originatorOrganizationName = archiveProperties.getOriginatorName();
-
-            if (archiveProperties.getArchiveType() != null)
-            {
-                originatorServerType = archiveProperties.getArchiveType().getArchiveTypeName();
-            }
-
-            if (entities != null)
-            {
-                for (EntityDetail entity : entities)
-                {
-                    if (entity != null)
-                    {
-                        instanceProcessor.processNewEntityEvent(sourceName,
-                                                                originatorMetadataCollectionId,
-                                                                originatorServerName,
-                                                                originatorServerType,
-                                                                originatorOrganizationName,
-                                                                entity);
-
-                        instanceCount ++;
-                    }
-                }
-            }
-
-
-            if (relationships != null)
-            {
-                for (Relationship relationship : relationships)
-                {
-                    if (relationship != null)
-                    {
-                        instanceProcessor.processNewRelationshipEvent(sourceName,
-                                                                      originatorMetadataCollectionId,
-                                                                      originatorServerName,
-                                                                      originatorServerType,
-                                                                      originatorOrganizationName,
-                                                                      relationship);
-
-                        instanceCount ++;
-                    }
-                }
-            }
-        }
-
-        return instanceCount;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveWriter.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveWriter.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveWriter.java
deleted file mode 100644
index ea9fbfe..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/OMRSArchiveWriter.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.archivemanager;
-
-
-import org.apache.atlas.ocf.Connector;
-import org.apache.atlas.ocf.ConnectorBroker;
-import org.apache.atlas.ocf.properties.Connection;
-import org.apache.atlas.omrs.admin.OMRSConfigurationFactory;
-import org.apache.atlas.omrs.archivemanager.opentypes.OpenMetadataTypesArchive;
-import org.apache.atlas.omrs.archivemanager.properties.OpenMetadataArchive;
-import org.apache.atlas.omrs.archivemanager.store.OpenMetadataArchiveStore;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * OMRSArchiveWriter creates physical open metadata archive files for the supplied open metadata archives
- * encoded in OMRS.
- */
-public class OMRSArchiveWriter
-{
-    private static final Logger log = LoggerFactory.getLogger(OMRSArchiveWriter.class);
-
-    /**
-     * Default constructor
-     */
-    public OMRSArchiveWriter()
-    {
-    }
-
-
-    /**
-     * Opens up an open metadata archive store connector.
-     *
-     * @param connection - connection information for the open metadata archive.
-     * @return open metadata archive store connector
-     */
-    private OpenMetadataArchiveStore getOpenMetadataArchive(Connection   connection)
-    {
-        OpenMetadataArchiveStore  openMetadataArchiveStore = null;
-
-        try
-        {
-            ConnectorBroker connectorBroker = new ConnectorBroker();
-            Connector       connector       = connectorBroker.getConnector(connection);
-
-            openMetadataArchiveStore = (OpenMetadataArchiveStore)connector;
-
-            log.debug("Created connector to open metadata archive store");
-
-        }
-        catch (Throwable   error)
-        {
-            log.error("Unexpected exception occurred: " + error.getMessage());
-            log.error("Exception: " + error.toString());
-        }
-
-        return openMetadataArchiveStore;
-    }
-
-
-    /**
-     * Generates and writes out an open metadata archive containing all of the open metadata types.
-     */
-    private void writeOpenMetadataArchiveTypes()
-    {
-        OMRSConfigurationFactory  configurationFactory     = new OMRSConfigurationFactory();
-        Connection                connection               = configurationFactory.getOpenMetadataTypesConnection();
-
-        OpenMetadataArchiveStore  openMetadataArchiveStore = this.getOpenMetadataArchive(connection);
-        OpenMetadataTypesArchive  openMetadataTypesArchive = new OpenMetadataTypesArchive();
-        OpenMetadataArchive       openMetadataArchive      = openMetadataTypesArchive.getOpenMetadataArchive();
-
-        openMetadataArchiveStore.setArchiveContents(openMetadataArchive);
-    }
-
-
-    /**
-     * Main program to control the archive writer.
-     *
-     * @param args - ignored arguments
-     */
-    public static void main(String[] args)
-    {
-        OMRSArchiveWriter  archiveWriter = new OMRSArchiveWriter();
-
-        archiveWriter.writeOpenMetadataArchiveTypes();
-
-        /*
-         * Calls to create other standard archives will go here.
-         */
-    }
-}


[32/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaElement.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaElement.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaElement.java
deleted file mode 100644
index f85d55e..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaElement.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * <p>
- *     The SchemaElement object provides a base class for the pieces that make up a schema for a data asset.
- *     A schema provides information about how the data is structured in the asset.  Schemas are typically
- *     described as nested structures of linked schema elements.  Schemas can also be reused in other schemas.
- * </p>
- *     SchemaElement is an abstract class - used to enable the most accurate and precise mapping of the
- *     elements in a schema to the asset.
- *     <ul>
- *         <li>PrimitiveSchemaElement is for a leaf element in a schema.</li>
- *         <li>Schema is a complex structure of nested schema elements.</li>
- *         <li>MapSchemaElement is for an attribute of type Map</li>
- *     </ul>
- *     Most assets will be linked to a Schema.
- * <p>
- *     Schema elements can be linked to one another using SchemaLink.
- * </p>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public abstract class SchemaElement extends Referenceable
-{
-    private String              versionNumber = null;
-    private String              author = null;
-    private String              usage = null;
-    private String              encodingStandard = null;
-
-
-    /**
-     * Default constructor
-     */
-    public SchemaElement()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone Constructor - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the definitions clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param templateSchema - template object to copy.
-     */
-    public SchemaElement(SchemaElement templateSchema)
-    {
-        super(templateSchema);
-
-        if (templateSchema != null)
-        {
-            versionNumber = templateSchema.getVersionNumber();
-            author = templateSchema.getAuthor();
-            usage = templateSchema.getUsage();
-            encodingStandard = templateSchema.getEncodingStandard();
-        }
-    }
-
-
-    /**
-     * Return a clone of the this schema element.  This method is needed because schema element
-     * is abstract.
-     *
-     * @return Either a Schema or a PrimitiveSchemaElement depending on the type of the template.
-     */
-    public abstract SchemaElement   cloneSchemaElement();
-
-
-    /**
-     * Return the version number of the schema element - null means no version number.
-     *
-     * @return String version number
-     */
-    public String getVersionNumber() { return versionNumber; }
-
-
-    /**
-     * Set up the version number of the schema element - null means no version number.
-     *
-     * @param versionNumber - String
-     */
-    public void setVersionNumber(String versionNumber) { this.versionNumber = versionNumber; }
-
-
-    /**
-     * Return the name of the author of the schema element.  Null means the author is unknown.
-     *
-     * @return String author name
-     */
-    public String getAuthor() { return author; }
-
-
-    /**
-     * Set up the name of the author of the schema element. Null means the author is unknown.
-     *
-     * @param author - String author name
-     */
-    public void setAuthor(String author) { this.author = author; }
-
-
-    /**
-     * Return the usage guidance for this schema element. Null means no guidance available.
-     *
-     * @return String usage guidance
-     */
-    public String getUsage() { return usage; }
-
-
-    /**
-     * Set up the usage guidance for this schema element.  Null means no guidance available.
-     *
-     * @param usage - String usage guidance
-     */
-    public void setUsage(String usage) { this.usage = usage; }
-
-
-    /**
-     * Return the format (encoding standard) used for this schema.  It may be XML, JSON, SQL DDL or something else.
-     * Null means the encoding standard is unknown or there are many choices.
-     *
-     * @return String encoding standard
-     */
-    public String getEncodingStandard() { return encodingStandard; }
-
-
-    /**
-     * Set up the format (encoding standard) used for this schema.  It may be XML, JSON, SQL DDL or something else.
-     * Null means the encoding standard is unknown or there are many choices.
-     *
-     * @param encodingStandard - String encoding standard
-     */
-    public void setEncodingStandard(String encodingStandard) { this.encodingStandard = encodingStandard; }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaImplementationQuery.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaImplementationQuery.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaImplementationQuery.java
deleted file mode 100644
index a4a0e90..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaImplementationQuery.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * SchemaImplementationQuery defines a query on a schema attribute that returns all or part of the value for a
- * derived field.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class SchemaImplementationQuery extends PropertyBase
-{
-    private   int              queryId = 0;
-    private   String           query = null;
-    private   String           queryType = null;
-    private   SchemaAttribute  queryTargetElement = null;
-
-    /**
-     * Typical Constructor - sets attributes to null.
-     */
-    public SchemaImplementationQuery()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param template - template schema query to copy.
-     */
-    public SchemaImplementationQuery(SchemaImplementationQuery   template)
-    {
-        super(template);
-
-        if (template != null)
-        {
-            queryId = template.getQueryId();
-            query = template.getQuery();
-            queryType = template.getQueryType();
-
-            SchemaAttribute    templateQueryTargetElement = template.getQueryTargetElement();
-            if (templateQueryTargetElement != null)
-            {
-                queryTargetElement = new SchemaAttribute(templateQueryTargetElement);
-            }
-        }
-    }
-
-
-    /**
-     * Return the query id - this is used to identify where the results of this query should be plugged into
-     * the other queries or the formula for the parent derived schema element.
-     *
-     * @return int query identifier
-     */
-    public int getQueryId() { return queryId; }
-
-
-    /**
-     * Set up the query id - this is used to identify where the results of this query should be plugged into
-     * the other queries or the formula for the parent derived schema element.
-     *
-     * @param queryId - int query identifier
-     */
-    public void setQueryId(int queryId) { this.queryId = queryId; }
-
-
-    /**
-     * Return the query string for this element.  The query string may have placeholders for values returned
-     * by queries that have a lower queryId than this element.
-     *
-     * @return String query
-     */
-    public String getQuery() { return query; }
-
-
-    /**
-     * Set up the query string for this element.  The query string may have placeholders for values returned
-     * by queries that have a lower queryId than this element.
-     *
-     * @param query - String with placeholders
-     */
-    public void setQuery(String query) { this.query = query; }
-
-
-    /**
-     * Return the name of the query language used in the query.
-     *
-     * @return queryType String
-     */
-    public String getQueryType() { return queryType; }
-
-
-    /**
-     * Set up the name of the query language used in the query.
-     *
-     * @param queryType String
-     */
-    public void setQueryType(String queryType) { this.queryType = queryType; }
-
-    /**
-     * Return the SchemaAttribute that describes the type of the data source that will be queried to get the
-     * derived value.
-     *
-     * @return SchemaAttribute
-     */
-    public SchemaAttribute getQueryTargetElement()
-    {
-        if (queryTargetElement == null)
-        {
-            return queryTargetElement;
-        }
-        else
-        {
-            return new SchemaAttribute(queryTargetElement);
-        }
-    }
-
-
-    /**
-     * Set up the SchemaAttribute that describes the type of the data source that will be queried to get the
-     * derived value.
-     *
-     * @param queryTargetElement - SchemaAttribute
-     */
-    public void setQueryTargetElement(SchemaAttribute queryTargetElement)
-    {
-        this.queryTargetElement = queryTargetElement;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaLink.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaLink.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaLink.java
deleted file mode 100644
index 8d1878a..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaLink.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * SchemaLink defines a relationship between 2 SchemaElements.  It is used in network type schemas such as a graph.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class SchemaLink extends PropertyBase
-{
-    /*
-     * Attributes from the relationship
-     */
-    private String                 linkGUID = null;
-    private String                 linkType = null;
-
-    /*
-     * Attributes specific to SchemaLink
-     */
-    private String               linkName             = null;
-    private AdditionalProperties linkProperties       = null;
-    private List<String>         linkedAttributeGUIDs = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public SchemaLink()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor - makes a copy of the supplied object.
-     *
-     * @param template - template object to copy
-     */
-    public SchemaLink(SchemaLink template)
-    {
-        super(template);
-
-        if (template != null)
-        {
-            linkGUID = template.getLinkGUID();
-            linkName = template.getLinkName();
-
-            AdditionalProperties   templateLinkProperties = template.getLinkProperties();
-            if (templateLinkProperties != null)
-            {
-                linkProperties = new AdditionalProperties(templateLinkProperties);
-            }
-
-            List<String>  templateLinkedAttributeGUIDs = template.getLinkedAttributeGUIDs();
-            if (templateLinkedAttributeGUIDs != null)
-            {
-                linkedAttributeGUIDs = new ArrayList<>(templateLinkedAttributeGUIDs);
-            }
-        }
-    }
-
-
-    /**
-     * Return the identifier for the schema link.
-     *
-     * @return String guid
-     */
-    public String getLinkGUID() { return linkGUID; }
-
-
-    /**
-     * Set up the identifier of the schema link.
-     *
-     * @param linkGUID - String guid
-     */
-    public void setLinkGUID(String linkGUID) { this.linkGUID = linkGUID; }
-
-
-    /**
-     * Return the type of the link - this is related to the type of the schema it is a part of.
-     *
-     * @return String link type
-     */
-    public String getLinkType() { return linkType; }
-
-
-    /**
-     * Set up the type of the link - this is related to the type of the schema it is a part of.
-     *
-     * @param linkType - String link type
-     */
-    public void setLinkType(String linkType) { this.linkType = linkType; }
-
-    /**
-     * Return the name of this link
-     *
-     * @return String name
-     */
-    public String getLinkName() { return linkName; }
-
-
-    /**
-     * Set up the name of the schema link.
-     *
-     * @param linkName - String link name
-     */
-    public void setLinkName(String linkName) { this.linkName = linkName; }
-
-
-    /**
-     * Return the list of properties associated with this schema link.
-     *
-     * @return AdditionalProperties
-     */
-    public AdditionalProperties getLinkProperties()
-    {
-        if (linkProperties == null)
-        {
-            return linkProperties;
-        }
-        else
-        {
-            return new AdditionalProperties(linkProperties);
-        }
-    }
-
-
-    /**
-     * Set up the list of properties associated with this schema link.
-     *
-     * @param linkProperties - AdditionalProperties
-     */
-    public void setLinkProperties(AdditionalProperties linkProperties) { this.linkProperties = linkProperties; }
-
-
-    /**
-     * Return the GUIDs of the schema attributes that this link connects together.
-     *
-     * @return SchemaAttributeGUIDs - GUIDs for either end of the link - return as a list.
-     */
-    public List<String> getLinkedAttributeGUIDs()
-    {
-        if (linkedAttributeGUIDs == null)
-        {
-            return linkedAttributeGUIDs;
-        }
-        else
-        {
-            return new ArrayList<>(linkedAttributeGUIDs);
-        }
-    }
-
-
-    /**
-     * Set up the GUIDs of the schema attributes that this link connects together.
-     *
-     * @param linkedAttributeOneGUID - String GUID for a schema attribute
-     * @param linkedAttributeTwoGUID - String GUID for a schema attribute
-     */
-    public void setLinkedAttributeGUIDs(String linkedAttributeOneGUID, String linkedAttributeTwoGUID)
-    {
-        List<String>    linkedAttributeArray = new ArrayList<>();
-
-        linkedAttributeArray.add(linkedAttributeOneGUID);
-        linkedAttributeArray.add(linkedAttributeTwoGUID);
-
-        this.linkedAttributeGUIDs = linkedAttributeArray;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/StarRating.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/StarRating.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/StarRating.java
deleted file mode 100644
index 4d190b8..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/StarRating.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * A StarRating defines the rating that a user has placed against an asset. This ranges from not recommended
- * through to five stars (excellent).
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum StarRating implements Serializable
-{
-    UNRATED(0, "X", "Not recommended"),
-    ONE_STAR(1, "*", "Poor"),
-    TWO_STARS(2, "**", "Usable"),
-    THREE_STARS(3, "***", "Good"),
-    FOUR_STARS(4, "****", "Very Good"),
-    FIVE_STARS(5, "*****", "Excellent");
-
-    private static final long     serialVersionUID = 1L;
-
-    private int            starRatingCode = 99;
-    private String         starRatingSymbol = "";
-    private String         starRatingDescription = "";
-
-
-    /**
-     * Typical Constructor
-     */
-    StarRating(int     starRatingCode, String   starRatingSymbol, String   starRatingDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.starRatingCode = starRatingCode;
-        this.starRatingSymbol = starRatingSymbol;
-        this.starRatingDescription = starRatingDescription;
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - star rating code
-     */
-    public int getStarRatingCode()
-    {
-        return starRatingCode;
-    }
-
-
-    /**
-     * Return the default symbol for this enum instance.
-     *
-     * @return String - default symbol
-     */
-    public String getStarRatingSymbol()
-    {
-        return starRatingSymbol;
-    }
-
-
-    /**
-     * Return the default description for the star rating for this enum instance.
-     *
-     * @return String - default description
-     */
-    public String getStarRatingDescription()
-    {
-        return starRatingDescription;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/VirtualConnection.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/VirtualConnection.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/VirtualConnection.java
deleted file mode 100644
index da0907d..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/VirtualConnection.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * A virtual connection is for an asset that provides data by delegating requests to one or more other connections.
- * it maintains a list of the connections that are used by its asset.  These are referred to as embedded connections.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class VirtualConnection extends Connection
-{
-    /*
-     * Attributes of a virtual connection
-     */
-    protected List<EmbeddedConnection>       embeddedConnections = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public VirtualConnection()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateVirtualConnection - element to copy
-     */
-    public VirtualConnection(VirtualConnection templateVirtualConnection)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(templateVirtualConnection);
-
-        /*
-         * Extract additional information from the template if available
-         */
-        if (templateVirtualConnection != null)
-        {
-            List<EmbeddedConnection> templateEmbeddedConnections = templateVirtualConnection.getEmbeddedConnections();
-
-            if (templateEmbeddedConnections != null)
-            {
-                /*
-                 * Ensure comment replies has this object's parent asset, not the template's.
-                 */
-                embeddedConnections = new ArrayList<>(templateEmbeddedConnections);
-            }
-        }
-    }
-
-
-    /**
-     * Return the enumeration of embedded connections for this virtual connection.
-     *
-     * @return EmbeddedConnections
-     */
-    public List<EmbeddedConnection> getEmbeddedConnections()
-    {
-        if (embeddedConnections == null)
-        {
-            return embeddedConnections;
-        }
-        else
-        {
-            return new ArrayList<>(embeddedConnections);
-        }
-    }
-
-
-    /**
-     * Set up the embedded connections for this virtual connection.
-     *
-     * @param embeddedConnections - list of Connections
-     */
-    public void setEmbeddedConnections(List<EmbeddedConnection> embeddedConnections)
-    {
-        this.embeddedConnections = embeddedConnections;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/server/ConnectedAssetRESTServices.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/server/ConnectedAssetRESTServices.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/server/ConnectedAssetRESTServices.java
deleted file mode 100644
index 8ae6c37..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/server/ConnectedAssetRESTServices.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.omas.connectedasset.server;
-
-import org.apache.atlas.omas.connectedasset.ffdc.exceptions.PropertyServerException;
-import org.apache.atlas.omas.connectedasset.properties.AssetUniverse;
-import org.apache.atlas.omas.connectedasset.server.properties.AssetUniverseResponse;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * The ConnectedAssetRESTServices is the server-side implementation of the Connected Asset OMAS REST interface.
- */
-@RestController
-@RequestMapping("/omag/omas/connected-asset")
-public class ConnectedAssetRESTServices
-{
-
-    public ConnectedAssetRESTServices()
-    {
-        /*
-         *
-         */
-    }
-
-
-    /**
-     * Returns a comprehensive collection of properties about the requested asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - String - unique id for asset.
-     *
-     * @return AssetUniverseResponse - a comprehensive collection of properties about the asset or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem retrieving the asset properties from
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.GET, path = "/{userId}/assets/{guid}")
-
-    public AssetUniverseResponse getAssetProperties(@PathVariable String   userId,
-                                                    @PathVariable String   guid)
-    {
-        return null;
-    }
-
-
-
-    /**
-     * Returns a comprehensive collection of properties about the asset linked to the supplied connection.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - String - unique id for connection.
-     * @return AssetUniverse - a comprehensive collection of properties about the connected asset
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem retrieving the asset properties from
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.GET, path = "/{userId}/assets/by-connection/{guid}")
-
-    public AssetUniverseResponse  getAssetPropertiesByConnection(@PathVariable String   userId,
-                                                                 @PathVariable String   guid)
-    {
-        AssetUniverse   extractedAssetProperties = null;
-
-        return null;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/server/properties/AssetUniverseResponse.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/server/properties/AssetUniverseResponse.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/server/properties/AssetUniverseResponse.java
deleted file mode 100644
index 79d5325..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/server/properties/AssetUniverseResponse.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.server.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.omas.connectedasset.properties.AssetUniverse;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-
-/**
- * AssetUniverseResponse is the response structure used on the Connected Asset OMAS REST API calls that return an
- * AssetUniverse object as a response.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class AssetUniverseResponse extends ConnectedAssetOMASAPIResponse
-{
-    private AssetUniverse assetUniverse = null;
-
-
-    /**
-     * Default constructor
-     */
-    public AssetUniverseResponse()
-    {
-    }
-
-
-    /**
-     * Return the AssetUniverse object.
-     *
-     * @return all details known about the asset
-     */
-    public AssetUniverse getAssetUniverse()
-    {
-        return assetUniverse;
-    }
-
-
-    /**
-     * Set up the AssetUniverse object.
-     *
-     * @param assetUniverse - all details known about the asset
-     */
-    public void setAssetUniverse(AssetUniverse assetUniverse)
-    {
-        this.assetUniverse = assetUniverse;
-    }
-
-
-    @Override
-    public String toString()
-    {
-        return "AssetUniverseResponse{" +
-                "assetUniverse=" + assetUniverse +
-                ", relatedHTTPCode=" + relatedHTTPCode +
-                ", exceptionClassName='" + exceptionClassName + '\'' +
-                ", exceptionErrorMessage='" + exceptionErrorMessage + '\'' +
-                ", exceptionSystemAction='" + exceptionSystemAction + '\'' +
-                ", exceptionUserAction='" + exceptionUserAction + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/server/properties/ConnectedAssetOMASAPIResponse.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/server/properties/ConnectedAssetOMASAPIResponse.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/server/properties/ConnectedAssetOMASAPIResponse.java
deleted file mode 100644
index bda4222..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/server/properties/ConnectedAssetOMASAPIResponse.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.server.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * ConnectedAssetOMASAPIResponse provides a common header for Asset Consumer OMAS managed responses to its REST API.
- * It manages information about exceptions.  If no exception has been raised exceptionClassName is null.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public abstract class ConnectedAssetOMASAPIResponse
-{
-    protected int       relatedHTTPCode = 200;
-    protected String    exceptionClassName = null;
-    protected String    exceptionErrorMessage = null;
-    protected String    exceptionSystemAction = null;
-    protected String    exceptionUserAction = null;
-
-
-    /**
-     * Default constructor
-     */
-    public ConnectedAssetOMASAPIResponse()
-    {
-    }
-
-
-    /**
-     * Return the HTTP Code to use if forwarding response to HTTP client.
-     *
-     * @return integer HTTP status code
-     */
-    public int getRelatedHTTPCode()
-    {
-        return relatedHTTPCode;
-    }
-
-
-    /**
-     * Set up the HTTP Code to use if forwarding response to HTTP client.
-     *
-     * @param relatedHTTPCode - integer HTTP status code
-     */
-    public void setRelatedHTTPCode(int relatedHTTPCode)
-    {
-        this.relatedHTTPCode = relatedHTTPCode;
-    }
-
-
-    /**
-     * Return the name of the Java class name to use to recreate the exception.
-     *
-     * @return String name of the fully-qualified java class name
-     */
-    public String getExceptionClassName()
-    {
-        return exceptionClassName;
-    }
-
-
-    /**
-     * Set up the name of the Java class name to use to recreate the exception.
-     *
-     * @param exceptionClassName - String name of the fully-qualified java class name
-     */
-    public void setExceptionClassName(String exceptionClassName)
-    {
-        this.exceptionClassName = exceptionClassName;
-    }
-
-
-    /**
-     * Return the error message associated with the exception.
-     *
-     * @return string error message
-     */
-    public String getExceptionErrorMessage()
-    {
-        return exceptionErrorMessage;
-    }
-
-
-    /**
-     * Set up the error message associated with the exception.
-     *
-     * @param exceptionErrorMessage - string error message
-     */
-    public void setExceptionErrorMessage(String exceptionErrorMessage)
-    {
-        this.exceptionErrorMessage = exceptionErrorMessage;
-    }
-
-
-    /**
-     * Return the description of the action taken by the system as a result of the exception.
-     *
-     * @return - string description of the action taken
-     */
-    public String getExceptionSystemAction()
-    {
-        return exceptionSystemAction;
-    }
-
-
-    /**
-     * Set up the description of the action taken by the system as a result of the exception.
-     *
-     * @param exceptionSystemAction - string description of the action taken
-     */
-    public void setExceptionSystemAction(String exceptionSystemAction)
-    {
-        this.exceptionSystemAction = exceptionSystemAction;
-    }
-
-
-    /**
-     * Return the action that a user should take to resolve the problem.
-     *
-     * @return string instructions
-     */
-    public String getExceptionUserAction()
-    {
-        return exceptionUserAction;
-    }
-
-
-    /**
-     * Set up the action that a user should take to resolve the problem.
-     *
-     * @param exceptionUserAction - string instructions
-     */
-    public void setExceptionUserAction(String exceptionUserAction)
-    {
-        this.exceptionUserAction = exceptionUserAction;
-    }
-
-
-    @Override
-    public String toString()
-    {
-        return "ConnectedAssetRESTServices{" +
-                "relatedHTTPCode=" + relatedHTTPCode +
-                ", exceptionClassName='" + exceptionClassName + '\'' +
-                ", exceptionErrorMessage='" + exceptionErrorMessage + '\'' +
-                ", exceptionSystemAction='" + exceptionSystemAction + '\'' +
-                ", exceptionUserAction='" + exceptionUserAction + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/README.md
----------------------------------------------------------------------
diff --git a/omrs/README.md b/omrs/README.md
deleted file mode 100644
index e219288..0000000
--- a/omrs/README.md
+++ /dev/null
@@ -1,43 +0,0 @@
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-# Open Metadata Repository Service (OMRS)
-
-The Open Metadata Repository Services (OMRS) enable metadata repositories to exchange metadata.
-Traditional metadata management technology tends to centralize metadata into a single repository.
-An organization often begins with a single metadata repository, typically deployed to support a
-single project or initiative.
-However, over time, depending on the tools they buy, the projects they run or the political structures
-within the organization, the number of deployed metadata repositories grows, creating multiple metadata silos.
-So for example, an organization may have:
-
-* a metadata repository and tools for its governance team.
-This metadata repository may host the canonical glossary, and the governance policies, rules and classifications.
-
-* a metadata repository for its data lake.
-This metadata repository has the details of the data repositories in the data lake and the
-movement of data between them.
-
-* a metadata repository for its data integration tools that continuously extract data
-from the operational systems and sends them to the data lake.
-
-The role of the OMRS is to bring these metadata repositories together so this metadata can be linked
-and used together across the organization.
-It enables these metadata repositories to act as a aggregated source of metadata.
-The metadata repositories using OMRS may be instances of Apache Atlas and they may
-include a mixture of repositories from different vendors that support the OMRS integration interfaces.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/pom.xml
----------------------------------------------------------------------
diff --git a/omrs/pom.xml b/omrs/pom.xml
deleted file mode 100644
index 3b73d33..0000000
--- a/omrs/pom.xml
+++ /dev/null
@@ -1,111 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-
-    <parent>
-        <artifactId>apache-atlas</artifactId>
-        <groupId>org.apache.atlas</groupId>
-        <version>1.0.0</version>
-    </parent>
-
-    <artifactId>omrs</artifactId>
-
-    <name>Open Metadata Repository Services (OMRS)</name>
-    <description>Open Metadata Repository Services (OMRS) interfaces and implementation for linking metadata repositories into a cohort</description>
-
-    <packaging>jar</packaging>
-
-    <dependencies>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter</artifactId>
-            <version>1.5.7.RELEASE</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-web</artifactId>
-            <version>1.5.7.RELEASE</version>
-        </dependency>
-
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>commons-io</groupId>
-            <artifactId>commons-io</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>com.fasterxml.jackson.jaxrs</groupId>
-            <artifactId>jackson-jaxrs-base</artifactId>
-            <version>${jackson.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>com.fasterxml.jackson.jaxrs</groupId>
-            <artifactId>jackson-jaxrs-json-provider</artifactId>
-            <version>${jackson.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>javax.inject</groupId>
-            <artifactId>javax.inject</artifactId>
-            <version>${javax-inject.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.testng</groupId>
-            <artifactId>testng</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>om-fwk-ocf</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-jar-plugin</artifactId>
-                <version>2.4</version>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>test-jar</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-</project>

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/eventmapper/AtlasOMRSRepositoryEventMapper.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/eventmapper/AtlasOMRSRepositoryEventMapper.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/eventmapper/AtlasOMRSRepositoryEventMapper.java
deleted file mode 100644
index ca23a1c..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/eventmapper/AtlasOMRSRepositoryEventMapper.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.atlas.eventmapper;
-
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.omrs.eventmanagement.repositoryeventmapper.OMRSRepositoryEventMapperBase;
-
-public class AtlasOMRSRepositoryEventMapper extends OMRSRepositoryEventMapperBase
-{
-    /**
-     * Default constructor
-     */
-    public AtlasOMRSRepositoryEventMapper()
-    {
-    }
-
-
-    /**
-     * Indicates that the connector is completely configured and can begin processing.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public void start() throws ConnectorCheckedException
-    {
-        super.start();
-    }
-
-
-    /**
-     * Free up any resources held since the connector is no longer needed.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public  void disconnect() throws ConnectorCheckedException
-    {
-        super.disconnect();
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/eventmapper/AtlasOMRSRepositoryEventMapperProvider.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/eventmapper/AtlasOMRSRepositoryEventMapperProvider.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/eventmapper/AtlasOMRSRepositoryEventMapperProvider.java
deleted file mode 100644
index 28b79ed..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/eventmapper/AtlasOMRSRepositoryEventMapperProvider.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.atlas.eventmapper;
-
-import org.apache.atlas.omrs.adapters.igc.v1.eventmapper.IGCOMRSRepositoryEventMapper;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnectorProviderBase;
-
-/**
- * In the Open Connector Framework (OCF), a ConnectorProvider is a factory for a specific type of connector.
- * The IGCOMRSRepositoryEventMapperProvider is the connector provider for the IGCOMRSRepositoryEventMapper.
- * It extends OMRSRepositoryEventMapperProviderBase which in turn extends the OCF ConnectorProviderBase.
- * ConnectorProviderBase supports the creation of connector instances.
- *
- * The OMRSRESTRepositoryConnectorProvider must initialize ConnectorProviderBase with the Java class
- * name of the OMRS Connector implementation (by calling super.setConnectorClassName(className)).
- * Then the connector provider will work.
- */
-public class AtlasOMRSRepositoryEventMapperProvider extends OMRSRepositoryConnectorProviderBase
-{
-    /**
-     * Constructor used to initialize the ConnectorProviderBase with the Java class name of the specific
-     * OMRS Connector implementation.
-     */
-    public AtlasOMRSRepositoryEventMapperProvider()
-    {
-        Class    connectorClass = IGCOMRSRepositoryEventMapper.class;
-
-        super.setConnectorClassName(connectorClass.getName());
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/repositoryconnector/LocalAtlasOMRSMetadataCollection.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/repositoryconnector/LocalAtlasOMRSMetadataCollection.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/repositoryconnector/LocalAtlasOMRSMetadataCollection.java
deleted file mode 100644
index f14caf6..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/repositoryconnector/LocalAtlasOMRSMetadataCollection.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.atlas.repositoryconnector;
-
-import org.apache.atlas.omrs.ffdc.exception.NotImplementedRuntimeException;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollectionBase;
-
-/**
- * The OMRSRESTMetadataCollection represents a remote metadata repository that supports the OMRS REST API.
- * Requests to this metadata collection are translated one-for-one to requests to the remote repository since
- * the OMRS REST API has a one-to-one correspondence with the metadata collection.
- */
-public class LocalAtlasOMRSMetadataCollection extends OMRSMetadataCollectionBase
-{
-    private LocalAtlasOMRSRepositoryConnector parentConnector = null;
-    private String                            metadataCollectionId = null;
-
-    /**
-     * Default constructor.
-     *
-     * @param parentConnector - connector that this metadata collection supports.  The connector has the information
-     *                        to call the metadata repository.
-     * @param metadataCollectionId - unique Identifier of the metadata collection Id.
-     */
-    public LocalAtlasOMRSMetadataCollection(LocalAtlasOMRSRepositoryConnector parentConnector,
-                                            String                            metadataCollectionId)
-    {
-        /*
-         * The metadata collection Id is the unique Id for the metadata collection.  It is managed by the super class.
-         */
-        super(metadataCollectionId);
-        this.metadataCollectionId = metadataCollectionId;
-
-        /*
-         * Save parentConnector since this has the connection information and access to the metadata about the
-         * metadata cluster.
-         */
-        this.parentConnector = parentConnector;
-
-        /*
-         * This is a temporary implementation to allow the structural implementation of the connectors to
-         * be committed before the metadata collection implementation is complete.
-         */
-        throw new NotImplementedRuntimeException("LocalAtlasMetadataCollection", "constructor", "ATLAS-1773");
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/repositoryconnector/LocalAtlasOMRSRepositoryConnector.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/repositoryconnector/LocalAtlasOMRSRepositoryConnector.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/repositoryconnector/LocalAtlasOMRSRepositoryConnector.java
deleted file mode 100644
index 70da690..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/repositoryconnector/LocalAtlasOMRSRepositoryConnector.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.atlas.repositoryconnector;
-
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-/**
- * The OMRSRESTRepositoryConnector is a connector to a remote Apache Atlas repository (or any other metadata repository
- * that supports the OMRS REST APIs).  This is the connector used by the EnterpriseOMRSRepositoryConnector to make a direct call
- * to another open metadata repository.
- */
-public class LocalAtlasOMRSRepositoryConnector extends OMRSRepositoryConnector
-{
-    /**
-     * Default constructor used by the OCF Connector Provider.
-     */
-    public LocalAtlasOMRSRepositoryConnector()
-    {
-        /*
-         * Nothing to do (yet !)
-         */
-    }
-
-
-    /**
-     * Set up the unique Id for this metadata collection.
-     *
-     * @param metadataCollectionId - String unique Id
-     */
-    public void setMetadataCollectionId(String     metadataCollectionId)
-    {
-        this.metadataCollectionId = metadataCollectionId;
-
-        /*
-         * Initialize the metadata collection only once the connector is properly set up.
-         */
-        super.metadataCollection = new LocalAtlasOMRSMetadataCollection(this, metadataCollectionId);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/repositoryconnector/LocalAtlasOMRSRepositoryConnectorProvider.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/repositoryconnector/LocalAtlasOMRSRepositoryConnectorProvider.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/repositoryconnector/LocalAtlasOMRSRepositoryConnectorProvider.java
deleted file mode 100644
index ca7d086..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/atlas/repositoryconnector/LocalAtlasOMRSRepositoryConnectorProvider.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.atlas.repositoryconnector;
-
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnectorProviderBase;
-import org.apache.atlas.omrs.rest.repositoryconnector.OMRSRESTRepositoryConnector;
-
-/**
- * In the Open Connector Framework (OCF), a ConnectorProvider is a factory for a specific type of connector.
- * The OMRSRESTRepositoryConnectorProvider is the connector provider for the OMRSRESTRepositoryConnector.
- * It extends OMRSRepositoryConnectorProviderBase which in turn extends the OCF ConnectorProviderBase.
- * ConnectorProviderBase supports the creation of connector instances.
- *
- * The OMRSRESTRepositoryConnectorProvider must initialize ConnectorProviderBase with the Java class
- * name of the OMRS Connector implementation (by calling super.setConnectorClassName(className)).
- * Then the connector provider will work.
- */
-public class LocalAtlasOMRSRepositoryConnectorProvider extends OMRSRepositoryConnectorProviderBase
-{
-    /**
-     * Constructor used to initialize the ConnectorProviderBase with the Java class name of the specific
-     * OMRS Connector implementation.
-     */
-    public LocalAtlasOMRSRepositoryConnectorProvider()
-    {
-        Class    connectorClass = OMRSRESTRepositoryConnector.class;
-
-        super.setConnectorClassName(connectorClass.getName());
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/eventmapper/IGCOMRSRepositoryEventMapper.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/eventmapper/IGCOMRSRepositoryEventMapper.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/eventmapper/IGCOMRSRepositoryEventMapper.java
deleted file mode 100644
index 074b7c0..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/eventmapper/IGCOMRSRepositoryEventMapper.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.igc.v1.eventmapper;
-
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.omrs.eventmanagement.repositoryeventmapper.OMRSRepositoryEventMapperBase;
-
-
-/**
- * IGCOMRSRepositoryEventMapper provides an implementation of a repository event mapper for the
- * IBM Governance Catalog (IGC).
- */
-public class IGCOMRSRepositoryEventMapper extends OMRSRepositoryEventMapperBase
-{
-    /**
-     * Default constructor
-     */
-    public IGCOMRSRepositoryEventMapper()
-    {
-    }
-
-    /**
-     * Indicates that the connector is completely configured and can begin processing.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public void start() throws ConnectorCheckedException
-    {
-        super.start();
-    }
-
-
-    /**
-     * Free up any resources held since the connector is no longer needed.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public  void disconnect() throws ConnectorCheckedException
-    {
-        super.disconnect();
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/eventmapper/IGCOMRSRepositoryEventMapperProvider.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/eventmapper/IGCOMRSRepositoryEventMapperProvider.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/eventmapper/IGCOMRSRepositoryEventMapperProvider.java
deleted file mode 100644
index f51fb06..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/eventmapper/IGCOMRSRepositoryEventMapperProvider.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.igc.v1.eventmapper;
-
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnectorProviderBase;
-
-/**
- * In the Open Connector Framework (OCF), a ConnectorProvider is a factory for a specific type of connector.
- * The IGCOMRSRepositoryEventMapperProvider is the connector provider for the IGCOMRSRepositoryEventMapper.
- * It extends OMRSRepositoryEventMapperProviderBase which in turn extends the OCF ConnectorProviderBase.
- * ConnectorProviderBase supports the creation of connector instances.
- *
- * The OMRSRESTRepositoryConnectorProvider must initialize ConnectorProviderBase with the Java class
- * name of the OMRS Connector implementation (by calling super.setConnectorClassName(className)).
- * Then the connector provider will work.
- */
-public class IGCOMRSRepositoryEventMapperProvider extends OMRSRepositoryConnectorProviderBase
-{
-    /**
-     * Constructor used to initialize the ConnectorProviderBase with the Java class name of the specific
-     * OMRS Connector implementation.
-     */
-    public IGCOMRSRepositoryEventMapperProvider()
-    {
-        Class    connectorClass = IGCOMRSRepositoryEventMapper.class;
-
-        super.setConnectorClassName(connectorClass.getName());
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/repositoryconnector/IGCOMRSMetadataCollection.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/repositoryconnector/IGCOMRSMetadataCollection.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/repositoryconnector/IGCOMRSMetadataCollection.java
deleted file mode 100644
index 77afe02..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/repositoryconnector/IGCOMRSMetadataCollection.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.igc.v1.repositoryconnector;
-
-import org.apache.atlas.omrs.ffdc.exception.NotImplementedRuntimeException;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollectionBase;
-
-/**
- * The IGCOMRSMetadataCollection represents a remote IBM Information Governance Catalog (IGC)
- * metadata repository.  IGC supports its own native REST APIs.
- * Requests to this metadata collection are translated to the IGC REST API calls and the results are
- * transformed to OMRS objects before returning to the caller.
- */
-public class IGCOMRSMetadataCollection extends OMRSMetadataCollectionBase
-{
-    private IGCOMRSRepositoryConnector parentConnector = null;
-
-    /**
-     * Default constructor.
-     *
-     * @param parentConnector - connector that this metadata collection supports.  The connector has the information
-     *                        to call the metadata repository.
-     * @param metadataCollectionId  - unique identifier for the repository.
-     */
-    public IGCOMRSMetadataCollection(IGCOMRSRepositoryConnector parentConnector,
-                                     String                     metadataCollectionId)
-    {
-        /*
-         * The metadata collection Id is the unique Id for the metadata collection.  It is managed by the super class.
-         */
-        super(metadataCollectionId);
-        this.metadataCollectionId = metadataCollectionId;
-
-        /*
-         * Save parentConnector since this has the connection information.
-         */
-        this.parentConnector = parentConnector;
-
-        /*
-         * This is a temporary implementation to allow the structural implementation of the connectors to
-         * be committed before the metadata collection implementation is complete.
-         */
-        throw new NotImplementedRuntimeException("IGCOMRSMetadataCollection", "constructor", "ATLAS-1774");
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/repositoryconnector/IGCOMRSRepositoryConnector.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/repositoryconnector/IGCOMRSRepositoryConnector.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/repositoryconnector/IGCOMRSRepositoryConnector.java
deleted file mode 100644
index f7438a9..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/repositoryconnector/IGCOMRSRepositoryConnector.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.igc.v1.repositoryconnector;
-
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollection;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-
-/**
- * The IGCOMRSRepositoryConnector is a connector to a remote IBM Information Governance Catalog (IGC) repository.
- */
-public class IGCOMRSRepositoryConnector extends OMRSRepositoryConnector
-{
-    /**
-     * Default constructor used by the OCF Connector Provider.
-     */
-    public IGCOMRSRepositoryConnector()
-    {
-        /*
-         * Nothing to do (yet !)
-         */
-    }
-
-    /**
-     * Set up the unique Id for this metadata collection.
-     *
-     * @param metadataCollectionId - String unique Id
-     */
-    public void setMetadataCollectionId(String     metadataCollectionId)
-    {
-        this.metadataCollectionId = metadataCollectionId;
-
-        /*
-         * Initialize the metadata collection only once the connector is properly set up.
-         */
-        super.metadataCollection = new IGCOMRSMetadataCollection(this, metadataCollectionId);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/repositoryconnector/IGCOMRSRepositoryConnectorProvider.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/repositoryconnector/IGCOMRSRepositoryConnectorProvider.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/repositoryconnector/IGCOMRSRepositoryConnectorProvider.java
deleted file mode 100644
index 00aed67..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v1/repositoryconnector/IGCOMRSRepositoryConnectorProvider.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.igc.v1.repositoryconnector;
-
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnectorProviderBase;
-
-/**
- * In the Open Connector Framework (OCF), a ConnectorProvider is a factory for a specific type of connector.
- * The IGCOMRSRepositoryConnectorProvider is the connector provider for the IGCOMRSRepositoryConnector.
- * It extends OMRSRepositoryConnectorProviderBase which in turn extends the OCF ConnectorProviderBase.
- * ConnectorProviderBase supports the creation of connector instances.
- *
- * The IGCOMRSRepositoryConnectorProvider must initialize ConnectorProviderBase with the Java class
- * name of the OMRS Connector implementation (by calling super.setConnectorClassName(className)).
- * Then the connector provider will work.
- */
-public class IGCOMRSRepositoryConnectorProvider extends OMRSRepositoryConnectorProviderBase
-{
-    /**
-     * Constructor used to initialize the ConnectorProviderBase with the Java class name of the specific
-     * OMRS Connector implementation.
-     */
-    public IGCOMRSRepositoryConnectorProvider()
-    {
-        Class    connectorClass = IGCOMRSRepositoryConnector.class;
-
-        super.setConnectorClassName(connectorClass.getName());
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/eventmapper/IGCV2OMRSRepositoryEventMapper.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/eventmapper/IGCV2OMRSRepositoryEventMapper.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/eventmapper/IGCV2OMRSRepositoryEventMapper.java
deleted file mode 100644
index efc3d3c..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/eventmapper/IGCV2OMRSRepositoryEventMapper.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.igc.v2.eventmapper;
-
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.omrs.eventmanagement.repositoryeventmapper.OMRSRepositoryEventMapperBase;
-
-
-/**
- * IGCOMRSRepositoryEventMapper provides an implementation of a repository event mapper for the
- * IBM Governance Catalog (IGC) for releases following 11.7.
- */
-public class IGCV2OMRSRepositoryEventMapper extends OMRSRepositoryEventMapperBase
-{
-    /**
-     * Default constructor
-     */
-    public IGCV2OMRSRepositoryEventMapper()
-    {
-    }
-
-
-    /**
-     * Indicates that the connector is completely configured and can begin processing.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public void start() throws ConnectorCheckedException
-    {
-        super.start();
-    }
-
-
-    /**
-     * Free up any resources held since the connector is no longer needed.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public  void disconnect() throws ConnectorCheckedException
-    {
-        super.disconnect();
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/eventmapper/IGCV2OMRSRepositoryEventMapperProvider.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/eventmapper/IGCV2OMRSRepositoryEventMapperProvider.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/eventmapper/IGCV2OMRSRepositoryEventMapperProvider.java
deleted file mode 100644
index 730f5aa..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/eventmapper/IGCV2OMRSRepositoryEventMapperProvider.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.igc.v2.eventmapper;
-
-import org.apache.atlas.omrs.adapters.igc.v1.eventmapper.IGCOMRSRepositoryEventMapper;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnectorProviderBase;
-
-/**
- * In the Open Connector Framework (OCF), a ConnectorProvider is a factory for a specific type of connector.
- * The IGCOMRSRepositoryEventMapperProvider is the connector provider for the IGCOMRSRepositoryEventMapper.
- * It extends OMRSRepositoryEventMapperProviderBase which in turn extends the OCF ConnectorProviderBase.
- * ConnectorProviderBase supports the creation of connector instances.
- *
- * The IGCV2OMRSRepositoryEventMapperProvider must initialize ConnectorProviderBase with the Java class
- * name of the OMRS Connector implementation (by calling super.setConnectorClassName(className)).
- * Then the connector provider will work.
- */
-public class IGCV2OMRSRepositoryEventMapperProvider extends OMRSRepositoryConnectorProviderBase
-{
-    /**
-     * Constructor used to initialize the ConnectorProviderBase with the Java class name of the specific
-     * OMRS Connector implementation.
-     */
-    public IGCV2OMRSRepositoryEventMapperProvider()
-    {
-        Class    connectorClass = IGCV2OMRSRepositoryEventMapper.class;
-
-        super.setConnectorClassName(connectorClass.getName());
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/repositoryconnector/IGCV2OMRSMetadataCollection.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/repositoryconnector/IGCV2OMRSMetadataCollection.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/repositoryconnector/IGCV2OMRSMetadataCollection.java
deleted file mode 100644
index 4fe1330..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/repositoryconnector/IGCV2OMRSMetadataCollection.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.igc.v2.repositoryconnector;
-
-import org.apache.atlas.omrs.ffdc.exception.NotImplementedRuntimeException;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollectionBase;
-
-/**
- * The IGCV2OMRSMetadataCollection represents a remote IBM Information Governance Catalog (IGC)
- * metadata repository.  IGC supports its own native REST APIs.
- * Requests to this metadata collection are translated to the IGC REST API calls and the results are
- * transformed to OMRS objects before returning to the caller.
- */
-public class IGCV2OMRSMetadataCollection extends OMRSMetadataCollectionBase
-{
-    private IGCV2OMRSRepositoryConnector parentConnector = null;
-
-    /**
-     * Default constructor.
-     *
-     * @param parentConnector - connector that this metadata collection supports.  The connector has the information
-     *                        to call the metadata repository.
-     * @param metadataCollectionId  - unique identifier for the repository.
-     */
-    public IGCV2OMRSMetadataCollection(IGCV2OMRSRepositoryConnector parentConnector,
-                                       String                       metadataCollectionId)
-    {
-        /*
-         * The metadata collection Id is the unique Id for the metadata collection.  It is managed by the super class.
-         */
-        super(metadataCollectionId);
-        this.metadataCollectionId = metadataCollectionId;
-
-        /*
-         * Save parentConnector since this has the connection information.
-         */
-        this.parentConnector = parentConnector;
-
-        /*
-         * This is a temporary implementation to allow the structural implementation of the connectors to
-         * be committed before the metadata collection implementation is complete.
-         */
-        throw new NotImplementedRuntimeException("IGCV2OMRSMetadataCollection", "constructor", "ATLAS-1774");
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/repositoryconnector/IGCV2OMRSRepositoryConnector.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/repositoryconnector/IGCV2OMRSRepositoryConnector.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/repositoryconnector/IGCV2OMRSRepositoryConnector.java
deleted file mode 100644
index 8fb94a1..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/igc/v2/repositoryconnector/IGCV2OMRSRepositoryConnector.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.igc.v2.repositoryconnector;
-
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-
-/**
- * The IGCV2OMRSRepositoryConnector is a connector to a remote IBM Information Governance Catalog (IGC) repository
- * for releases after 11.7.
- */
-public class IGCV2OMRSRepositoryConnector extends OMRSRepositoryConnector
-{
-    /**
-     * Default constructor used by the OCF Connector Provider.
-     */
-    public IGCV2OMRSRepositoryConnector()
-    {
-        /*
-         * Nothing to do (yet !)
-         */
-    }
-
-
-    /**
-     * Set up the unique Id for this metadata collection.
-     *
-     * @param metadataCollectionId - String unique Id
-     */
-    public void setMetadataCollectionId(String     metadataCollectionId)
-    {
-        this.metadataCollectionId = metadataCollectionId;
-
-        /*
-         * Initialize the metadata collection only once the connector is properly set up.
-         */
-        super.metadataCollection = new IGCV2OMRSMetadataCollection(this, metadataCollectionId);
-    }
-}
\ No newline at end of file


[07/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSRepositoryContentManager.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSRepositoryContentManager.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSRepositoryContentManager.java
deleted file mode 100644
index 8f8e50c..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSRepositoryContentManager.java
+++ /dev/null
@@ -1,2357 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository.repositorycontentmanager;
-
-import org.apache.atlas.omrs.auditlog.OMRSAuditCode;
-import org.apache.atlas.omrs.auditlog.OMRSAuditLog;
-import org.apache.atlas.omrs.auditlog.OMRSAuditingComponent;
-import org.apache.atlas.omrs.eventmanagement.*;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSTypeDefEventProcessor;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.*;
-import org.apache.atlas.omrs.localrepository.repositoryconnector.LocalOMRSRepositoryConnector;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollection;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceStatus;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceType;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.*;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-import org.apache.atlas.omrs.rest.server.OMRSRepositoryRESTServices;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.*;
-
-/**
- * OMRSRepositoryContentManager supports an in-memory cache of TypeDefs for the local server.  It is used by the OMRS
- * components for constructing metadata instances with valid types.   It ensures that the TypeDefs used in other
- * members of the open metadata repository cohorts that the local server is also a member of are consistent with the
- * local repository.
- *
- * OMRSRepositoryContentManager plays a central role in ensuring the integrity of the metadata in the local repository.
- * It is called from multiple components at different points in the processing.  It presents a different interface
- * to each of these components that is specialized to their needs.
- * <ul>
- *     <li>
- *         OMRSTypeDefEventProcessor - processes inbound events from remote members of the open metadata
- *         repository cohorts that the local repository is connected to.  These incoming TypeDef events need to
- *         be validated against the types used locally and either saved or discarded depending on the exchange rule
- *         setting.
- *     </li>
- *     <li>
- *         OMRSTypeDefManager - provides maintenance methods for managing the TypeDefs in the local cache.
- *     </li>
- *     <li>
- *         OMRSTypeDefHelper - provides methods to help OMRS connectors and adapters manage TypeDefs.
- *     </li>
- *     <li>
- *         OMRSTypeDefValidator - provides methods to validate TypeDefs.
- *     </li>
- *     <li>
- *         OMRSInstanceValidator - provides methods to help validate instances.
- *     </li>
- * </ul>
- */
-public class OMRSRepositoryContentManager implements OMRSTypeDefEventProcessor,
-                                                     OMRSTypeDefManager,
-                                                     OMRSTypeDefHelper,
-                                                     OMRSTypeDefValidator
-{
-    private LocalOMRSRepositoryConnector      localRepositoryConnector       = null;
-    private OMRSRepositoryEventManager        outboundRepositoryEventManager = null;
-    private OMRSRepositoryConnector           realLocalConnector             = null;
-    private OMRSRepositoryEventExchangeRule   saveExchangeRule               = null;
-    private String                            openTypesOriginGUID            = null;
-    private HashMap<String, TypeDef>          knownTypeDefGUIDs              = new HashMap<>();
-    private HashMap<String, TypeDef>          knownTypeDefNames              = new HashMap<>();
-    private HashMap<String, AttributeTypeDef> knownAttributeTypeDefGUIDs     = new HashMap<>();
-    private HashMap<String, AttributeTypeDef> knownAttributeTypeDefNames     = new HashMap<>();
-    private HashMap<String, TypeDef>          activeTypeDefGUIDs             = new HashMap<>();
-    private HashMap<String, TypeDef>          activeTypeDefNames             = new HashMap<>();
-    private HashMap<String, AttributeTypeDef> activeAttributeTypeDefGUIDs    = new HashMap<>();
-    private HashMap<String, AttributeTypeDef> activeAttributeTypeDefNames    = new HashMap<>();
-
-
-    /*
-     * The audit log provides a verifiable record of the open metadata archives that have been loaded into
-     * the open metadata repository.  The Logger is for standard debug.
-     */
-    private static final OMRSAuditLog auditLog = new OMRSAuditLog(OMRSAuditingComponent.TYPEDEF_MANAGER);
-    private static final Logger       log      = LoggerFactory.getLogger(OMRSRepositoryContentManager.class);
-
-
-
-    /**
-     * Default constructor
-     */
-    public OMRSRepositoryContentManager()
-    {
-
-    }
-
-
-    /**
-     * Saves all of the information necessary to process incoming TypeDef events.
-     *
-     * @param localRepositoryConnector - connector to the local repository
-     * @param realLocalConnector - connector to the real local repository - used for processing TypeDef events
-     * @param saveExchangeRule - rule that determines which events to process.
-     * @param outboundRepositoryEventManager - event manager to call for outbound events - used to send out reports
-     *                                       of conflicting TypeDefs
-     */
-    public void setupEventProcessor(LocalOMRSRepositoryConnector      localRepositoryConnector,
-                                    OMRSRepositoryConnector           realLocalConnector,
-                                    OMRSRepositoryEventExchangeRule   saveExchangeRule,
-                                    OMRSRepositoryEventManager        outboundRepositoryEventManager)
-    {
-        this.localRepositoryConnector = localRepositoryConnector;
-        this.realLocalConnector = realLocalConnector;
-        this.saveExchangeRule = saveExchangeRule;
-        this.outboundRepositoryEventManager = outboundRepositoryEventManager;
-    }
-
-
-    /**
-     * Save the unique identifier of the open metadata archive.  This is stored in the origin property of
-     * all of the open metadata types.  It is needed to support the isOpenType() method.
-     *
-     * @param openMetadataTypesGUID - unique identifier for the open metadata type's archive
-     */
-    public void setOpenMetadataTypesOriginGUID(String openMetadataTypesGUID)
-    {
-        openTypesOriginGUID = openMetadataTypesGUID;
-    }
-
-
-    /*
-     * ========================
-     * OMRSTypeDefManager
-     */
-
-    /**
-     * Cache a definition of a new TypeDef.  This method assumes the TypeDef has been successfully added to the
-     * local repository already and all that is needed is to maintain the cached list of types
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param newTypeDef - TypeDef structure describing the new TypeDef.
-     */
-    public void addTypeDef(String  sourceName, TypeDef      newTypeDef)
-    {
-        if (this.validTypeDef(sourceName, newTypeDef))
-        {
-            knownTypeDefGUIDs.put(newTypeDef.getGUID(), newTypeDef);
-            knownTypeDefNames.put(newTypeDef.getName(), newTypeDef);
-
-            if (localRepositoryConnector != null)
-            {
-                activeTypeDefGUIDs.put(newTypeDef.getGUID(), newTypeDef);
-                activeTypeDefNames.put(newTypeDef.getName(), newTypeDef);
-
-                if (log.isDebugEnabled())
-                {
-                    log.debug("New Active Type " + newTypeDef.getName() + " from " + sourceName, newTypeDef);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * Cache a definition of a new AttributeTypeDef.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param newAttributeTypeDef - AttributeTypeDef structure describing the new TypeDef.
-     */
-    public void addAttributeTypeDef(String  sourceName, AttributeTypeDef newAttributeTypeDef)
-    {
-        if (this.validAttributeTypeDef(sourceName, newAttributeTypeDef))
-        {
-            knownAttributeTypeDefGUIDs.put(newAttributeTypeDef.getGUID(), newAttributeTypeDef);
-            knownAttributeTypeDefNames.put(newAttributeTypeDef.getName(), newAttributeTypeDef);
-
-            if (localRepositoryConnector != null)
-            {
-                activeAttributeTypeDefGUIDs.put(newAttributeTypeDef.getGUID(), newAttributeTypeDef);
-                activeAttributeTypeDefNames.put(newAttributeTypeDef.getName(), newAttributeTypeDef);
-
-                if (log.isDebugEnabled())
-                {
-                    log.debug("New Active Attribute Type " + newAttributeTypeDef.getName() + " from " + sourceName, newAttributeTypeDef);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * Update one or more properties of a cached TypeDef.  This method assumes the TypeDef has been successfully
-     * updated in the local repository already and all that is needed is to maintain the cached list of types
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDef - TypeDef structure.
-     */
-    public void updateTypeDef(String  sourceName, TypeDef   typeDef)
-    {
-        if (this.validTypeDef(sourceName, typeDef))
-        {
-            knownTypeDefGUIDs.put(typeDef.getGUID(), typeDef);
-            knownTypeDefNames.put(typeDef.getName(), typeDef);
-
-            if (localRepositoryConnector != null)
-            {
-                activeTypeDefGUIDs.put(typeDef.getGUID(), typeDef);
-                activeTypeDefNames.put(typeDef.getName(), typeDef);
-
-                if (log.isDebugEnabled())
-                {
-                    log.debug("Updated Active Type " + typeDef.getName() + " from " + sourceName, typeDef);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * Delete a cached TypeDef.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param obsoleteTypeDefGUID - String unique identifier for the TypeDef.
-     * @param obsoleteTypeDefName - String unique name for the TypeDef.
-     */
-    public void deleteTypeDef(String    sourceName,
-                              String    obsoleteTypeDefGUID,
-                              String    obsoleteTypeDefName)
-    {
-        if (this.validTypeId(sourceName, obsoleteTypeDefGUID, obsoleteTypeDefName))
-        {
-            knownTypeDefGUIDs.remove(obsoleteTypeDefGUID);
-            knownTypeDefNames.remove(obsoleteTypeDefName);
-
-            if (localRepositoryConnector != null)
-            {
-                activeTypeDefGUIDs.remove(obsoleteTypeDefGUID);
-                activeTypeDefNames.remove(obsoleteTypeDefName);
-
-                if (log.isDebugEnabled())
-                {
-                    log.debug("Deleted Active TypeDef " + obsoleteTypeDefName + " from " + sourceName);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * Delete a cached AttributeTypeDef.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param obsoleteAttributeTypeDefGUID - String unique identifier for the AttributeTypeDef.
-     * @param obsoleteAttributeTypeDefName - String unique name for the AttributeTypeDef.
-     */
-    public void deleteAttributeTypeDef(String    sourceName,
-                                       String    obsoleteAttributeTypeDefGUID,
-                                       String    obsoleteAttributeTypeDefName)
-    {
-        if (this.validTypeId(sourceName, obsoleteAttributeTypeDefGUID, obsoleteAttributeTypeDefName))
-        {
-            knownAttributeTypeDefGUIDs.remove(obsoleteAttributeTypeDefGUID);
-            knownAttributeTypeDefNames.remove(obsoleteAttributeTypeDefName);
-
-            if (localRepositoryConnector != null)
-            {
-                activeAttributeTypeDefGUIDs.remove(obsoleteAttributeTypeDefGUID);
-                activeAttributeTypeDefNames.remove(obsoleteAttributeTypeDefName);
-
-                if (log.isDebugEnabled())
-                {
-                    log.debug("Deleted Active AttributeTypeDef " + obsoleteAttributeTypeDefName + " from " + sourceName);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * Change the identifiers for a TypeDef.
-     *
-     * @param sourceName - source of the request (used for logging).
-     * @param originalTypeDefGUID - TypeDef's original unique identifier.
-     * @param originalTypeDefName - TypeDef's original unique name.
-     * @param newTypeDef - updated TypeDef with new identifiers.
-     */
-    public void reIdentifyTypeDef(String   sourceName,
-                                  String   originalTypeDefGUID,
-                                  String   originalTypeDefName,
-                                  TypeDef  newTypeDef)
-    {
-        this.deleteTypeDef(sourceName, originalTypeDefGUID, originalTypeDefName);
-        this.addTypeDef(sourceName, newTypeDef);
-    }
-
-
-    /**
-     * Change the identifiers for an AttributeTypeDef.
-     *
-     * @param sourceName - source of the request (used for logging).
-     * @param originalAttributeTypeDefGUID - AttributeTypeDef's original unique identifier.
-     * @param originalAttributeTypeDefName - AttributeTypeDef's original unique name.
-     * @param newAttributeTypeDef - updated AttributeTypeDef with new identifiers
-     */
-    public void reIdentifyAttributeTypeDef(String            sourceName,
-                                           String            originalAttributeTypeDefGUID,
-                                           String            originalAttributeTypeDefName,
-                                           AttributeTypeDef  newAttributeTypeDef)
-    {
-        this.deleteAttributeTypeDef(sourceName, originalAttributeTypeDefGUID, originalAttributeTypeDefName);
-        this.addAttributeTypeDef(sourceName, newAttributeTypeDef);
-    }
-
-
-    /**
-     * Return the list of property names defined for this TypeDef.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDef - type definition to work with.
-     * @return list of String property names
-     * @throws TypeErrorException - there is an issue with the TypeDef.
-     */
-    private List<String>  getPropertyNames(String sourceName, TypeDef   typeDef) throws TypeErrorException
-    {
-        final  String                  methodName = "getPropertyNames()";
-        List<String>              propertyNames = null;
-
-        if (validTypeDef(sourceName, typeDef))
-        {
-            List<TypeDefAttribute>    propertiesDefinition = typeDef.getPropertiesDefinition();
-
-            if ((propertiesDefinition != null) && (propertiesDefinition.size() > 0))
-            {
-                propertyNames = new ArrayList<>();
-
-                for (TypeDefAttribute  propertyDefinition : propertiesDefinition)
-                {
-                    if (propertyDefinition != null)
-                    {
-                        String propertyName = propertyDefinition.getAttributeName();
-
-                        if (propertyName != null)
-                        {
-                            if (log.isDebugEnabled())
-                            {
-                                log.debug(typeDef.getName()  + " from " + sourceName + " has property " + propertyName);
-                            }
-                            propertyNames.add(propertyName);
-                        }
-                        else
-                        {
-                            OMRSErrorCode errorCode = OMRSErrorCode.BAD_TYPEDEF_ATTRIBUTE_NAME;
-                            String errorMessage = errorCode.getErrorMessageId()
-                                                + errorCode.getFormattedErrorMessage(sourceName);
-
-                            throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                                         this.getClass().getName(),
-                                                         methodName,
-                                                         errorMessage,
-                                                         errorCode.getSystemAction(),
-                                                         errorCode.getUserAction());
-                        }
-                    }
-                    else
-                    {
-                        OMRSErrorCode errorCode = OMRSErrorCode.NULL_TYPEDEF_ATTRIBUTE;
-                        String errorMessage = errorCode.getErrorMessageId()
-                                            + errorCode.getFormattedErrorMessage(sourceName);
-
-                        throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                                     this.getClass().getName(),
-                                                     methodName,
-                                                     errorMessage,
-                                                     errorCode.getSystemAction(),
-                                                     errorCode.getUserAction());
-                    }
-                }
-
-                /*
-                 * If no property names have been extracted then remove the array.
-                 */
-                if (propertyNames.size() == 0)
-                {
-                    propertyNames = null;
-                }
-            }
-        }
-        else
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.BAD_TYPEDEF;
-            String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage(sourceName);
-
-            throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                         this.getClass().getName(),
-                                         methodName,
-                                         errorMessage,
-                                         errorCode.getSystemAction(),
-                                         errorCode.getUserAction());
-        }
-
-        return propertyNames;
-    }
-
-
-    /**
-     * Return identifiers for the TypeDef that matches the supplied type name.  If the type name is not recognized,
-     * null is returned.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param category - category of the instance type required.
-     * @param typeName - String type name.
-     * @param methodName - name of calling method.
-     * @return InstanceType object containing TypeDef properties such as unique identifier (guid),
-     *                             typeDef name and version name
-     * @throws TypeErrorException - the type name is not a recognized type or is of the wrong category or there is
-     *                              a problem with the cached TypeDef.
-     */
-    public InstanceType getInstanceType(String           sourceName,
-                                        TypeDefCategory  category,
-                                        String           typeName,
-                                        String           methodName) throws TypeErrorException
-    {
-        final String thisMethodName = "getInstanceType";
-
-        if (isValidTypeCategory(sourceName, category, typeName, methodName))
-        {
-            TypeDef typeDef = knownTypeDefNames.get(typeName);
-
-            if (typeDef != null)
-            {
-                InstanceType    instanceType = new InstanceType();
-
-                instanceType.setTypeDefCategory(category);
-                instanceType.setTypeDefGUID(typeDef.getGUID());
-                instanceType.setTypeDefName(typeDef.getName());
-                instanceType.setTypeDefVersion(typeDef.getVersion());
-                instanceType.setTypeDefDescription(typeDef.getDescription());
-                instanceType.setTypeDefDescriptionGUID(typeDef.getDescriptionGUID());
-
-                /*
-                 * Extract the properties for this TypeDef.  These will be augmented with property names
-                 * from the super type(s).
-                 */
-                List<String>      propertyNames = this.getPropertyNames(sourceName, typeDef);
-
-                /*
-                 * If propertyNames is null, it means the TypeDef has no attributes.  However the superType
-                 * may have attributes and so we need an array to accumulate the attributes into.
-                 */
-                if (propertyNames == null)
-                {
-                    propertyNames = new ArrayList<>();
-                }
-
-                /*
-                 * Work up the TypeDef hierarchy extracting the property names and super type names.
-                 */
-                List<TypeDefLink>      superTypes    = new ArrayList<>();
-                TypeDefLink            superTypeLink = typeDef.getSuperType();
-
-                while (superTypeLink != null)
-                {
-                    String             superTypeName = superTypeLink.getName();
-
-                    if (superTypeName != null)
-                    {
-                        if (log.isDebugEnabled())
-                        {
-                            log.debug(typeName + " from " + sourceName + " has super type " + superTypeName);
-                        }
-
-                        /*
-                         * Save the name of the super type into the instance type
-                         */
-                        superTypes.add(superTypeLink);
-
-                        /*
-                         * Retrieve the TypeDef for this super type
-                         */
-                        TypeDef         superTypeDef  = knownTypeDefNames.get(superTypeName);
-
-                        if (superTypeDef != null)
-                        {
-                            List<String>      superTypePropertyNames = this.getPropertyNames(sourceName, superTypeDef);
-
-                            if (superTypePropertyNames != null)
-                            {
-                                propertyNames.addAll(0, superTypePropertyNames);
-                            }
-
-                            /*
-                             * Retrieve the super type for this typeDef.  It will be null if the type is top-level.
-                             */
-                            superTypeLink = superTypeDef.getSuperType();
-                        }
-                        else
-                        {
-                            /*
-                             * Super type not known so stop processing
-                             */
-                            log.error(superTypeName + " is not known");
-                            throwContentManagerLogicError(sourceName, methodName, thisMethodName);
-                        }
-                    }
-                    else
-                    {
-                        /*
-                         * Super type is invalid - corrupted cache
-                         */
-                        log.error("Corrupted TypeDef cache");
-                        throwContentManagerLogicError(sourceName, methodName, thisMethodName);
-                    }
-                }
-
-                /*
-                 * Make sure empty lists are converted to nulls
-                 */
-
-                if (superTypes.size() > 0)
-                {
-                    instanceType.setTypeDefSuperTypes(superTypes);
-                }
-
-                if (propertyNames.size() > 0)
-                {
-                    instanceType.setValidInstanceProperties(propertyNames);
-                }
-
-                return instanceType;
-            }
-            else
-            {
-                log.error("TypeDef " + typeName + " already validated");
-                throwContentManagerLogicError(sourceName, methodName, thisMethodName);
-            }
-        }
-        else
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.BAD_CATEGORY_FOR_TYPEDEF_ATTRIBUTE;
-            String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage(sourceName, typeName, category.getTypeName());
-
-            throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                         this.getClass().getName(),
-                                         methodName,
-                                         errorMessage,
-                                         errorCode.getSystemAction(),
-                                         errorCode.getUserAction());
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Return a boolean indicating that the type name matches the category.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param category - TypeDefCategory enum value to test
-     * @param typeName - type name to test
-     * @return - boolean flag indicating that the type name is of the specified category
-     * @throws TypeErrorException - the type name is not a recognized type or there is
-     *                              a problem with the cached TypeDef.
-     */
-    public boolean    isValidTypeCategory(String            sourceName,
-                                          TypeDefCategory   category,
-                                          String            typeName,
-                                          String            methodName) throws TypeErrorException
-    {
-        final String  thisMethodName = "isValidTypeCategory";
-
-        if (category == null)
-        {
-            throwContentManagerLogicError(sourceName, methodName, thisMethodName);
-            return false;
-        }
-
-        if (typeName == null)
-        {
-            throwContentManagerLogicError(sourceName, methodName, thisMethodName);
-            return false;
-        }
-
-        TypeDef   typeDef = knownTypeDefNames.get(typeName);
-
-        if (typeDef != null)
-        {
-            TypeDefCategory  retrievedTypeDefCategory = typeDef.getCategory();
-
-            if (retrievedTypeDefCategory != null)
-            {
-                return (category.getTypeCode() == retrievedTypeDefCategory.getTypeCode());
-            }
-            else
-            {
-                throwContentManagerLogicError(sourceName, methodName, thisMethodName);
-            }
-        }
-        else
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.TYPEDEF_NOT_KNOWN_FOR_INSTANCE;
-            String errorMessage = errorCode.getErrorMessageId()
-                    + errorCode.getFormattedErrorMessage(typeName,
-                                                         category.getTypeName(),
-                                                         methodName,
-                                                         sourceName);
-
-            throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                         this.getClass().getName(),
-                                         methodName,
-                                         errorMessage,
-                                         errorCode.getSystemAction(),
-                                         errorCode.getUserAction());
-        }
-
-        return false;
-    }
-
-
-    /**
-     * Return boolean indicating if a classification type can be applied to a specified entity.  This
-     * uses the list of valid entity types located in the ClassificationDef.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param classificationTypeName - name of the classification's type (ClassificationDef)
-     * @param entityTypeName - name of the entity's type (EntityDef)
-     * @param methodName - name of calling method.
-     * @return boolean indicating if the classification is valid for the entity.
-     */
-    public boolean    isValidClassificationForEntity(String  sourceName,
-                                                     String  classificationTypeName,
-                                                     String  entityTypeName,
-                                                     String  methodName)
-    {
-        final String  thisMethodName = "isValidClassificationForEntity";
-
-        try
-        {
-            if ((isValidTypeCategory(sourceName, TypeDefCategory.CLASSIFICATION_DEF, classificationTypeName, methodName)) &&
-                (isValidTypeCategory(sourceName, TypeDefCategory.ENTITY_DEF, entityTypeName, methodName)))
-            {
-                ClassificationDef  classificationTypeDef = (ClassificationDef) knownTypeDefNames.get(classificationTypeName);
-
-                if (classificationTypeDef != null)
-                {
-                    List<TypeDefLink>   entityDefs = classificationTypeDef.getValidEntityDefs();
-
-                    if (entityDefs == null)
-                    {
-                        /*
-                         * The classification has no restrictions on which entities it can be attached to.
-                         */
-                        return true;
-                    }
-                    else
-                    {
-                        /*
-                         * The classification can only be attached to the entities listed.  Note an empty list
-                         * means the classification can not be attached to any entity and it is effectively useless.
-                         */
-                        for (TypeDefLink  allowedEntity : entityDefs)
-                        {
-                            if (allowedEntity != null)
-                            {
-                                if (entityTypeName.equals(allowedEntity.getName()))
-                                {
-                                    return true;
-                                }
-                            }
-                        }
-
-                        return false;
-                    }
-                }
-                else
-                {
-                    throwContentManagerLogicError(sourceName, methodName, thisMethodName);
-                    return false;
-                }
-            }
-            else
-            {
-                return false;
-            }
-        }
-        catch (TypeErrorException   typeError)
-        {
-            throwContentManagerLogicError(sourceName, methodName, thisMethodName);
-            return false;
-        }
-        catch (ClassCastException   castError)
-        {
-            throwContentManagerLogicError(sourceName, methodName, thisMethodName);
-            return false;
-        }
-    }
-
-
-    /**
-     * Return the requested type.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeName - name of the type
-     * @param thisMethodName - name of calling method.
-     * @param originalMethodName - name of original calling method.
-     * @return list of InstanceStatus enums
-     * @throws TypeErrorException - the type name is not recognized.
-     */
-    private TypeDef getTypeDefFromCache(String  sourceName,
-                                        String  typeName,
-                                        String  thisMethodName,
-                                        String  originalMethodName) throws TypeErrorException
-    {
-        if (typeName == null)
-        {
-            this.throwContentManagerLogicError(sourceName, thisMethodName, originalMethodName);
-        }
-
-        TypeDef   typeDef = knownTypeDefNames.get(typeName);
-
-        if (typeDef == null)
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.TYPEDEF_NAME_NOT_KNOWN;
-            String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage(typeName, originalMethodName, sourceName);
-
-            throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                         this.getClass().getName(),
-                                         originalMethodName,
-                                         errorMessage,
-                                         errorCode.getSystemAction(),
-                                         errorCode.getUserAction());
-        }
-
-        return typeDef;
-    }
-
-
-    /**
-     * Return the list of valid InstanceStatus states that instances of this type can handle.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeName - name of the type
-     * @param methodName - name of calling method.
-     * @return list of InstanceStatus enums
-     * @throws TypeErrorException - the type name is not recognized.
-     */
-    public List<InstanceStatus> getValidStatusList(String  sourceName,
-                                                   String  typeName,
-                                                   String  methodName) throws TypeErrorException
-    {
-        final String thisMethodName = "validStatusList";
-
-        TypeDef   typeDef = this.getTypeDefFromCache(sourceName, typeName, thisMethodName, methodName);
-
-        return typeDef.getValidInstanceStatusList();
-    }
-
-
-    /**
-     * Return the initial status value to use for an instance of the supplied type.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeName - name of the type to extract the initial status from.
-     * @param methodName - calling method
-     * @return InstanceStatus enum
-     * @throws TypeErrorException - the type name is not recognized.
-     */
-    public InstanceStatus getInitialStatus(String sourceName,
-                                           String typeName,
-                                           String methodName) throws TypeErrorException
-    {
-        final String thisMethodName = "getInitialStatus";
-
-        TypeDef   typeDef = this.getTypeDefFromCache(sourceName, typeName, thisMethodName, methodName);
-
-        return typeDef.getInitialStatus();
-    }
-
-
-    /**
-     * Return the URL string to use for direct access to the metadata instance.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param guid - unique identifier for the instance.
-     * @return String URL with placeholder for variables such as userId.
-     */
-    public String getEntityURL(String  sourceName, String guid)
-    {
-        return OMRSRepositoryRESTServices.getEntityURL(guid);
-    }
-
-
-    /**
-     * Return the URL string to use for direct access to the metadata instance.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param guid - unique identifier for the instance.
-     * @return String URL with placeholder for variables such as userId.
-     */
-    public String getRelationshipURL(String  sourceName, String guid)
-    {
-        return OMRSRepositoryRESTServices.getRelationshipURL(guid);
-    }
-
-
-    /*
-     * ========================
-     * OMRSTypeDefHelper
-     */
-
-
-    /**
-     * Return the list of typedefs known by the local repository.
-     *
-     * @return TypeDef gallery
-     */
-    public TypeDefGallery   getActiveTypeDefGallery()
-    {
-        TypeDefGallery               typeDefGallery               = new TypeDefGallery();
-
-        if (! activeAttributeTypeDefNames.isEmpty())
-        {
-            typeDefGallery.setAttributeTypeDefs(new ArrayList<>(activeAttributeTypeDefNames.values()));
-        }
-
-        if (! activeTypeDefNames.isEmpty())
-        {
-            typeDefGallery.setTypeDefs(new ArrayList<>(activeTypeDefNames.values()));
-        }
-
-        return typeDefGallery;
-    }
-
-
-    /**
-     * Return the list of typedefs known by the local repository.
-     *
-     * @return TypeDef gallery
-     */
-    public TypeDefGallery   getKnownTypeDefGallery()
-    {
-        TypeDefGallery               typeDefGallery               = new TypeDefGallery();
-
-        if (! knownAttributeTypeDefNames.isEmpty())
-        {
-            typeDefGallery.setAttributeTypeDefs(new ArrayList<>(knownAttributeTypeDefNames.values()));
-        }
-
-        if (! knownTypeDefNames.isEmpty())
-        {
-            typeDefGallery.setTypeDefs(new ArrayList<>(knownTypeDefNames.values()));
-        }
-
-        return typeDefGallery;
-    }
-
-
-    /**
-     * Return the TypeDef identified by the name supplied by the caller.  This is used in the connectors when
-     * validating the actual types of the repository with the known open metadata types - looking specifically
-     * for types of the same name but with different content.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefName - unique name for the TypeDef
-     * @return TypeDef object or null if TypeDef is not known.
-     */
-    public TypeDef  getTypeDefByName (String    sourceName,
-                                      String    typeDefName)
-    {
-        return knownTypeDefNames.get(typeDefName);
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the name supplied by the caller.  This is used in the connectors when
-     * validating the actual types of the repository with the known open metadata types - looking specifically
-     * for types of the same name but with different content.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDefName - unique name for the TypeDef
-     * @return AttributeTypeDef object or null if AttributeTypeDef is not known.
-     */
-    public AttributeTypeDef getAttributeTypeDefByName (String    sourceName,
-                                                       String    attributeTypeDefName)
-    {
-        return knownAttributeTypeDefNames.get(attributeTypeDefName);
-    }
-
-
-    /**
-     * Return the TypeDefs identified by the name supplied by the caller.  The TypeDef name may have wild
-     * card characters in it which is why the results are returned in a list.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefName - unique name for the TypeDef
-     * @return TypeDef object or null if TypeDef is not known.
-     */
-    public TypeDefGallery getActiveTypesByWildCardName (String    sourceName,
-                                                        String    typeDefName)
-    {
-        if (typeDefName != null)
-        {
-            Collection<TypeDef>   typeDefs       = activeTypeDefNames.values();
-
-            List<TypeDef>         matchedTypeDefs = new ArrayList<>();
-            for (TypeDef typeDef : typeDefs)
-            {
-                if (typeDef != null)
-                {
-                    if (typeDef.getName().matches(typeDefName))
-                    {
-                        matchedTypeDefs.add(typeDef);
-                    }
-                }
-            }
-
-            Collection<AttributeTypeDef>   attributeTypeDefs        = activeAttributeTypeDefNames.values();
-            List<AttributeTypeDef>         matchedAttributeTypeDefs = new ArrayList<>();
-
-            for (AttributeTypeDef attributeTypeDef : attributeTypeDefs)
-            {
-                if (attributeTypeDef != null)
-                {
-                    if (attributeTypeDef.getName().matches(typeDefName))
-                    {
-                        matchedAttributeTypeDefs.add(attributeTypeDef);
-                    }
-                }
-            }
-
-            if ((! matchedTypeDefs.isEmpty()) || (! matchedAttributeTypeDefs.isEmpty()))
-            {
-                TypeDefGallery        typeDefGallery = new TypeDefGallery();
-
-                if (! matchedTypeDefs.isEmpty())
-                {
-                    typeDefGallery.setTypeDefs(matchedTypeDefs);
-                }
-                else
-                {
-                    typeDefGallery.setTypeDefs(null);
-                }
-
-                if (! matchedAttributeTypeDefs.isEmpty())
-                {
-                    typeDefGallery.setAttributeTypeDefs(matchedAttributeTypeDefs);
-                }
-                else
-                {
-                    typeDefGallery.setAttributeTypeDefs(null);
-                }
-
-                return typeDefGallery;
-            }
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Return the TypeDef identified by the guid supplied by the caller.  This call is used when
-     * retrieving a type that only the guid is known.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefGUID - unique identifier for the TypeDef
-     * @param methodName - calling method
-     * @return TypeDef object
-     * @throws TypeErrorException - unknown or invalid type
-     */
-    public TypeDef  getTypeDef (String    sourceName,
-                                String    guidParameterName,
-                                String    typeDefGUID,
-                                String    methodName) throws TypeErrorException
-    {
-        final String thisMethodName = "getTypeDef";
-
-        if (typeDefGUID != null)
-        {
-            TypeDef typeDef = knownTypeDefGUIDs.get(typeDefGUID);
-
-            if (typeDef == null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.TYPEDEF_ID_NOT_KNOWN;
-                String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(typeDefGUID,
-                                                                                                         guidParameterName,
-                                                                                                         methodName,
-                                                                                                         sourceName);
-
-                throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                             this.getClass().getName(),
-                                             methodName,
-                                             errorMessage,
-                                             errorCode.getSystemAction(),
-                                             errorCode.getUserAction());
-            }
-
-            return typeDef;
-        }
-
-        throwContentManagerLogicError(sourceName, methodName, thisMethodName);
-        return null;
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the guid and name supplied by the caller.  This call is used when
-     * retrieving a type that only the guid is known.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDefGUID - unique identifier for the AttributeTypeDef
-     * @param methodName - calling method
-     * @return TypeDef object
-     * @throws TypeErrorException - unknown or invalid type
-     */
-    public AttributeTypeDef  getAttributeTypeDef (String    sourceName,
-                                                  String    attributeTypeDefGUID,
-                                                  String    methodName) throws TypeErrorException
-    {
-        final String thisMethodName = "getAttributeTypeDef";
-
-        if (attributeTypeDefGUID != null)
-        {
-            AttributeTypeDef attributeTypeDef = knownAttributeTypeDefGUIDs.get(attributeTypeDefGUID);
-
-            if (attributeTypeDef == null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.BAD_TYPEDEF;
-                String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(sourceName);
-
-                throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                             this.getClass().getName(),
-                                             methodName,
-                                             errorMessage,
-                                             errorCode.getSystemAction(),
-                                             errorCode.getUserAction());
-            }
-
-            return attributeTypeDef;
-        }
-
-        throwContentManagerLogicError(sourceName, methodName, thisMethodName);
-        return null;
-    }
-
-    /**
-     * Return the TypeDef identified by the guid and name supplied by the caller.  This call is used when
-     * retrieving a type that should exist.  For example, retrieving the type of a metadata instance.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeDefGUID - unique identifier for the TypeDef
-     * @param typeDefName - unique name for the TypeDef
-     * @param methodName - calling method
-     * @return TypeDef object or null if the
-     * @throws TypeErrorException - invalid type
-     */
-    public TypeDef  getTypeDef (String    sourceName,
-                                String    guidParameterName,
-                                String    nameParameterName,
-                                String    typeDefGUID,
-                                String    typeDefName,
-                                String    methodName) throws TypeErrorException
-    {
-        if (validTypeId(sourceName, typeDefGUID, typeDefName))
-        {
-            return knownTypeDefNames.get(typeDefName);
-        }
-        else
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.BAD_TYPEDEF;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(sourceName);
-
-            throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                         this.getClass().getName(),
-                                         methodName,
-                                         errorMessage,
-                                         errorCode.getSystemAction(),
-                                         errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the guid and name supplied by the caller.  This call is used when
-     * retrieving a type that should exist.  For example, retrieving the type definition of a metadata instance's
-     * property.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDefGUID - unique identifier for the AttributeTypeDef
-     * @param attributeTypeDefName - unique name for the AttributeTypeDef
-     * @param methodName - calling method
-     * @return TypeDef object
-     * @throws TypeErrorException - unknown or invalid type
-     */
-    public  AttributeTypeDef  getAttributeTypeDef (String    sourceName,
-                                                   String    attributeTypeDefGUID,
-                                                   String    attributeTypeDefName,
-                                                   String    methodName) throws TypeErrorException
-    {
-        if (validTypeId(sourceName, attributeTypeDefGUID, attributeTypeDefName))
-        {
-            return knownAttributeTypeDefNames.get(attributeTypeDefName);
-        }
-        else
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.BAD_TYPEDEF;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(sourceName);
-
-            throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                         this.getClass().getName(),
-                                         methodName,
-                                         errorMessage,
-                                         errorCode.getSystemAction(),
-                                         errorCode.getUserAction());
-        }
-    }
-
-
-    /*
-     * =======================
-     * OMRSTypeDefValidator
-     */
-
-
-    /**
-     * Return a boolean flag indicating whether the list of TypeDefs passed are compatible with the
-     * all known typedefs.
-     *
-     * A valid TypeDef is one that matches name, GUID and version to the full list of TypeDefs.
-     * If a new TypeDef is present, it is added to the enterprise list.
-     *
-     * @param sourceName - source of the TypeDef (used for logging)
-     * @param typeDefs - list of TypeDefs.
-     * @throws RepositoryErrorException - a conflicting or invalid TypeDef has been returned
-     */
-    public void   validateEnterpriseTypeDefs(String        sourceName,
-                                             List<TypeDef> typeDefs,
-                                             String        methodName) throws RepositoryErrorException
-    {
-        for (TypeDef typeDef : typeDefs)
-        {
-            if (validTypeId(sourceName, typeDef.getGUID(), typeDef.getName()))
-            {
-                if (!isKnownType(sourceName, typeDef.getGUID(), typeDef.getName()))
-                {
-                    knownTypeDefNames.put(typeDef.getName(), typeDef);
-                }
-            }
-            else
-            {
-                OMRSErrorCode errorCode    = OMRSErrorCode.CONFLICTING_ENTERPRISE_TYPEDEFS;
-                String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-                throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                                   this.getClass().getName(),
-                                                   methodName,
-                                                   errorMessage,
-                                                   errorCode.getSystemAction(),
-                                                   errorCode.getUserAction());
-            }
-        }
-    }
-
-
-    /**
-     * Return a boolean flag indicating whether the list of TypeDefs passed are compatible with the
-     * all known typedefs.
-     *
-     * A valid TypeDef is one that matches name, GUID and version to the full list of TypeDefs.
-     * If a new TypeDef is present, it is added to the enterprise list.
-     *
-     * @param sourceName - source of the TypeDef (used for logging)
-     * @param attributeTypeDefs - list of AttributeTypeDefs.
-     * @throws RepositoryErrorException - a conflicting or invalid AttributeTypeDef has been returned
-     */
-    public void   validateEnterpriseAttributeTypeDefs(String                 sourceName,
-                                                      List<AttributeTypeDef> attributeTypeDefs,
-                                                      String                 methodName) throws RepositoryErrorException
-    {
-        for (AttributeTypeDef attributeTypeDef : attributeTypeDefs)
-        {
-            if (validTypeId(sourceName, attributeTypeDef.getGUID(), attributeTypeDef.getName()))
-            {
-                if (!isKnownType(sourceName, attributeTypeDef.getGUID(), attributeTypeDef.getName()))
-                {
-                    knownAttributeTypeDefNames.put(attributeTypeDef.getName(), attributeTypeDef);
-                }
-            }
-            else
-            {
-                OMRSErrorCode errorCode    = OMRSErrorCode.CONFLICTING_ENTERPRISE_TYPEDEFS;
-                String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-                throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                                   this.getClass().getName(),
-                                                   methodName,
-                                                   errorMessage,
-                                                   errorCode.getSystemAction(),
-                                                   errorCode.getUserAction());
-            }
-        }
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef is one of the standard open metadata types.
-     *
-     * @param sourceName - source of the TypeDef (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @param typeName - unique name of the type
-     * @return boolean result
-     */
-    public boolean isOpenType(String sourceName, String typeGUID, String typeName)
-    {
-        if (validTypeId(sourceName, typeGUID, typeName))
-        {
-            TypeDef typeDef = knownTypeDefNames.get(typeName);
-
-            if (typeDef == null)
-            {
-                return false;
-            }
-
-            if (openTypesOriginGUID != null)
-            {
-                if (openTypesOriginGUID.equals(typeDef.getOrigin()))
-                {
-                    log.debug("TypeDef " + typeName + " (GUID = " + typeGUID + ") from " + sourceName + " is an open type");
-                    return true;
-                }
-                else
-                {
-                    log.debug("TypeDef " + typeName + " (GUID = " + typeGUID + ") from " + sourceName + " is NOT an open type");
-                }
-            }
-        }
-
-        return false;
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef is one of the standard open metadata types.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @return boolean result
-     */
-    public boolean isOpenTypeId(String  sourceName, String   typeGUID)
-    {
-        if (typeGUID != null)
-        {
-            TypeDef typeDef = knownTypeDefGUIDs.get(typeGUID);
-            if (typeDef != null)
-            {
-                String originGUID = typeDef.getOrigin();
-
-                if (originGUID != null)
-                {
-                    if (originGUID.equals(openTypesOriginGUID))
-                    {
-                        return true;
-                    }
-                }
-            }
-        }
-
-        return false;
-    }
-
-
-    /**
-     * Return boolean indicating whether the (AttributeTypeDef/TypeDef is known, either as an open type, or one defined
-     * by one or more of the members of the cohort.
-     *
-     * @param sourceName - source of the TypeDef (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @param typeName - unique name of the type
-     * @return boolean result
-     */
-    public boolean isKnownType(String sourceName, String typeGUID, String typeName)
-    {
-        if (this.validTypeId(sourceName, typeGUID, typeName))
-        {
-            TypeDef  typeDef = knownTypeDefNames.get(typeName);
-
-            if (typeDef == null)
-            {
-                AttributeTypeDef  attributeTypeDef = knownAttributeTypeDefNames.get(typeName);
-
-                if (attributeTypeDef == null)
-                {
-                    log.debug("Unknown (Attribute)TypeDef " + typeName + " (GUID = " + typeGUID + ") from " + sourceName);
-                    return false;
-                }
-                else
-                {
-                    log.debug("Known AttributeTypeDef " + typeName + " (GUID = " + typeGUID + ") from " + sourceName);
-                    return true;
-                }
-            }
-            else
-            {
-                log.debug("Known TypeDef " + typeName + " (GUID = " + typeGUID + ") from " + sourceName);
-                return true;
-            }
-        }
-        else
-        {
-            log.error("Invalid TypeDef  from " + sourceName + " so can not validate known type");
-
-            return false;
-        }
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef/AttributeTypeDef is known, either as an open type, or one defined
-     * by one or more of the members of the cohort.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @return boolean result
-     */
-    public boolean isKnownTypeId(String  sourceName, String   typeGUID)
-    {
-        if (typeGUID != null)
-        {
-            if (knownTypeDefGUIDs.get(typeGUID) != null)
-            {
-                return true;
-            }
-
-            if (knownAttributeTypeDefGUIDs.get(typeGUID) != null)
-            {
-                return true;
-            }
-        }
-
-        return false;
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef is in use in the repository.
-     *
-     * @param sourceName - source of the TypeDef (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @param typeName - unique name of the type
-     * @return boolean result
-     */
-    public boolean isActiveType(String sourceName, String typeGUID, String typeName)
-    {
-        if (this.validTypeId(sourceName, typeGUID, typeName))
-        {
-            TypeDef  typeDef = activeTypeDefNames.get(typeName);
-
-            if (typeDef == null)
-            {
-                AttributeTypeDef  attributeTypeDef = activeAttributeTypeDefNames.get(typeName);
-
-                if (attributeTypeDef == null)
-                {
-                    log.debug("Inactive (Attribute)TypeDef " + typeName + " (GUID = " + typeGUID + ") from " + sourceName);
-                    return false;
-                }
-                else
-                {
-                    log.debug("Active AttributeTypeDef " + typeName + " (GUID = " + typeGUID + ") from " + sourceName);
-                    return true;
-                }
-            }
-            else
-            {
-                log.debug("Active TypeDef " + typeName + " (GUID = " + typeGUID + ") from " + sourceName);
-                return true;
-            }
-        }
-        else
-        {
-            log.error("Invalid TypeDef  from " + sourceName + " so can not validate active type");
-
-            return false;
-        }
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef/AttributeTypeDef is in use in the local repository.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param typeGUID - unique identifier of the type
-     * @return boolean result
-     */
-    public boolean isActiveTypeId(String  sourceName, String   typeGUID)
-    {
-        if (typeGUID != null)
-        {
-            if (activeTypeDefGUIDs.get(typeGUID) != null)
-            {
-                return true;
-            }
-
-            if (activeAttributeTypeDefGUIDs.get(typeGUID) != null)
-            {
-                return true;
-            }
-        }
-
-        return false;
-    }
-
-    /**
-     * Return boolean indicating whether the (Attribute)TypeDef identifiers are valid or not.
-     *
-     * @param sourceName - source of the TypeDef (used for logging)
-     * @param typeGUID - unique identifier of the TypeDef
-     * @param typeName - unique name of the TypeDef
-     * @return boolean result
-     */
-    public boolean validTypeId(String          sourceName,
-                               String typeGUID,
-                               String typeName)
-    {
-        if (typeName == null)
-        {
-            /*
-             * A null TypeDef name is invalid
-             */
-            log.error("Null TypeDef Name from " + sourceName);
-
-            return false;
-        }
-
-        if (typeGUID == null)
-        {
-            /*
-             * A null guid is invalid
-             */
-            log.error("Null TypeDef GUID from " + sourceName);
-
-            return false;
-        }
-
-        TypeDef typeDef = knownTypeDefNames.get(typeName);
-
-        if (typeDef == null)
-        {
-            /*
-             * This TypeDef is unknown so see if it is an AttributeTypeDef
-             */
-            AttributeTypeDef   attributeTypeDef = knownAttributeTypeDefNames.get(typeName);
-
-            if (attributeTypeDef == null)
-            {
-                log.debug("Unknown (Attribute)TypeDef from " + sourceName);
-            }
-            else
-            {
-                if (!typeGUID.equals(attributeTypeDef.getGUID()))
-                {
-                    /*
-                     * The requested guid does not equal the stored one.
-                     */
-                    log.error("GUID Mismatch in AttributeTypeDef " + typeName + " from " + sourceName + " received GUID is " + typeGUID + "; stored GUID is " + attributeTypeDef.getGUID());
-                    return false;
-                }
-
-                log.debug("Valid AttributeTypeDef from " + sourceName);
-                return true;
-            }
-
-            log.debug("Valid AttributeTypeDef from " + sourceName);
-            return true;
-        }
-
-        if (! typeGUID.equals(typeDef.getGUID()))
-        {
-            /*
-             * The requested guid does not equal the stored one.
-             */
-            log.error("GUID Mismatch in TypeDef " + typeName + " from " + sourceName + " received GUID is " + typeGUID + "; stored GUID is " + typeDef.getGUID());
-
-            return false;
-        }
-
-        return true;
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef identifiers are valid or not.
-     *
-     * @param sourceName - source of the TypeDef (used for logging)
-     * @param typeDefGUID - unique identifier of the TypeDef
-     * @param typeDefName - unique name of the TypeDef
-     * @return boolean result
-     */
-    public boolean validTypeDefId(String          sourceName,
-                                  String          typeDefGUID,
-                                  String          typeDefName,
-                                  TypeDefCategory category)
-    {
-        if (! validTypeId(sourceName, typeDefGUID, typeDefName))
-        {
-            return false;
-        }
-
-        TypeDef          typeDef = knownTypeDefNames.get(typeDefName);
-
-        if (typeDef != null)
-        {
-            TypeDefCategory knownTypeDefCategory = typeDef.getCategory();
-
-            if (knownTypeDefCategory == null)
-            {
-                log.error("Unknown TypeDef Category for " + typeDefName + " (GUID = " + typeDefGUID + ") from " + sourceName);
-                return false;
-            }
-
-            if (category.getTypeCode() != knownTypeDefCategory.getTypeCode())
-            {
-                log.error("TypeDef category mismatch for TypeDef " + typeDefName + " (GUID = " + typeDefGUID + ") from "
-                                  + sourceName + " received version number is " + category.getTypeDescription()
-                                  + " and stored category is " + knownTypeDefCategory.getTypeDescription());
-
-                return false;
-            }
-        }
-
-        return true;
-    }
-
-
-    /**
-     * Return boolean indicating whether the AttributeTypeDef identifiers are from a single known type or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDefGUID - unique identifier of the AttributeTypeDef
-     * @param attributeTypeDefName - unique name of the AttributeTypeDef
-     * @param category - category for the AttributeTypeDef
-     * @return boolean result
-     */
-    public boolean validAttributeTypeDefId(String                   sourceName,
-                                           String                   attributeTypeDefGUID,
-                                           String                   attributeTypeDefName,
-                                           AttributeTypeDefCategory category)
-    {
-        if (! validTypeId(sourceName, attributeTypeDefGUID, attributeTypeDefName))
-        {
-            return false;
-        }
-
-        AttributeTypeDef          attributeTypeDef = knownAttributeTypeDefNames.get(attributeTypeDefName);
-
-        if (attributeTypeDef != null)
-        {
-            AttributeTypeDefCategory knownAttributeTypeDefCategory = attributeTypeDef.getCategory();
-
-            if (knownAttributeTypeDefCategory == null)
-            {
-                log.error("Unknown AttributeTypeDef Category for " + attributeTypeDefName + " (GUID = " + attributeTypeDefGUID + ") from " + sourceName);
-                return false;
-            }
-
-            if (category.getTypeCode() != knownAttributeTypeDefCategory.getTypeCode())
-            {
-                log.error("TypeDef category mismatch for TypeDef " + attributeTypeDefName + " (GUID = " + attributeTypeDefGUID + ") from "
-                                  + sourceName + " received version number is " + category.getTypeDescription()
-                                  + " and stored category is " + knownAttributeTypeDefCategory.getTypeDescription());
-
-                return false;
-            }
-        }
-
-        return true;
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef identifiers are valid or not.
-     *
-     * @param sourceName - source of the TypeDef (used for logging)
-     * @param typeDefGUID - unique identifier of the TypeDef
-     * @param typeDefName - unique name of the TypeDef
-     * @param typeDefVersion - version of the type
-     * @param typeDefCategory - category of the instance described by this TypeDef.
-     * @return boolean result
-     */
-    public boolean validTypeDefId(String          sourceName,
-                                  String          typeDefGUID,
-                                  String          typeDefName,
-                                  long            typeDefVersion,
-                                  TypeDefCategory typeDefCategory)
-    {
-        if (! validTypeDefId(sourceName, typeDefGUID, typeDefName, typeDefCategory))
-        {
-            return false;
-        }
-
-        TypeDef   typeDef = knownTypeDefNames.get(typeDefName);
-
-        if (typeDef == null)
-        {
-            log.debug("Unknown TypeDef " + typeDefName + " (GUID = " + typeDefGUID + ") from " + sourceName);
-
-            return true;
-        }
-
-        if (typeDef.getVersion() != typeDefVersion)
-        {
-            log.error("Version mismatch for TypeDef " + typeDefName + " (GUID = " + typeDefGUID + ") from "
-                              + sourceName + " received version number is " + Long.toString(typeDefVersion)
-                              + " and stored version is " + Long.toString(typeDef.getVersion()));
-
-            return false;
-        }
-
-        return true;
-    }
-
-
-    /**
-     * Return boolean indicating whether the TypeDef identifiers are from a single known type or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDefGUID - unique identifier of the TypeDef
-     * @param attributeTypeDefName - unique name of the TypeDef
-     * @param attributeTypeDefVersion - version of the type
-     * @param category - category for the TypeDef
-     * @return boolean result
-     */
-    public boolean validAttributeTypeDefId(String                   sourceName,
-                                           String                   attributeTypeDefGUID,
-                                           String                   attributeTypeDefName,
-                                           long                     attributeTypeDefVersion,
-                                           AttributeTypeDefCategory category)
-    {
-        if (! validAttributeTypeDefId(sourceName, attributeTypeDefGUID, attributeTypeDefName, category))
-        {
-            return false;
-        }
-
-        TypeDef   typeDef = knownTypeDefNames.get(attributeTypeDefName);
-
-        if (typeDef == null)
-        {
-            log.debug("Unknown TypeDef " + attributeTypeDefName + " (GUID = " + attributeTypeDefGUID + ") from " + sourceName);
-
-            return true;
-        }
-
-        if (typeDef.getVersion() != attributeTypeDefVersion)
-        {
-            log.error("Version mismatch for TypeDef " + attributeTypeDefName + " (GUID = " + attributeTypeDefGUID + ") from "
-                              + sourceName + " received version number is " + Long.toString(attributeTypeDefVersion)
-                              + " and stored version is " + Long.toString(typeDef.getVersion()));
-
-            return false;
-        }
-
-        return true;
-    }
-
-
-    /**
-     * Return boolean indicating whether the supplied TypeDef is valid or not.
-     *
-     * @param sourceName - source of the TypeDef (used for logging)
-     * @param typeDef - TypeDef to test
-     * @return boolean result
-     */
-    public boolean validTypeDef(String         sourceName,
-                                TypeDef        typeDef)
-    {
-        if (typeDef == null)
-        {
-            log.error("Null typeDef from " + sourceName);
-            return false;
-        }
-
-        if (validTypeDefId(sourceName,
-                           typeDef.getGUID(),
-                           typeDef.getName(),
-                           typeDef.getVersion(),
-                           typeDef.getCategory()))
-        {
-            log.debug("Good typeDef from " + sourceName);
-            return true;
-        }
-        else
-        {
-            log.error("Bad typeDef from " + sourceName);
-            return false;
-        }
-    }
-
-
-    /**
-     * Return boolean indicating whether the supplied AttributeTypeDef is valid or not.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param attributeTypeDef - TypeDef to test
-     * @return boolean result
-     */
-    public boolean validAttributeTypeDef(String           sourceName,
-                                         AttributeTypeDef attributeTypeDef)
-    {
-        if (attributeTypeDef == null)
-        {
-            log.error("Null attributeTypeDef from " + sourceName);
-            return false;
-        }
-
-        if (validAttributeTypeDefId(sourceName,
-                                    attributeTypeDef.getGUID(),
-                                    attributeTypeDef.getName(),
-                                    attributeTypeDef.getCategory()))
-        {
-            log.debug("Good attributeTypeDef from " + sourceName);
-            return true;
-        }
-        else
-        {
-            log.error("Bad attributeTypeDef from " + sourceName);
-            return false;
-        }
-    }
-
-
-    /**
-     * Return boolean indicating whether the supplied TypeDefSummary is valid or not.
-     *
-     * @param sourceName - source of the TypeDefSummary (used for logging)
-     * @param typeDefSummary - TypeDefSummary to test.
-     * @return boolean result.
-     */
-    public boolean validTypeDefSummary(String                sourceName,
-                                       TypeDefSummary        typeDefSummary)
-    {
-        if (typeDefSummary != null)
-        {
-            if (validTypeDefId(sourceName,
-                               typeDefSummary.getGUID(),
-                               typeDefSummary.getName(),
-                               typeDefSummary.getVersion(),
-                               typeDefSummary.getCategory()))
-            {
-                return true;
-            }
-            else
-            {
-                log.error("Bad typeDefSummary from " + sourceName);
-            }
-        }
-
-        log.error("Null typeDefSummary from " + sourceName);
-
-        return false;
-    }
-
-
-    /*
-     * ===========================
-     * OMRSTypeDefEventProcessor
-     */
-
-
-    /**
-     * A new TypeDef has been defined either in an archive, or in another member of the cohort.
-     *
-     * This new TypeDef can be added to the repository if it does not clash with an existing typeDef and the local
-     * repository supports dynamic type definitions.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDef - details of the new TypeDef
-     */
-    public void processNewTypeDefEvent(String       sourceName,
-                                       String       originatorMetadataCollectionId,
-                                       String       originatorServerName,
-                                       String       originatorServerType,
-                                       String       originatorOrganizationName,
-                                       TypeDef      typeDef)
-    {
-        final String   actionDescription = "Process New TypeDef Event";
-
-        OMRSMetadataCollection metadataCollection = null;
-
-        try
-        {
-            if (localRepositoryConnector != null)
-            {
-                metadataCollection = localRepositoryConnector.getMetadataCollection();
-            }
-
-            if (metadataCollection != null)
-            {
-                /*
-                 * VerifyTypeDef returns true if the typeDef is known and matches the supplied definition.
-                 * It returns false if the type is supportable but has not yet been defined.
-                 * It throws TypeDefNotSupportedException if the typeDef is not supported and can not
-                 * be dynamically defined by the local repository.
-                 */
-                if (!metadataCollection.verifyTypeDef(sourceName, typeDef))
-                {
-                    metadataCollection.addTypeDef(sourceName, typeDef);
-
-                    /*
-                     * Update the active TypeDefs as this new TypeDef has been accepted by the local repository.
-                     */
-                    activeTypeDefNames.put(typeDef.getName(), typeDef);
-
-                    OMRSAuditCode auditCode = OMRSAuditCode.NEW_TYPE_ADDED;
-                    auditLog.logRecord(actionDescription,
-                                       auditCode.getLogMessageId(),
-                                       auditCode.getSeverity(),
-                                       auditCode.getFormattedLogMessage(typeDef.getName(),
-                                                                        typeDef.getGUID(),
-                                                                        Long.toString(typeDef.getVersion()),
-                                                                        sourceName),
-                                       null,
-                                       auditCode.getSystemAction(),
-                                       auditCode.getUserAction());
-                }
-            }
-        }
-        catch (TypeDefNotSupportedException fixedTypeSystemResponse)
-        {
-            OMRSAuditCode auditCode = OMRSAuditCode.NEW_TYPE_NOT_SUPPORTED;
-            auditLog.logRecord(actionDescription,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(typeDef.getName(),
-                                                                typeDef.getGUID(),
-                                                                Long.toString(typeDef.getVersion())),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("TypeDef not added because repository does not support dynamic type definitions", typeDef);
-                log.debug("TypeDefNotSupportedException:", fixedTypeSystemResponse);
-
-            }
-        }
-        catch (RepositoryErrorException error)
-        {
-            log.error("TypeDef " + typeDef.getName() + " not added because repository is not available", typeDef);
-            log.error("RepositoryErrorException:", error);
-        }
-        catch (TypeDefConflictException error)
-        {
-            // TODO log an error to say that the TypeDef conflicts with a TypeDef already stored.
-
-
-            log.error("TypeDef not added because it conflicts with another TypeDef already in the repository", typeDef);
-            log.error("TypeDefConflictException:", error);
-
-            outboundRepositoryEventManager.processTypeDefConflictEvent(sourceName,
-                                                                       localRepositoryConnector.getMetadataCollectionId(),
-                                                                       localRepositoryConnector.getLocalServerName(),
-                                                                       localRepositoryConnector.getLocalServerType(),
-                                                                       localRepositoryConnector.getOrganizationName(),
-                                                                       typeDef,
-                                                                       originatorMetadataCollectionId,
-                                                                       knownTypeDefNames.get(typeDef.getName()),
-                                                                       null);
-        }
-        catch (InvalidTypeDefException error)
-        {
-            // TODO log an error to say that the TypeDef contains bad values.
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("TypeDef not added because repository is not available", typeDef);
-                log.debug("InvalidTypeDefException:", error);
-            }
-        }
-        catch (TypeDefKnownException error)
-        {
-            // TODO log an error to say that a logic error has occurred
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("TypeDef not added because repository has a logic error", typeDef);
-                log.debug("TypeDefKnownException:", error);
-
-            }
-        }
-        catch (Throwable  error)
-        {
-            // TODO log an error to say that an unexpected error has occurred
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("TypeDef not added because repository has an unexpected error", typeDef);
-                log.debug("Throwable:", error);
-            }
-        }
-    }
-
-
-    /**
-     * A new AttributeTypeDef has been defined in an open metadata repository.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param attributeTypeDef - details of the new AttributeTypeDef.
-     */
-    public void processNewAttributeTypeDefEvent(String           sourceName,
-                                                String           originatorMetadataCollectionId,
-                                                String           originatorServerName,
-                                                String           originatorServerType,
-                                                String           originatorOrganizationName,
-                                                AttributeTypeDef attributeTypeDef)
-    {
-        final String   actionDescription = "Process New TypeDef Event";
-
-        OMRSMetadataCollection metadataCollection = null;
-
-        try
-        {
-            if (localRepositoryConnector != null)
-            {
-                metadataCollection = localRepositoryConnector.getMetadataCollection();
-            }
-
-            if (metadataCollection != null)
-            {
-                /*
-                 * VerifyTypeDef returns true if the typeDef is known and matches the supplied definition.
-                 * It returns false if the type is supportable but has not yet been defined.
-                 * It throws TypeDefNotSupportedException if the typeDef is not supported and can not
-                 * be dynamically defined by the local repository.
-                 */
-                if (!metadataCollection.verifyAttributeTypeDef(sourceName, attributeTypeDef))
-                {
-                    metadataCollection.addAttributeTypeDef(sourceName, attributeTypeDef);
-
-                    /*
-                     * Update the active TypeDefs as this new TypeDef has been accepted by the local repository.
-                     */
-                    activeAttributeTypeDefNames.put(attributeTypeDef.getName(), attributeTypeDef);
-
-                    OMRSAuditCode auditCode = OMRSAuditCode.NEW_TYPE_ADDED;
-                    auditLog.logRecord(actionDescription,
-                                       auditCode.getLogMessageId(),
-                                       auditCode.getSeverity(),
-                                       auditCode.getFormattedLogMessage(attributeTypeDef.getName(),
-                                                                        attributeTypeDef.getGUID(),
-                                                                        Long.toString(attributeTypeDef.getVersion()),
-                                                                        sourceName),
-                                       null,
-                                       auditCode.getSystemAction(),
-                                       auditCode.getUserAction());
-                }
-            }
-        }
-        catch (TypeDefNotSupportedException fixedTypeSystemResponse)
-        {
-            OMRSAuditCode auditCode = OMRSAuditCode.NEW_TYPE_NOT_SUPPORTED;
-            auditLog.logRecord(actionDescription,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(attributeTypeDef.getName(),
-                                                                attributeTypeDef.getGUID(),
-                                                                Long.toString(attributeTypeDef.getVersion())),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("TypeDef not added because repository does not support dynamic type definitions", attributeTypeDef);
-                log.debug("TypeDefNotSupportedException:", fixedTypeSystemResponse);
-
-            }
-        }
-        catch (RepositoryErrorException error)
-        {
-            log.error("TypeDef " + attributeTypeDef.getName() + " not added because repository is not available", attributeTypeDef);
-            log.error("RepositoryErrorException:", error);
-        }
-        catch (TypeDefConflictException error)
-        {
-            // TODO log an error to say that the TypeDef conflicts with a TypeDef already stored.
-
-            log.error("TypeDef not added because it conflicts with another TypeDef already in the repository", attributeTypeDef);
-            log.error("TypeDefConflictException:", error);
-
-            outboundRepositoryEventManager.processAttributeTypeDefConflictEvent(sourceName,
-                                                                                localRepositoryConnector.getMetadataCollectionId(),
-                                                                                localRepositoryConnector.getLocalServerName(),
-                                                                                localRepositoryConnector.getLocalServerType(),
-                                                                                localRepositoryConnector.getOrganizationName(),
-                                                                                attributeTypeDef,
-                                                                                originatorMetadataCollectionId,
-                                                                                knownAttributeTypeDefNames.get(
-                                                                                        attributeTypeDef.getName()),
-                                                                                null);
-        }
-        catch (InvalidTypeDefException error)
-        {
-            // TODO log an error to say that the TypeDef contains bad values.
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("TypeDef not added because repository is not available", attributeTypeDef);
-                log.debug("InvalidTypeDefException:", error);
-            }
-        }
-        catch (TypeDefKnownException error)
-        {
-            // TODO log an error to say that a logic error has occurred
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("TypeDef not added because repository has a logic error", attributeTypeDef);
-                log.debug("TypeDefKnownException:", error);
-
-            }
-        }
-        catch (Throwable  error)
-        {
-            // TODO log an error to say that an unexpected error has occurred
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("TypeDef not added because repository has an unexpected error", attributeTypeDef);
-                log.debug("Throwable:", error);
-            }
-        }
-    }
-
-
-    /**
-     * An existing TypeDef has been updated in a remote metadata repository.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefPatch - details of the new version of the TypeDef
-     */
-    public void processUpdatedTypeDefEvent(String       sourceName,
-                                           String       originatorMetadataCollectionId,
-                                           String       originatorServerName,
-                                           String       originatorServerType,
-                                           String       originatorOrganizationName,
-                                           TypeDefPatch typeDefPatch)
-    {
-        try
-        {
-            OMRSMetadataCollection metadataCollection = localRepositoryConnector.getMetadataCollection();
-
-            if (metadataCollection != null)
-            {
-
-
-                TypeDef updatedTypeDef = metadataCollection.updateTypeDef(null, typ

<TRUNCATED>

[16/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSRepositoryEventProcessor.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSRepositoryEventProcessor.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSRepositoryEventProcessor.java
deleted file mode 100644
index 126f137..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSRepositoryEventProcessor.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement;
-
-
-import org.apache.atlas.omrs.eventmanagement.events.OMRSInstanceEventProcessor;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSTypeDefEventProcessor;
-
-/**
- * OMRSRepositoryEventProcessor describes the interface of a component that can process both TypeDef and Instance
- * events from an open metadata repository.
- */
-public interface OMRSRepositoryEventProcessor extends OMRSTypeDefEventProcessor, OMRSInstanceEventProcessor
-{
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEvent.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEvent.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEvent.java
deleted file mode 100644
index 9a591e2..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEvent.java
+++ /dev/null
@@ -1,581 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.omrs.eventmanagement.events.v1.OMRSEventV1;
-import org.apache.atlas.omrs.eventmanagement.events.v1.OMRSEventV1ErrorSection;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceProvenanceType;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.AttributeTypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.Date;
-
-/**
- * OMRSEvent defines the common content of a message that is sent through the OMRSTopicConnector to all metadata
- * repositories registered in the open metadata repository cohort.  It supports a category enum for the three
- * main categories of event and provides specialized structures for processing each category of event.
- */
-public abstract class OMRSEvent
-{
-    /*
-     * Basic event header information.
-     */
-    protected Date                         eventTimestamp       = null;
-    protected OMRSEventDirection           eventDirection       = null;
-
-    /*
-     * The category of the event.
-     */
-    protected  OMRSEventCategory           eventCategory        = OMRSEventCategory.UNKNOWN;
-
-    /*
-     * Information about the originator of the event.
-     */
-    protected OMRSEventOriginator          eventOriginator      = null;
-
-    /*
-     * Specific variables only used in error reporting
-     */
-    protected OMRSEventErrorCode     genericErrorCode           = null;
-    protected String                 errorMessage               = null;
-    protected String                 targetMetadataCollectionId = null;
-    protected Connection             targetRemoteConnection     = null;
-    protected TypeDefSummary         targetTypeDefSummary       = null;
-    protected AttributeTypeDef       targetAttributeTypeDef     = null;
-    protected String                 targetInstanceGUID         = null;
-    protected InstanceProvenanceType otherOrigin                = null;
-    protected String                 otherMetadataCollectionId  = null;
-    protected TypeDefSummary         otherTypeDefSummary        = null;
-    protected TypeDef                otherTypeDef               = null;
-    protected AttributeTypeDef       otherAttributeTypeDef      = null;
-    protected String                 otherInstanceGUID          = null;
-
-    private static final Logger log = LoggerFactory.getLogger(OMRSEvent.class);
-
-
-    /**
-     * Inbound event constructor that takes the object created by the Jackson JSON mapper and unpacks the
-     * properties into the internal OMRSEvent object.
-     *
-     * @param inboundEvent - incoming Event.
-     */
-    public OMRSEvent(OMRSEventV1 inboundEvent)
-    {
-        this.eventDirection = OMRSEventDirection.INBOUND;
-
-        if (inboundEvent != null)
-        {
-            this.eventTimestamp = inboundEvent.getTimestamp();
-            this.eventOriginator = inboundEvent.getOriginator();
-            this.eventCategory = inboundEvent.getEventCategory();
-
-            OMRSEventV1ErrorSection errorSection = inboundEvent.getErrorSection();
-
-            if (errorSection != null)
-            {
-                genericErrorCode = errorSection.getErrorCode();
-                errorMessage = errorSection.getErrorMessage();
-                targetMetadataCollectionId = errorSection.getTargetMetadataCollectionId();
-                targetRemoteConnection = errorSection.getTargetRemoteConnection();
-                targetTypeDefSummary = errorSection.getTargetTypeDefSummary();
-                targetAttributeTypeDef = errorSection.getTargetAttributeTypeDef();
-                targetInstanceGUID = errorSection.getTargetInstanceGUID();
-                otherOrigin = errorSection.getOtherOrigin();
-                otherMetadataCollectionId = errorSection.getOtherMetadataCollectionId();
-                otherTypeDefSummary = errorSection.getOtherTypeDefSummary();
-                otherTypeDef = errorSection.getOtherTypeDef();
-                otherAttributeTypeDef = errorSection.getOtherAttributeTypeDef();
-                otherInstanceGUID = errorSection.getOtherInstanceGUID();
-            }
-        }
-    }
-
-
-    /**
-     * Outbound event constructor used when there is no error.
-     *
-     * @param eventCategory - category of event.
-     */
-    public OMRSEvent(OMRSEventCategory    eventCategory)
-    {
-        this.eventDirection = OMRSEventDirection.OUTBOUND;
-        this.eventTimestamp = new Date();
-        this.eventCategory = eventCategory;
-    }
-
-
-    /**
-     * Outbound event constructor used for registry error events.
-     *
-     * @param eventCategory - category of event.
-     * @param genericErrorCode - code for the error
-     * @param errorMessage - detailed error message for remote audit log
-     * @param targetMetadataCollectionId - identifier of the metadata collection in error.
-     * @param targetRemoteConnection - connection used to create the connector to access metadata in the
-     *                               remote repository.
-     */
-    public OMRSEvent(OMRSEventCategory  eventCategory,
-                     OMRSEventErrorCode genericErrorCode,
-                     String             errorMessage,
-                     String             targetMetadataCollectionId,
-                     Connection         targetRemoteConnection)
-    {
-        this.eventDirection = OMRSEventDirection.OUTBOUND;
-        this.eventTimestamp = new Date();
-        this.eventCategory = eventCategory;
-
-        this.genericErrorCode = genericErrorCode;
-        this.errorMessage = errorMessage;
-        this.targetMetadataCollectionId = targetMetadataCollectionId;
-        this.targetRemoteConnection = targetRemoteConnection;
-    }
-
-
-    /**
-     * Outbound constructor used for TypeDef conflict events.
-     *
-     * @param eventCategory - category of event.
-     * @param genericErrorCode - code for the error
-     * @param errorMessage - detailed error message for remote audit log
-     * @param targetMetadataCollectionId - identifier of the metadata collection required to change TypeDef.
-     * @param targetTypeDefSummary - details of TypeDef to change.
-     * @param otherTypeDefSummary - description of conflicting TypeDef that will not change.
-     */
-    public OMRSEvent(OMRSEventCategory  eventCategory,
-                     OMRSEventErrorCode genericErrorCode,
-                     String             errorMessage,
-                     String             targetMetadataCollectionId,
-                     TypeDefSummary     targetTypeDefSummary,
-                     TypeDefSummary     otherTypeDefSummary)
-    {
-        this.eventDirection = OMRSEventDirection.OUTBOUND;
-        this.eventTimestamp = new Date();
-        this.eventCategory = eventCategory;
-
-        this.genericErrorCode = genericErrorCode;
-        this.errorMessage = errorMessage;
-        this.targetMetadataCollectionId = targetMetadataCollectionId;
-        this.targetTypeDefSummary = targetTypeDefSummary;
-        this.otherTypeDefSummary = otherTypeDefSummary;
-    }
-
-
-    /**
-     * Outbound constructor used for AttributeTypeDef conflict events.
-     *
-     * @param eventCategory - category of event.
-     * @param genericErrorCode - code for the error
-     * @param errorMessage - detailed error message for remote audit log
-     * @param targetMetadataCollectionId - identifier of the metadata collection required to change TypeDef.
-     * @param targetAttributeTypeDef - details of AttrbuteTypeDef to change.
-     * @param otherAttributeTypeDef - description of conflicting AttributeTypeDef that will not change.
-     */
-    public OMRSEvent(OMRSEventCategory  eventCategory,
-                     OMRSEventErrorCode genericErrorCode,
-                     String             errorMessage,
-                     String             targetMetadataCollectionId,
-                     AttributeTypeDef   targetAttributeTypeDef,
-                     AttributeTypeDef   otherAttributeTypeDef)
-    {
-        this.eventDirection = OMRSEventDirection.OUTBOUND;
-        this.eventTimestamp = new Date();
-        this.eventCategory = eventCategory;
-
-        this.genericErrorCode = genericErrorCode;
-        this.errorMessage = errorMessage;
-        this.targetMetadataCollectionId = targetMetadataCollectionId;
-        this.targetAttributeTypeDef = targetAttributeTypeDef;
-        this.otherAttributeTypeDef = otherAttributeTypeDef;
-    }
-
-
-    /**
-     * Outbound event constructor for a TypeDef patch mismatch warning.
-     *
-     * @param eventCategory - category of event.
-     * @param genericErrorCode - code for the error.
-     * @param errorMessage - detailed error message for remote audit log
-     * @param targetMetadataCollectionId - identifier of the remote metadata collection with mismatched TypeDef.
-     * @param targetTypeDefSummary - description of TypeDef.
-     * @param otherTypeDef - details of local TypeDef
-     */
-    public OMRSEvent(OMRSEventCategory  eventCategory,
-                     OMRSEventErrorCode genericErrorCode,
-                     String             errorMessage,
-                     String             targetMetadataCollectionId,
-                     TypeDefSummary     targetTypeDefSummary,
-                     TypeDef            otherTypeDef)
-    {
-        this.eventDirection = OMRSEventDirection.OUTBOUND;
-        this.eventTimestamp = new Date();
-        this.eventCategory = eventCategory;
-
-        this.genericErrorCode = genericErrorCode;
-        this.errorMessage = errorMessage;
-        this.targetMetadataCollectionId = targetMetadataCollectionId;
-        this.targetTypeDefSummary = targetTypeDefSummary;
-        this.otherTypeDef = otherTypeDef;
-    }
-
-    /**
-     * Outbound constructor used for metadata instance conflict events.
-     *
-     * @param eventCategory - category of event.
-     * @param genericErrorCode - code for the error
-     * @param errorMessage - detailed error message for remote audit log
-     * @param targetMetadataCollectionId - metadata collection id of other repository with the conflicting instance
-     * @param targetTypeDefSummary - description of the target instance's TypeDef
-     * @param targetInstanceGUID - unique identifier for the source instance
-     * @param otherOrigin - origin of the other (older) metadata instance
-     * @param otherMetadataCollectionId - metadata collection of the other (older) metadata instance
-     * @param otherTypeDefSummary - details of the other (older) instance's TypeDef
-     * @param otherInstanceGUID - unique identifier for the other (older) instance
-     */
-    public OMRSEvent(OMRSEventCategory      eventCategory,
-                     OMRSEventErrorCode     genericErrorCode,
-                     String                 errorMessage,
-                     String                 targetMetadataCollectionId,
-                     TypeDefSummary         targetTypeDefSummary,
-                     String                 targetInstanceGUID,
-                     String                 otherMetadataCollectionId,
-                     InstanceProvenanceType otherOrigin,
-                     TypeDefSummary         otherTypeDefSummary,
-                     String                 otherInstanceGUID)
-    {
-        this.eventDirection = OMRSEventDirection.OUTBOUND;
-        this.eventTimestamp = new Date();
-        this.eventCategory = eventCategory;
-
-        this.genericErrorCode = genericErrorCode;
-        this.errorMessage = errorMessage;
-        this.targetMetadataCollectionId = targetMetadataCollectionId;
-        this.targetTypeDefSummary = targetTypeDefSummary;
-        this.targetInstanceGUID = targetInstanceGUID;
-        this.otherMetadataCollectionId = otherMetadataCollectionId;
-        this.otherOrigin = otherOrigin;
-        this.otherTypeDefSummary = otherTypeDefSummary;
-        this.otherInstanceGUID = otherInstanceGUID;
-    }
-
-    /**
-     * Outbound constructor used for metadata instance type conflict events.
-     *
-     * @param eventCategory - category of event.
-     * @param genericErrorCode - code for the error
-     * @param errorMessage - detailed error message for remote audit log
-     * @param targetMetadataCollectionId - metadata collection id of other repository with the conflicting instance
-     * @param targetTypeDefSummary - details of the target instance's TypeDef
-     * @param targetInstanceGUID - unique identifier for the source instance
-     * @param otherTypeDefSummary - details of the local TypeDef
-     */
-    public OMRSEvent(OMRSEventCategory      eventCategory,
-                     OMRSEventErrorCode     genericErrorCode,
-                     String                 errorMessage,
-                     String                 targetMetadataCollectionId,
-                     TypeDefSummary         targetTypeDefSummary,
-                     String                 targetInstanceGUID,
-                     TypeDefSummary         otherTypeDefSummary)
-    {
-        this.eventDirection = OMRSEventDirection.OUTBOUND;
-        this.eventTimestamp = new Date();
-        this.eventCategory = eventCategory;
-
-        this.genericErrorCode = genericErrorCode;
-        this.errorMessage = errorMessage;
-        this.targetMetadataCollectionId = targetMetadataCollectionId;
-        this.targetTypeDefSummary = targetTypeDefSummary;
-        this.targetInstanceGUID = targetInstanceGUID;
-        this.otherTypeDefSummary = otherTypeDefSummary;
-    }
-
-
-    /**
-     * Set up details of the event originator - used by the event publisher for outbound events.
-     *
-     * @param eventOriginator  - details of the originator of the event including the id of the local
-     *                         metadata collection.
-     */
-    public void setEventOriginator(OMRSEventOriginator eventOriginator)
-    {
-        this.eventOriginator = eventOriginator;
-    }
-
-
-    /**
-     * Return whether this is an inbound or outbound event.  This is used for messages.
-     *
-     * @return OMRSEventDirection enum
-     */
-    public OMRSEventDirection getEventDirection()
-    {
-        return eventDirection;
-    }
-
-
-    /**
-     * Return the timestamp for the event.
-     *
-     * @return Date object
-     */
-    public Date getEventTimestamp()
-    {
-        return eventTimestamp;
-    }
-
-
-    /**
-     * Return the category of the event. If the event category is null then the event was unreadable
-     * in some form (or there is a logic error).
-     *
-     * @return event category enum
-     */
-    public OMRSEventCategory getEventCategory()
-    {
-        return eventCategory;
-    }
-
-
-    /**
-     * Return details of the originator of the event including the id of their metadata collection.
-     * If the originator is null then the event was unreadable in some form (or there is a logic error).
-     *
-     * @return event originator object
-     */
-    public OMRSEventOriginator getEventOriginator()
-    {
-        return eventOriginator;
-    }
-
-
-    /**
-     * Return the error code for the event.  This is set to null if there is no error.
-     *
-     * @return error code enum or null
-     */
-    protected OMRSEventErrorCode getGenericErrorCode()
-    {
-        return genericErrorCode;
-    }
-
-
-    /**
-     * Return any error message for the event.  This is null if there is no error.  If there is an error, this
-     * error message is suitable for the local OMRS audit log.
-     *
-     * @return String errorMessage
-     */
-    public String getErrorMessage()
-    {
-        return errorMessage;
-    }
-
-
-    /**
-     * This is the identifier of the metadata collection that needs to take action.
-     * It is null if there is no error condition.
-     *
-     * @return String metadata collection id
-     */
-    public String getTargetMetadataCollectionId()
-    {
-        return targetMetadataCollectionId;
-    }
-
-
-    /**
-     * This is the target's connection that is causing errors in the originator's server.
-     *
-     * @return OCF connection
-     */
-    public Connection getTargetRemoteConnection()
-    {
-        return targetRemoteConnection;
-    }
-
-
-    /**
-     * Return the target's TypeDef summary.
-     *
-     * @return TypeDefSummary containing identifiers, category and version
-     */
-    public TypeDefSummary getTargetTypeDefSummary()
-    {
-        return targetTypeDefSummary;
-    }
-
-
-    /**
-     * Return the target AttributeTypeDef.
-     *
-     * @return AttributeTypeDef object
-     */
-    public AttributeTypeDef getTargetAttributeTypeDef()
-    {
-        return targetAttributeTypeDef;
-    }
-
-
-    /**
-     * Return the target's instance's unique identifier.
-     *
-     * @return String guid
-     */
-    public String getTargetInstanceGUID()
-    {
-        return targetInstanceGUID;
-    }
-
-
-    /**
-     * Return the provenance (origin) information for the other instance.
-     *
-     * @return InstanceProvenanceType enum
-     */
-    public InstanceProvenanceType getOtherOrigin()
-    {
-        return otherOrigin;
-    }
-
-
-    /**
-     * Return the unique identifier for the metadata collection containing the other instance.
-     *
-     * @return String guid
-     */
-    public String getOtherMetadataCollectionId()
-    {
-        return otherMetadataCollectionId;
-    }
-
-
-    /**
-     * Return the version of the TypeDef from the other repository.
-     *
-     * @return TypeDefSummary containing identifiers, category and version
-     */
-    public TypeDefSummary getOtherTypeDefSummary()
-    {
-        return otherTypeDefSummary;
-    }
-
-
-    /**
-     * Return the TypeDef from the other repository.
-     *
-     * @return TypeDef object
-     */
-    public TypeDef getOtherTypeDef()
-    {
-        return otherTypeDef;
-    }
-
-
-    /**
-     * Return the AttributeTypeDef from the other repository.
-     *
-     * @return AttributeTypeDef object
-     */
-    public AttributeTypeDef getOtherAttributeTypeDef()
-    {
-        return otherAttributeTypeDef;
-    }
-
-    /**
-     * Return the unique identifier for the other instance.
-     *
-     * @return String guid
-     */
-    public String getOtherInstanceGUID()
-    {
-        return otherInstanceGUID;
-    }
-
-
-    /**
-     * Returns an OMRSEvent populated with details about a generic event.  Specific subtypes override this method
-     * to create messages with specific subsections.
-     *
-     * @return OMRSEvent (Version 1) object
-     */
-    public OMRSEventV1  getOMRSEventV1()
-    {
-        OMRSEventV1     omrsEvent = new OMRSEventV1();
-
-        omrsEvent.setTimestamp(this.eventTimestamp);
-        omrsEvent.setOriginator(this.eventOriginator);
-        omrsEvent.setEventCategory(this.eventCategory);
-
-        if (this.genericErrorCode != null)
-        {
-            OMRSEventV1ErrorSection errorSection = new OMRSEventV1ErrorSection();
-
-            errorSection.setErrorCode(this.genericErrorCode);
-            errorSection.setErrorMessage(this.errorMessage);
-            errorSection.setTargetMetadataCollectionId(this.targetMetadataCollectionId);
-            errorSection.setTargetRemoteConnection(this.targetRemoteConnection);
-            errorSection.setTargetTypeDefSummary(this.targetTypeDefSummary);
-            errorSection.setTargetAttributeTypeDef(this.targetAttributeTypeDef);
-            errorSection.setTargetInstanceGUID(this.targetInstanceGUID);
-            errorSection.setOtherMetadataCollectionId(this.otherMetadataCollectionId);
-            errorSection.setOtherOrigin(this.otherOrigin);
-            errorSection.setOtherTypeDefSummary(this.otherTypeDefSummary);
-            errorSection.setOtherTypeDef(this.otherTypeDef);
-            errorSection.setOtherAttributeTypeDef(this.otherAttributeTypeDef);
-            errorSection.setOtherInstanceGUID(this.otherInstanceGUID);
-
-            omrsEvent.setErrorSection(errorSection);
-        }
-
-        return omrsEvent;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return JSON style description of variables.
-     */
-    @Override
-    public String toString()
-    {
-        return "OMRSEvent{" +
-                "eventTimestamp=" + eventTimestamp +
-                ", eventDirection=" + eventDirection +
-                ", eventCategory=" + eventCategory +
-                ", eventOriginator=" + eventOriginator +
-                ", genericErrorCode=" + genericErrorCode +
-                ", errorMessage='" + errorMessage + '\'' +
-                ", targetMetadataCollectionId='" + targetMetadataCollectionId + '\'' +
-                ", targetRemoteConnection=" + targetRemoteConnection +
-                ", targetTypeDefSummary=" + targetTypeDefSummary +
-                ", targetAttributeTypeDef=" + targetAttributeTypeDef +
-                ", targetInstanceGUID='" + targetInstanceGUID + '\'' +
-                ", otherOrigin=" + otherOrigin +
-                ", otherMetadataCollectionId='" + otherMetadataCollectionId + '\'' +
-                ", otherTypeDefSummary=" + otherTypeDefSummary +
-                ", otherTypeDef=" + otherTypeDef +
-                ", otherAttributeTypeDef=" + otherAttributeTypeDef +
-                ", otherInstanceGUID='" + otherInstanceGUID + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventCategory.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventCategory.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventCategory.java
deleted file mode 100644
index a087bfc..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventCategory.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-
-/**
- * OMRSEventCategory defines the different categories of events that pass through the OMRS Topic.
- * <ul>
- *     <li>
- *         UNKNOWN - this is either an uninitialized event, or the incoming event is not supported by the
- *         local server.
- *     </li>
- *     <li>
- *         REGISTRY - this is an event used by the cohort registries to manage the membership
- *         of the cohort.
- *     </li>
- *     <li>
- *         TYPEDEF - this is an event used by the metadata repository connectors to synchronize the metadata types
- *         (stored in TypeDefs) across the metadata repository cohort.
- *     </li>
- * </ul>
- */
-public enum OMRSEventCategory
-{
-    UNKNOWN (0, "Unknown Event",  "Unknown event category"),
-    REGISTRY(1, "Registry Event", "Event used to manage the membership of the metadata repository cohort"),
-    TYPEDEF (2, "TypeDef Event",  "Event used to manage the synchronization of TypeDefs within the metadata repository cohort"),
-    INSTANCE(3, "Instance Event", "Event used to manage the replication of metadata instances within the metadata repository cohort"),
-    GENERIC (99, "Generic Event", "Event used for sending generic messages - typically error messages.");
-
-
-    private int    categoryCode;
-    private String categoryName;
-    private String categoryDescription;
-
-
-    /**
-     * Default constructor.
-     *
-     * @param categoryCode - int category code number
-     * @param categoryName - String category name
-     * @param categoryDescription - String category description
-     */
-    OMRSEventCategory(int      categoryCode,
-                      String   categoryName,
-                      String   categoryDescription)
-    {
-        this.categoryCode = categoryCode;
-        this.categoryName = categoryName;
-        this.categoryDescription = categoryDescription;
-    }
-
-
-    /**
-     * Return the code number for the event category.
-     *
-     * @return int code number
-     */
-    public int getEventCategoryCode()
-    {
-        return categoryCode;
-    }
-
-
-    /**
-     * Return the name of the event category.
-     *
-     * @return String name
-     */
-    public String getEventCategoryName()
-    {
-        return categoryName;
-    }
-
-
-    /**
-     * Return the default description of the event category.  This description is in English and is a default
-     * value for the situation when the natural language resource bundle for Event Category is not available.
-     *
-     * @return String default description
-     */
-    public String getEventCategoryDescription()
-    {
-        return categoryDescription;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventDirection.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventDirection.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventDirection.java
deleted file mode 100644
index 6ec049e..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventDirection.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-
-/**
- * OMRSEventDirection defines the origin of an OMRSEvent.  It is used primarily for logging and debug.
- */
-public enum OMRSEventDirection
-{
-    UNKNOWN  (0, "<Unknown>     ", "Uninitialized event direction"),
-    INBOUND  (1, "Inbound Event ", "Event from a remote member of the open metadata repository cluster."),
-    OUTBOUND (2, "Outbound Event", "Event from local server to other members of the open metadata repository cluster.");
-
-
-    private  int    eventDirectionCode;
-    private  String eventDirectionName;
-    private  String eventDirectionDescription;
-
-
-    /**
-     * Default constructor - sets up the specific values for this enum instance.
-     *
-     * @param eventDirectionCode - int identifier for the enum, used for indexing arrays etc with the enum.
-     * @param eventDirectionName - String name for the enum, used for message content.
-     * @param eventDirectionDescription - String default description for the enum, used when there is not natural
-     *                             language resource bundle available.
-     */
-    OMRSEventDirection(int eventDirectionCode, String eventDirectionName, String eventDirectionDescription)
-    {
-        this.eventDirectionCode = eventDirectionCode;
-        this.eventDirectionName = eventDirectionName;
-        this.eventDirectionDescription = eventDirectionDescription;
-    }
-
-
-    /**
-     * Return the identifier for the enum, used for indexing arrays etc with the enum.
-     *
-     * @return int identifier
-     */
-    public int getEventDirectionCode()
-    {
-        return eventDirectionCode;
-    }
-
-
-    /**
-     * Return the name for the enum, used for message content.
-     *
-     * @return String name
-     */
-    public String getEventDirectionName()
-    {
-        return eventDirectionName;
-    }
-
-
-    /**
-     * Return the default description for the enum, used when there is not natural
-     * language resource bundle available.
-     *
-     * @return String default description
-     */
-    public String getEventDirectionDescription()
-    {
-        return eventDirectionDescription;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventErrorCode.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventErrorCode.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventErrorCode.java
deleted file mode 100644
index 2383f3b..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventErrorCode.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-
-/**
- * OMRSEventErrorCode is a merging of the OMRSRegistryEventErrorCode, OMRSTypeDefEventErrorCode and
- * OMRSInstanceEventErrorCode that is used in OMRSEvent.  Detailed description of the values can be found
- * in the source enums.
- */
-public enum OMRSEventErrorCode
-{
-    CONFLICTING_COLLECTION_ID,
-    CONFLICTING_TYPEDEFS,
-    CONFLICTING_ATTRIBUTE_TYPEDEFS,
-    CONFLICTING_INSTANCES,
-    CONFLICTING_TYPE,
-    BAD_REMOTE_CONNECTION,
-    TYPEDEF_PATCH_MISMATCH,
-    INVALID_EVENT_FORMAT,
-    INVALID_REGISTRY_EVENT,
-    INVALID_TYPEDEF_EVENT,
-    INVALID_INSTANCE_EVENT
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventOriginator.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventOriginator.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventOriginator.java
deleted file mode 100644
index 6a7d0d3..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSEventOriginator.java
+++ /dev/null
@@ -1,171 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-
-/**
- * OMRSEventOriginator is part of an OMRSEvent's header.  It defines the properties of the server/repository
- * that originated the event.  These properties are as follows:
- * <ul>
- *     <li>
- *         metadataCollectionId - the unique identifier of the metadata collection in the
- *         originating server. This is a mandatory property.
- *     </li>
- *     <li>
- *         ServerName - this is a display name for the server that is used in events, messages and UIs to
- *         make it easier for people to understand the origin of metadata.  It is optional.
- *     </li>
- *     <li>
- *         ServerType - this is a descriptive string describing the type of the server.  This might be the
- *         name of the product, or similar identifier. This is an optional property.
- *     </li>
- *     <li>
- *         OrganizationName - this is a descriptive name for the organization that runs/owns the server.  For
- *         an enterprise, it may be the name of a department, geography or division.  If the cluster covers a group
- *         of business partners then it may be their respective company names.  This is an optional field.
- *     </li>
- *     <li>
- *         ProtocolVersion - this is an enumeration that identifies which version of the OMRS event structure
- *         should be used.  In general it should be set to the highest level that all servers in the cohort
- *         can support.
- *     </li>
- * </ul>
- */
-public class OMRSEventOriginator
-{
-    private String                   metadataCollectionId = null;
-    private String                   serverName           = null;
-    private String                   serverType           = null;
-    private String                   organizationName     = null;
-
-    /**
-     * Default constructor used by parsing engines and other consumers.
-     */
-    public OMRSEventOriginator()
-    {
-    }
-
-
-    /**
-     * Returns the unique identifier (guid) of the originating repository's metadata collection.
-     *
-     * @return String guid
-     */
-    public String getMetadataCollectionId()
-    {
-        return metadataCollectionId;
-    }
-
-
-    /**
-     * Sets up the unique identifier (guid) of the originating repository.
-     *
-     * @param metadataCollectionId - String guid
-     */
-    public void setMetadataCollectionId(String metadataCollectionId)
-    {
-        this.metadataCollectionId = metadataCollectionId;
-    }
-
-
-    /**
-     * Return the display name for the server that is used in events, messages and UIs to
-     * make it easier for people to understand the origin of metadata.
-     *
-     * @return String server name
-     */
-    public String getServerName()
-    {
-        return serverName;
-    }
-
-
-    /**
-     * Set up the display name for the server that is used in events, messages and UIs to
-     * make it easier for people to understand the origin of metadata.
-     *
-     * @param serverName - String server name
-     */
-    public void setServerName(String serverName)
-    {
-        this.serverName = serverName;
-    }
-
-
-    /**
-     * Return the descriptive string describing the type of the server.  This might be the
-     * name of the product, or similar identifier.
-     *
-     * @return String server type
-     */
-    public String getServerType()
-    {
-        return serverType;
-    }
-
-
-    /**
-     * Set up the descriptive string describing the type of the server.  This might be the
-     * name of the product, or similar identifier.
-     *
-     * @param serverType - String server type
-     */
-    public void setServerType(String serverType)
-    {
-        this.serverType = serverType;
-    }
-
-
-    /**
-     * Return the name of the organization that runs/owns the server.
-     *
-     * @return String organization name
-     */
-    public String getOrganizationName()
-    {
-        return organizationName;
-    }
-
-
-    /**
-     * Set up the name of the organization that runs/owns the server.
-     *
-     * @param organizationName - String organization name
-     */
-    public void setOrganizationName(String organizationName)
-    {
-        this.organizationName = organizationName;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return JSON style description of variables.
-     */
-    @Override
-    public String toString()
-    {
-        return "OMRSEventOriginator{" +
-                "metadataCollectionId='" + metadataCollectionId + '\'' +
-                ", serverName='" + serverName + '\'' +
-                ", serverType='" + serverType + '\'' +
-                ", organizationName='" + organizationName + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEvent.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEvent.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEvent.java
deleted file mode 100644
index 0cdfa26..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEvent.java
+++ /dev/null
@@ -1,477 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-
-import org.apache.atlas.omrs.eventmanagement.events.v1.OMRSEventV1;
-import org.apache.atlas.omrs.eventmanagement.events.v1.OMRSEventV1InstanceSection;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityDetail;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceProvenanceType;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.Relationship;
-
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefCategory;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-
-public class OMRSInstanceEvent extends OMRSEvent
-{
-    /*
-     * The type of the registry event that defines how the rest of the values should be interpreted.
-     */
-    private  OMRSInstanceEventType       instanceEventType = OMRSInstanceEventType.UNKNOWN_INSTANCE_EVENT;
-
-    /*
-     * Instance specific properties for typical instance events
-     */
-    private String       typeDefGUID    = null;
-    private String       typeDefName    = null;
-    private String       instanceGUID   = null;
-    private EntityDetail entity         = null;
-    private Relationship relationship   = null;
-
-    /*
-     * Home repository Id for refresh requests.
-     */
-    private String homeMetadataCollectionId = null;
-
-    /*
-     * Instance specific properties for events related to correcting conflicts in the open metadata repository
-     * cohort.
-     */
-    private String         originalHomeMetadataCollectionId = null;
-    private TypeDefSummary originalTypeDefSummary           = null;
-    private String         originalInstanceGUID             = null;
-
-    /*
-     * Specific variables only used in error reporting.  It defines the subset of error codes from OMRSEvent
-     * that are specific to instance events.
-     */
-    private  OMRSInstanceEventErrorCode  errorCode  = OMRSInstanceEventErrorCode.NOT_IN_USE;
-
-
-    private static final Logger log = LoggerFactory.getLogger(OMRSInstanceEvent.class);
-
-    /**
-     * Inbound event constructor that takes the object created by the Jackson JSON mapper and unpacks the
-     * properties into the instance event.
-     *
-     * @param inboundEvent - incoming event to parse.
-     */
-    public OMRSInstanceEvent(OMRSEventV1 inboundEvent)
-    {
-        super(inboundEvent);
-
-        OMRSEventV1InstanceSection instanceSection = inboundEvent.getInstanceEventSection();
-
-        if (instanceSection != null)
-        {
-            this.instanceEventType = instanceSection.getEventType();
-
-            this.typeDefGUID = instanceSection.getTypeDefGUID();
-            this.typeDefName = instanceSection.getTypeDefName();
-            this.instanceGUID = instanceSection.getInstanceGUID();
-            this.entity = instanceSection.getEntity();
-            this.relationship = instanceSection.getRelationship();
-            this.homeMetadataCollectionId = instanceSection.getHomeMetadataCollectionId();
-
-            this.originalHomeMetadataCollectionId = instanceSection.getOriginalHomeMetadataCollectionId();
-            this.originalTypeDefSummary = instanceSection.getOriginalTypeDefSummary();
-            this.originalInstanceGUID = instanceSection.getOriginalInstanceGUID();
-        }
-
-        if (super.genericErrorCode != null)
-        {
-            switch(genericErrorCode)
-            {
-                case CONFLICTING_INSTANCES:
-                    errorCode = OMRSInstanceEventErrorCode.CONFLICTING_INSTANCES;
-                    break;
-
-                case CONFLICTING_TYPE:
-                    errorCode = OMRSInstanceEventErrorCode.CONFLICTING_TYPE;
-                    break;
-
-                default:
-                    errorCode = OMRSInstanceEventErrorCode.UNKNOWN_ERROR_CODE;
-                    break;
-            }
-        }
-    }
-
-
-    /**
-     * Constructor for instance events related to a change to an entity.
-     *
-     * @param instanceEventType - type of event
-     * @param entity - entity that changed
-     */
-    public OMRSInstanceEvent(OMRSInstanceEventType instanceEventType, EntityDetail entity)
-    {
-        super(OMRSEventCategory.INSTANCE);
-
-        this.instanceEventType = instanceEventType;
-        this.entity = entity;
-    }
-
-
-    /**
-     * Constructor for instance events related to a change to a relationship.
-     *
-     * @param instanceEventType - type of event
-     * @param relationship - relationship that changed
-     */
-    public OMRSInstanceEvent(OMRSInstanceEventType instanceEventType, Relationship relationship)
-    {
-        super(OMRSEventCategory.INSTANCE);
-
-        this.instanceEventType = instanceEventType;
-        this.relationship = relationship;
-    }
-
-
-    /**
-     * Constructor for instance events related to a delete or purge of an instance - or a request to refresh
-     * an instance.
-     *
-     * @param instanceEventType - type of event
-     * @param typeDefGUID - unique identifier for this entity's TypeDef
-     * @param typeDefName - name of this entity's TypeDef
-     * @param instanceGUID - unique identifier for the entity
-     */
-    public OMRSInstanceEvent(OMRSInstanceEventType instanceEventType,
-                             String                typeDefGUID,
-                             String                typeDefName,
-                             String                instanceGUID)
-    {
-        super(OMRSEventCategory.INSTANCE);
-
-        this.instanceEventType = instanceEventType;
-        this.typeDefGUID = typeDefGUID;
-        this.typeDefName = typeDefName;
-        this.instanceGUID = instanceGUID;
-    }
-
-
-    /**
-     * Constructor for instance conflict events.
-     *
-     * @param errorCode - error code
-     * @param errorMessage - description of the error
-     * @param targetMetadataCollectionId - metadata collection id of other repository with the conflicting instance
-     * @param targetTypeDefSummary - details of the target instance's TypeDef
-     * @param targetInstanceGUID - unique identifier for the source instance
-     * @param otherMetadataCollectionId - local metadata collection id
-     * @param otherOrigin - provenance information of the local instance
-     * @param otherTypeDefSummary - TypeDef details of the local instance
-     * @param otherInstanceGUID - GUID of the local instance
-     */
-    public OMRSInstanceEvent(OMRSInstanceEventErrorCode errorCode,
-                             String                     errorMessage,
-                             String                     targetMetadataCollectionId,
-                             TypeDefSummary             targetTypeDefSummary,
-                             String                     targetInstanceGUID,
-                             String                     otherMetadataCollectionId,
-                             InstanceProvenanceType     otherOrigin,
-                             TypeDefSummary             otherTypeDefSummary,
-                             String                     otherInstanceGUID)
-    {
-        super(OMRSEventCategory.INSTANCE,
-              errorCode.getErrorCodeEncoding(),
-              errorMessage,
-              targetMetadataCollectionId,
-              targetTypeDefSummary,
-              targetInstanceGUID,
-              otherMetadataCollectionId,
-              otherOrigin,
-              otherTypeDefSummary,
-              otherInstanceGUID);
-
-        this.errorCode = errorCode;
-    }
-
-
-    /**
-     * Instance type conflict event.
-     *
-     * @param errorCode - error code
-     * @param errorMessage - description of the error
-     * @param targetMetadataCollectionId - metadata collection id of other repository with the conflicting instance
-     * @param targetTypeDefSummary - details of the target instance's TypeDef
-     * @param targetInstanceGUID - unique identifier for the source instance
-     * @param otherTypeDefSummary - details of the other TypeDef
-     */
-    public OMRSInstanceEvent(OMRSInstanceEventErrorCode errorCode,
-                             String                     errorMessage,
-                             String                     targetMetadataCollectionId,
-                             TypeDefSummary             targetTypeDefSummary,
-                             String                     targetInstanceGUID,
-                             TypeDefSummary             otherTypeDefSummary)
-    {
-        super(OMRSEventCategory.INSTANCE,
-              errorCode.getErrorCodeEncoding(),
-              errorMessage,
-              targetMetadataCollectionId,
-              targetTypeDefSummary,
-              targetInstanceGUID,
-              otherTypeDefSummary);
-
-        this.errorCode = errorCode;
-    }
-
-    /**
-     * Set up the home metadata collection Id - used for when a repository is requesting a refresh of an instance's
-     * details.
-     *
-     * @param homeMetadataCollectionId - unique id of the metadata collection where this instance comes from.
-     */
-    public void setHomeMetadataCollectionId(String homeMetadataCollectionId)
-    {
-        this.homeMetadataCollectionId = homeMetadataCollectionId;
-    }
-
-
-    /**
-     * Set up the unique id of the metadata collection that was the original home of a metadata instance that
-     * has just been rehomed.
-     *
-     * @param originalHomeMetadataCollectionId unique id of original metadata collection
-     */
-    public void setOriginalHomeMetadataCollectionId(String originalHomeMetadataCollectionId)
-    {
-        this.originalHomeMetadataCollectionId = originalHomeMetadataCollectionId;
-    }
-
-
-    /**
-     * Set up the details of the original TypeDef of a metadata instance that has just been reTyped.
-     *
-     * @param originalTypeDefSummary - details of original TypeDef
-     */
-    public void setOriginalTypeDefSummary(TypeDefSummary originalTypeDefSummary)
-    {
-        this.originalTypeDefSummary = originalTypeDefSummary;
-    }
-
-
-    /**
-     * Set up the original unique id (guid) of an instance that has just been re-identified (ie it has
-     * had a new guid assigned.
-     *
-     * @param originalInstanceGUID - original guid of an instance
-     */
-    public void setOriginalInstanceGUID(String originalInstanceGUID)
-    {
-        this.originalInstanceGUID = originalInstanceGUID;
-    }
-
-
-    /**
-     * Return the code for this event's type.
-     *
-     * @return OMRSInstanceEventType enum
-     */
-    public OMRSInstanceEventType getInstanceEventType()
-    {
-        return instanceEventType;
-    }
-
-
-    /**
-     * Return the unique identifier for the instance's TypeDef.
-     *
-     * @return String identifier (guid)
-     */
-    public String getTypeDefGUID()
-    {
-        return typeDefGUID;
-    }
-
-
-    /**
-     * Return the unique name for the instance's TypeDef.
-     *
-     * @return String name
-     */
-    public String getTypeDefName()
-    {
-        return typeDefName;
-    }
-
-
-    /**
-     * Return the unique identifier for the instance itself.
-     *
-     * @return String identifier (guid)
-     */
-    public String getInstanceGUID()
-    {
-        return instanceGUID;
-    }
-
-
-    /**
-     * Return the entity instance (if applicable) or null.
-     *
-     * @return EntityDetail object
-     */
-    public EntityDetail getEntity()
-    {
-        return entity;
-    }
-
-
-    /**
-     * Return the relationship instance (if applicable) or null.
-     *
-     * @return Relationship object
-     */
-    public Relationship getRelationship()
-    {
-        return relationship;
-    }
-
-
-    /**
-     * Return the identifier of the instance's home metadata collection.  This is used on refresh requests.
-     *
-     * @return String unique identifier (guid)
-     */
-    public String getHomeMetadataCollectionId()
-    {
-        return homeMetadataCollectionId;
-    }
-
-    /**
-     * Return the identifier of the original metadata collection for this instance.  This is used when an
-     * instance is being re-homed.
-     *
-     * @return String unique identifier (guid)
-     */
-    public String getOriginalHomeMetadataCollectionId()
-    {
-        return originalHomeMetadataCollectionId;
-    }
-
-
-    /**
-     * Return the original version for this instance's TypeDef.  This is used if the type for the
-     * instance has been changed to resolve a conflict or to allow a change in the TypeDef Gallery.
-     *
-     * @return details of the original TypeDef
-     */
-    public TypeDefSummary getOriginalTypeDefSummary()
-    {
-        return originalTypeDefSummary;
-    }
-
-
-    /**
-     * Return the original unique identifier (guid) for this instance.  This is used if the guid for the instance
-     * has been changed to resolve a conflict.
-     *
-     * @return String unique identifier (guid)
-     */
-    public String getOriginalInstanceGUID()
-    {
-        return originalInstanceGUID;
-    }
-
-
-    /**
-     * Return the error code for this instance event.  If there is no error it is set to NOT_IN_USE.
-     *
-     * @return OMRSInstanceEventErrorCode enum
-     */
-    public OMRSInstanceEventErrorCode getErrorCode()
-    {
-        return errorCode;
-    }
-
-
-    /**
-     * Returns an OMRSEvent populated with details from this InstanceEvent
-     *
-     * @return OMRSEvent (Version 1) object
-     */
-    public OMRSEventV1  getOMRSEventV1()
-    {
-        OMRSEventV1     omrsEvent = super.getOMRSEventV1();
-
-        OMRSEventV1InstanceSection instanceSection  = new OMRSEventV1InstanceSection();
-
-        instanceSection.setEventType(this.instanceEventType);
-
-        instanceSection.setTypeDefGUID(this.typeDefGUID);
-        instanceSection.setTypeDefName(this.typeDefName);
-        instanceSection.setInstanceGUID(this.instanceGUID);
-        instanceSection.setEntity(this.entity);
-        instanceSection.setRelationship(this.relationship);
-        instanceSection.setHomeMetadataCollectionId(this.homeMetadataCollectionId);
-
-        instanceSection.setOriginalHomeMetadataCollectionId(this.originalHomeMetadataCollectionId);
-        instanceSection.setOriginalTypeDefSummary(this.originalTypeDefSummary);
-        instanceSection.setOriginalInstanceGUID(this.originalInstanceGUID);
-
-        omrsEvent.setInstanceEventSection(instanceSection);
-
-        return omrsEvent;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return JSON style description of variables.
-     */
-    @Override
-    public String toString()
-    {
-        return "OMRSInstanceEvent{" +
-                "instanceEventType=" + instanceEventType +
-                ", typeDefGUID='" + typeDefGUID + '\'' +
-                ", typeDefName='" + typeDefName + '\'' +
-                ", instanceGUID='" + instanceGUID + '\'' +
-                ", entity=" + entity +
-                ", relationship=" + relationship +
-                ", homeMetadataCollectionId='" + homeMetadataCollectionId + '\'' +
-                ", originalHomeMetadataCollectionId='" + originalHomeMetadataCollectionId + '\'' +
-                ", originalTypeDefSummary=" + originalTypeDefSummary +
-                ", originalInstanceGUID='" + originalInstanceGUID + '\'' +
-                ", errorCode=" + errorCode +
-                ", eventTimestamp=" + eventTimestamp +
-                ", eventDirection=" + eventDirection +
-                ", eventCategory=" + eventCategory +
-                ", eventOriginator=" + eventOriginator +
-                ", genericErrorCode=" + genericErrorCode +
-                ", errorMessage='" + errorMessage + '\'' +
-                ", targetMetadataCollectionId='" + targetMetadataCollectionId + '\'' +
-                ", targetRemoteConnection=" + targetRemoteConnection +
-                ", targetTypeDefSummary=" + targetTypeDefSummary +
-                ", targetAttributeTypeDef=" + targetAttributeTypeDef +
-                ", targetInstanceGUID='" + targetInstanceGUID + '\'' +
-                ", otherOrigin=" + otherOrigin +
-                ", otherMetadataCollectionId='" + otherMetadataCollectionId + '\'' +
-                ", otherTypeDefSummary=" + otherTypeDefSummary +
-                ", otherTypeDef=" + otherTypeDef +
-                ", otherAttributeTypeDef=" + otherAttributeTypeDef +
-                ", otherInstanceGUID='" + otherInstanceGUID + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEventErrorCode.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEventErrorCode.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEventErrorCode.java
deleted file mode 100644
index 6c4fbfa..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSInstanceEventErrorCode.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-import org.apache.atlas.omrs.eventmanagement.events.OMRSEventErrorCode;
-
-/**
- * OMRSInstanceEventErrorCode defines the list of error codes that are used to record errors in the metadata
- * instance replication process that is used by the repository connectors within the open metadata repository cluster.
- * <ul>
- *     <li>
- *         NOT_IN_USE - There has been no error detected and so the error code is not in use.
- *     </li>
- * </ul>
- */
-public enum OMRSInstanceEventErrorCode
-{
-    NOT_IN_USE                (0, "No Error",
-                                  "There has been no error detected and so the error code is not in use.",
-                               null),
-    CONFLICTING_INSTANCES     (1, "Conflicting Instances",
-                               "There are two metadata instances that have the same unique identifier (guid) but" +
-                                           " have different types.",
-                               OMRSEventErrorCode.CONFLICTING_INSTANCES),
-    CONFLICTING_TYPE         (2, "Conflicting Type Version",
-                               "An instance can not be processed because there is a mismatch in the type definition (TypeDef) version.",
-                               OMRSEventErrorCode.CONFLICTING_TYPE),
-    UNKNOWN_ERROR_CODE        (99, "Unknown Error Code",
-                               "Unrecognized error code from incoming event.",
-                               null);
-
-
-    private int                errorCodeId;
-    private String             errorCodeName;
-    private String             errorCodeDescription;
-    private OMRSEventErrorCode errorCodeEncoding;
-
-
-    /**
-     * Default constructor sets up the values for this enum instance.
-     *
-     * @param errorCodeId - int identifier for the enum, used for indexing arrays etc with the enum.
-     * @param errorCodeName - String name for the enum, used for message content.
-     * @param errorCodeDescription - String default description for the enum, used when there is not natural
-     *                             language resource bundle available.
-     * @param errorCodeEncoding - code value to use in OMRSEvents
-     */
-    OMRSInstanceEventErrorCode(int                errorCodeId,
-                               String             errorCodeName,
-                               String             errorCodeDescription,
-                               OMRSEventErrorCode errorCodeEncoding)
-    {
-        this.errorCodeId = errorCodeId;
-        this.errorCodeName = errorCodeName;
-        this.errorCodeDescription = errorCodeDescription;
-        this.errorCodeEncoding = errorCodeEncoding;
-    }
-
-
-    /**
-     * Return the identifier for the enum, used for indexing arrays etc with the enum.
-     *
-     * @return int identifier
-     */
-    public int getErrorCodeId()
-    {
-        return errorCodeId;
-    }
-
-
-    /**
-     * Return the name for the enum, used for message content.
-     *
-     * @return String name
-     */
-    public String getErrorCodeName()
-    {
-        return errorCodeName;
-    }
-
-
-    /**
-     * Return the default description for the enum, used when there is not natural
-     * language resource bundle available.
-     *
-     * @return String default description
-     */
-    public String getErrorCodeDescription()
-    {
-        return errorCodeDescription;
-    }
-
-
-    /**
-     * Return the encoding to use in OMRSEvents.
-     *
-     * @return String OMRSEvent encoding for this errorCode
-     */
-    public OMRSEventErrorCode getErrorCodeEncoding()
-    {
-        return errorCodeEncoding;
-    }
-}
\ No newline at end of file


[19/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSEventPublisher.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSEventPublisher.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSEventPublisher.java
deleted file mode 100644
index 12be782..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/OMRSEventPublisher.java
+++ /dev/null
@@ -1,1955 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement;
-
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.omrs.admin.properties.OpenMetadataEventProtocolVersion;
-import org.apache.atlas.omrs.auditlog.*;
-import org.apache.atlas.omrs.eventmanagement.events.*;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.OMRSLogicErrorException;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityDetail;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceProvenanceType;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.Relationship;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.AttributeTypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefPatch;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-import org.apache.atlas.omrs.topicconnectors.OMRSTopicConnector;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-
-/**
- * OMRSEventPublisher publishes OMRS Events to the supplied OMRSTopicConnector.
- */
-public class OMRSEventPublisher implements OMRSRegistryEventProcessor, OMRSTypeDefEventProcessor, OMRSInstanceEventProcessor
-{
-    private static final OMRSAuditLog          auditLog  = new OMRSAuditLog(OMRSAuditingComponent.EVENT_PUBLISHER);
-
-    private static final Logger log = LoggerFactory.getLogger(OMRSEventPublisher.class);
-
-    private String                           publisherName        = null;
-    private OMRSTopicConnector               omrsTopicConnector   = null;
-    private OpenMetadataEventProtocolVersion eventProtocolVersion = null;
-
-
-    /**
-     * Typical constructor sets up the local metadata collection id for events.
-     *
-     * @param publisherName - name of the cohort (or enterprise virtual repository) that this event publisher
-     *                      is sending events to.
-     * @param localProtocolVersion - protocol version to use
-     * @param topicConnector - OMRS Topic to send requests on
-     */
-    public OMRSEventPublisher(String                           publisherName,
-                              OpenMetadataEventProtocolVersion localProtocolVersion,
-                              OMRSTopicConnector               topicConnector)
-    {
-        String actionDescription = "Initialize event publisher";
-
-        /*
-         * Save the publisherName and protocol version
-         */
-        this.eventProtocolVersion = localProtocolVersion;
-        this.publisherName = publisherName;
-
-        /*
-         * The topic connector is needed to publish events.
-         */
-        if (topicConnector == null)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Null topic connector");
-            }
-
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_TOPIC_CONNECTOR;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(publisherName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              actionDescription,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-
-        }
-
-        this.omrsTopicConnector = topicConnector;
-
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("New Event Publisher: " + publisherName);
-        }
-    }
-
-
-    /**
-     * Send the registry event to the OMRS Topic connector and manage errors
-     *
-     * @param registryEvent - properties of the event to send
-     * @return boolean flag to report if the call succeeded or not.
-     */
-    private boolean sendRegistryEvent(OMRSRegistryEvent registryEvent)
-    {
-        String   actionDescription = "Send Registry Event";
-        boolean  successFlag = false;
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Sending registryEvent for cohort: " + publisherName);
-            log.debug("topicConnector: " + omrsTopicConnector);
-            log.debug("registryEvent: " + registryEvent);
-            log.debug("localEventOriginator: " + registryEvent.getEventOriginator());
-        }
-
-        try
-        {
-            if (eventProtocolVersion == OpenMetadataEventProtocolVersion.V1)
-            {
-                omrsTopicConnector.sendEvent(registryEvent.getOMRSEventV1());
-                successFlag = true;
-            }
-        }
-        catch (Throwable error)
-        {
-            OMRSAuditCode   auditCode = OMRSAuditCode.SEND_REGISTRY_EVENT_ERROR;
-
-            auditLog.logException(actionDescription,
-                                  auditCode.getLogMessageId(),
-                                  auditCode.getSeverity(),
-                                  auditCode.getFormattedLogMessage(publisherName),
-                                  "registryEvent : " + registryEvent.toString(),
-                                  auditCode.getSystemAction(),
-                                  auditCode.getUserAction(),
-                                  error);
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("Exception: ", error, registryEvent);
-            }
-        }
-
-        return successFlag;
-    }
-
-
-    /**
-     * Send the TypeDef event to the OMRS Topic connector (providing TypeDef Events are enabled).
-     *
-     * @param typeDefEvent - properties of the event to send
-     * @return boolean flag to report if the call succeeded or not.
-     */
-    private boolean sendTypeDefEvent(OMRSTypeDefEvent   typeDefEvent)
-    {
-        String   actionDescription = "Send TypeDef Event";
-        boolean  successFlag       = false;
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Sending typeDefEvent for cohort: " + publisherName);
-            log.debug("topicConnector: ", omrsTopicConnector);
-            log.debug("typeDefEvent: ", typeDefEvent);
-            log.debug("localEventOriginator: ", typeDefEvent.getEventOriginator());
-        }
-
-        try
-        {
-            if (eventProtocolVersion == OpenMetadataEventProtocolVersion.V1)
-            {
-                omrsTopicConnector.sendEvent(typeDefEvent.getOMRSEventV1());
-                successFlag = true;
-            }
-        }
-        catch (Throwable error)
-        {
-            OMRSAuditCode auditCode = OMRSAuditCode.SEND_TYPEDEF_EVENT_ERROR;
-
-            auditLog.logException(actionDescription,
-                                  auditCode.getLogMessageId(),
-                                  auditCode.getSeverity(),
-                                  auditCode.getFormattedLogMessage(publisherName),
-                                  "typeDefEvent {" + typeDefEvent.toString() + "}",
-                                  auditCode.getSystemAction(),
-                                  auditCode.getUserAction(),
-                                  error);
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("Exception: ", error);
-            }
-        }
-
-        return successFlag;
-    }
-
-
-    /**
-     * Set the instance event to the OMRS Topic connector if the instance
-     * event is of the permitted type.
-     *
-     * @param instanceEvent - properties of the event to send
-     * @return boolean flag to report if the call succeeded or not.
-     * */
-    private boolean sendInstanceEvent(OMRSInstanceEvent instanceEvent)
-    {
-        String   actionDescription = "Send Instance Event";
-        boolean  successFlag       = false;
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Sending instanceEvent for cohort: " + publisherName);
-            log.debug("topicConnector: ", omrsTopicConnector);
-            log.debug("instanceEvent: ", instanceEvent);
-            log.debug("localEventOriginator: ", instanceEvent.getEventOriginator());
-        }
-
-        try
-        {
-            if (eventProtocolVersion == OpenMetadataEventProtocolVersion.V1)
-            {
-                omrsTopicConnector.sendEvent(instanceEvent.getOMRSEventV1());
-                successFlag = true;
-            }
-        }
-        catch (Throwable error)
-        {
-            OMRSAuditCode auditCode = OMRSAuditCode.SEND_INSTANCE_EVENT_ERROR;
-
-            auditLog.logException(actionDescription,
-                                  auditCode.getLogMessageId(),
-                                  auditCode.getSeverity(),
-                                  auditCode.getFormattedLogMessage(publisherName),
-                                  "instanceEvent {" + instanceEvent.toString() + "}",
-                                  auditCode.getSystemAction(),
-                                  auditCode.getUserAction(),
-                                  error);
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("Exception: ", error);
-            }
-        }
-
-        return successFlag;
-    }
-
-
-    /**
-     * Introduces the local server/repository to the metadata repository cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param metadataCollectionId - unique identifier for the metadata collection that is registering with the cohort.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param registrationTimestamp - the time that the server/repository issued the registration request.
-     * @param remoteConnection - the Connection properties for the connector used to call the registering server.
-     */
-    public boolean processRegistrationEvent(String                    sourceName,
-                                            String                    metadataCollectionId,
-                                            String                    originatorServerName,
-                                            String                    originatorServerType,
-                                            String                    originatorOrganizationName,
-                                            Date                      registrationTimestamp,
-                                            Connection                remoteConnection)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(metadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSRegistryEvent registryEvent = new OMRSRegistryEvent(OMRSRegistryEventType.REGISTRATION_EVENT,
-                                                                registrationTimestamp,
-                                                                remoteConnection);
-
-        registryEvent.setEventOriginator(eventOriginator);
-
-        return sendRegistryEvent(registryEvent);
-    }
-
-
-    /**
-     * Requests that the other servers in the cohort send re-registration events.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     */
-    public boolean processRegistrationRefreshRequest(String                    sourceName,
-                                                     String                    originatorServerName,
-                                                     String                    originatorServerType,
-                                                     String                    originatorOrganizationName)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSRegistryEvent registryEvent = new OMRSRegistryEvent(OMRSRegistryEventType.REFRESH_REGISTRATION_REQUEST);
-
-        registryEvent.setEventOriginator(eventOriginator);
-
-        return sendRegistryEvent(registryEvent);
-    }
-
-
-    /**
-     * Refreshes the other servers in the cohort with the local server's registration.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param metadataCollectionId - unique identifier for the metadata collection that is registering with the cohort.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param registrationTimestamp - the time that the server/repository first registered with the cohort.
-     * @param remoteConnection - the Connection properties for the connector used to call the registering server.
-     */
-    public boolean processReRegistrationEvent(String                    sourceName,
-                                              String                    metadataCollectionId,
-                                              String                    originatorServerName,
-                                              String                    originatorServerType,
-                                              String                    originatorOrganizationName,
-                                              Date                      registrationTimestamp,
-                                              Connection                remoteConnection)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(metadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSRegistryEvent registryEvent = new OMRSRegistryEvent(OMRSRegistryEventType.RE_REGISTRATION_EVENT,
-                                                                registrationTimestamp,
-                                                                remoteConnection);
-
-        registryEvent.setEventOriginator(eventOriginator);
-
-        return sendRegistryEvent(registryEvent);
-    }
-
-
-    /**
-     * A server/repository is being removed from the metadata repository cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param metadataCollectionId - unique identifier for the metadata collection that is registering with the cohort.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     */
-    public boolean processUnRegistrationEvent(String       sourceName,
-                                              String       metadataCollectionId,
-                                              String       originatorServerName,
-                                              String       originatorServerType,
-                                              String       originatorOrganizationName)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(metadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSRegistryEvent registryEvent = new OMRSRegistryEvent(OMRSRegistryEventType.UN_REGISTRATION_EVENT);
-
-        registryEvent.setEventOriginator(eventOriginator);
-
-        return sendRegistryEvent(registryEvent);
-    }
-
-
-    /**
-     * There is more than one member of the open metadata repository cohort that is using the same metadata
-     * collection Id.  This means that their metadata instances can be updated in more than one server and there
-     * is a potential for data integrity issues.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param conflictingMetadataCollectionId - unique identifier for the remote metadata collection that is
-     *                                        registering with the cohort.
-     * @param errorMessage - details of the conflict
-     */
-    public void    processConflictingCollectionIdEvent(String       sourceName,
-                                                       String       originatorMetadataCollectionId,
-                                                       String       originatorServerName,
-                                                       String       originatorServerType,
-                                                       String       originatorOrganizationName,
-                                                       String       conflictingMetadataCollectionId,
-                                                       String       errorMessage)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSRegistryEvent registryEvent = new OMRSRegistryEvent(OMRSRegistryEventErrorCode.CONFLICTING_COLLECTION_ID,
-                                                                errorMessage,
-                                                                conflictingMetadataCollectionId,
-                                                                null);
-
-        registryEvent.setEventOriginator(eventOriginator);
-
-        sendRegistryEvent(registryEvent);
-    }
-
-
-    /**
-     * A connection to one of the members of the open metadata repository cohort is not usable by one of the members.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param targetMetadataCollectionId - Id for the repository with the bad remote connection.
-     * @param remoteConnection - the Connection properties for the connector used to call the registering server.
-     * @param errorMessage - details of the error that occurs when the connection is used.
-     */
-    public void processBadConnectionEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          String       targetMetadataCollectionId,
-                                          Connection   remoteConnection,
-                                          String       errorMessage)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSRegistryEvent registryEvent = new OMRSRegistryEvent(OMRSRegistryEventErrorCode.CONFLICTING_COLLECTION_ID,
-                                                                errorMessage,
-                                                                targetMetadataCollectionId,
-                                                                remoteConnection);
-
-        registryEvent.setEventOriginator(eventOriginator);
-
-        sendRegistryEvent(registryEvent);
-    }
-
-
-    /**
-     * A new TypeDef has been defined.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDef - details of the new TypeDef
-     */
-    public void processNewTypeDefEvent(String       sourceName,
-                                       String       originatorMetadataCollectionId,
-                                       String       originatorServerName,
-                                       String       originatorServerType,
-                                       String       originatorOrganizationName,
-                                       TypeDef      typeDef)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSTypeDefEvent   typeDefEvent = new OMRSTypeDefEvent(OMRSTypeDefEventType.NEW_TYPEDEF_EVENT, typeDef);
-
-        typeDefEvent.setEventOriginator(eventOriginator);
-
-        this.sendTypeDefEvent(typeDefEvent);
-    }
-
-    /**
-     * A new AttributeTypeDef has been defined in an open metadata repository.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param attributeTypeDef - details of the new AttributeTypeDef.
-     */
-    public void processNewAttributeTypeDefEvent(String           sourceName,
-                                                String           originatorMetadataCollectionId,
-                                                String           originatorServerName,
-                                                String           originatorServerType,
-                                                String           originatorOrganizationName,
-                                                AttributeTypeDef attributeTypeDef)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSTypeDefEvent   typeDefEvent = new OMRSTypeDefEvent(OMRSTypeDefEventType.NEW_ATTRIBUTE_TYPEDEF_EVENT, attributeTypeDef);
-
-        typeDefEvent.setEventOriginator(eventOriginator);
-
-        this.sendTypeDefEvent(typeDefEvent);
-    }
-
-
-    /**
-     * An existing TypeDef has been updated.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefPatch - details of the new version of the TypeDef
-     */
-    public void processUpdatedTypeDefEvent(String       sourceName,
-                                           String       originatorMetadataCollectionId,
-                                           String       originatorServerName,
-                                           String       originatorServerType,
-                                           String       originatorOrganizationName,
-                                           TypeDefPatch typeDefPatch)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSTypeDefEvent   typeDefEvent = new OMRSTypeDefEvent(OMRSTypeDefEventType.UPDATED_TYPEDEF_EVENT, typeDefPatch);
-
-        typeDefEvent.setEventOriginator(eventOriginator);
-
-        this.sendTypeDefEvent(typeDefEvent);
-    }
-
-
-    /**
-     * An existing TypeDef has been deleted.  Both the name and the GUID are provided to ensure the right TypeDef is
-     * deleted in remote repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - unique identifier of the TypeDef
-     * @param typeDefName - unique name of the TypeDef
-     */
-    public void processDeletedTypeDefEvent(String       sourceName,
-                                           String       originatorMetadataCollectionId,
-                                           String       originatorServerName,
-                                           String       originatorServerType,
-                                           String       originatorOrganizationName,
-                                           String       typeDefGUID,
-                                           String       typeDefName)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSTypeDefEvent typeDefEvent = new OMRSTypeDefEvent(OMRSTypeDefEventType.DELETED_TYPEDEF_EVENT,
-                                                             typeDefGUID,
-                                                             typeDefName);
-
-        typeDefEvent.setEventOriginator(eventOriginator);
-
-        this.sendTypeDefEvent(typeDefEvent);
-    }
-
-
-    /**
-     * An existing AttributeTypeDef has been deleted in an open metadata repository.  Both the name and the
-     * GUID are provided to ensure the right AttributeTypeDef is deleted in other cohort member repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param attributeTypeDefGUID - unique identifier of the AttributeTypeDef
-     * @param attributeTypeDefName - unique name of the AttributeTypeDef
-     */
-    public void processDeletedAttributeTypeDefEvent(String      sourceName,
-                                                    String      originatorMetadataCollectionId,
-                                                    String      originatorServerName,
-                                                    String      originatorServerType,
-                                                    String      originatorOrganizationName,
-                                                    String      attributeTypeDefGUID,
-                                                    String      attributeTypeDefName)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSTypeDefEvent typeDefEvent = new OMRSTypeDefEvent(OMRSTypeDefEventType.DELETED_ATTRIBUTE_TYPEDEF_EVENT,
-                                                             attributeTypeDefGUID,
-                                                             attributeTypeDefName);
-
-        typeDefEvent.setEventOriginator(eventOriginator);
-
-        this.sendTypeDefEvent(typeDefEvent);
-    }
-
-
-    /**
-     * The guid or name of an existing TypeDef has been changed to a new value.  This is used if two different
-     * Typedefs are discovered to have either the same guid or, most likely, the same name.  This type of conflict
-     * is rare but typically occurs when a new repository joins the cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalTypeDefSummary - the details for the original TypeDef.
-     * @param typeDef - updated TypeDef with new identifiers
-     */
-    public void processReIdentifiedTypeDefEvent(String         sourceName,
-                                                String         originatorMetadataCollectionId,
-                                                String         originatorServerName,
-                                                String         originatorServerType,
-                                                String         originatorOrganizationName,
-                                                TypeDefSummary originalTypeDefSummary,
-                                                TypeDef        typeDef)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-
-        OMRSTypeDefEvent typeDefEvent = new OMRSTypeDefEvent(OMRSTypeDefEventType.RE_IDENTIFIED_TYPEDEF_EVENT,
-                                                             originalTypeDefSummary,
-                                                             typeDef);
-
-        typeDefEvent.setEventOriginator(eventOriginator);
-
-        this.sendTypeDefEvent(typeDefEvent);
-    }
-
-    /**
-     * Process an event that changes either the name or guid of an AttributeTypeDef.
-     * It is resolving a Conflicting AttributeTypeDef Error.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalAttributeTypeDef - description of original AttributeTypeDef
-     * @param attributeTypeDef - updated AttributeTypeDef with new identifiers inside.
-     */
-    public void processReIdentifiedAttributeTypeDefEvent(String           sourceName,
-                                                         String           originatorMetadataCollectionId,
-                                                         String           originatorServerName,
-                                                         String           originatorServerType,
-                                                         String           originatorOrganizationName,
-                                                         AttributeTypeDef originalAttributeTypeDef,
-                                                         AttributeTypeDef attributeTypeDef)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-
-        OMRSTypeDefEvent typeDefEvent = new OMRSTypeDefEvent(OMRSTypeDefEventType.RE_IDENTIFIED_ATTRIBUTE_TYPEDEF_EVENT,
-                                                             originalAttributeTypeDef,
-                                                             attributeTypeDef);
-
-        typeDefEvent.setEventOriginator(eventOriginator);
-
-        this.sendTypeDefEvent(typeDefEvent);
-    }
-
-
-    /**
-     * Process a detected conflict in type definitions (TypeDefs) used in the cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originatorTypeDefSummary - details of the TypeDef in the event originator
-     * @param otherMetadataCollectionId - the metadataCollection using the conflicting TypeDef
-     * @param conflictingTypeDefSummary - the details of the TypeDef in the other metadata collection
-     * @param errorMessage - details of the error that occurs when the connection is used.
-     */
-    public void processTypeDefConflictEvent(String         sourceName,
-                                            String         originatorMetadataCollectionId,
-                                            String         originatorServerName,
-                                            String         originatorServerType,
-                                            String         originatorOrganizationName,
-                                            TypeDefSummary originatorTypeDefSummary,
-                                            String         otherMetadataCollectionId,
-                                            TypeDefSummary conflictingTypeDefSummary,
-                                            String         errorMessage)
-
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSTypeDefEvent typeDefEvent = new OMRSTypeDefEvent(OMRSTypeDefEventErrorCode.CONFLICTING_TYPEDEFS,
-                                                             errorMessage,
-                                                             originatorMetadataCollectionId,
-                                                             originatorTypeDefSummary,
-                                                             conflictingTypeDefSummary);
-
-        typeDefEvent.setEventOriginator(eventOriginator);
-
-        this.sendTypeDefEvent(typeDefEvent);
-    }
-
-
-    /**
-     * Process a detected conflict in the attribute type definitions (AttributeTypeDefs) used in the cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originatorAttributeTypeDef- description of the AttributeTypeDef in the event originator.
-     * @param otherMetadataCollectionId - the metadataCollection using the conflicting AttributeTypeDef.
-     * @param conflictingAttributeTypeDef - description of the AttributeTypeDef in the other metadata collection.
-     * @param errorMessage - details of the error that occurs when the connection is used.
-     */
-    public void processAttributeTypeDefConflictEvent(String           sourceName,
-                                                     String           originatorMetadataCollectionId,
-                                                     String           originatorServerName,
-                                                     String           originatorServerType,
-                                                     String           originatorOrganizationName,
-                                                     AttributeTypeDef originatorAttributeTypeDef,
-                                                     String           otherMetadataCollectionId,
-                                                     AttributeTypeDef conflictingAttributeTypeDef,
-                                                     String           errorMessage)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSTypeDefEvent typeDefEvent = new OMRSTypeDefEvent(OMRSTypeDefEventErrorCode.CONFLICTING_ATTRIBUTE_TYPEDEFS,
-                                                             errorMessage,
-                                                             originatorMetadataCollectionId,
-                                                             originatorAttributeTypeDef,
-                                                             conflictingAttributeTypeDef);
-
-        typeDefEvent.setEventOriginator(eventOriginator);
-
-        this.sendTypeDefEvent(typeDefEvent);
-    }
-
-
-    /**
-     * A TypeDef from another member in the cohort is at a different version than the local repository.  This may
-     * create some inconsistencies in the different copies of instances of this type in different members of the
-     * cohort.  The recommended action is to update all TypeDefs to the latest version.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param targetMetadataCollectionId - identifier of the metadata collection that is reporting a TypeDef at a
-     *                                   different level to the local repository.
-     * @param targetTypeDefSummary - details of the TypeDef being patched
-     * @param otherTypeDef - details of the TypeDef in the local repository.
-     */
-    public void processTypeDefPatchMismatchEvent(String         sourceName,
-                                                 String         originatorMetadataCollectionId,
-                                                 String         originatorServerName,
-                                                 String         originatorServerType,
-                                                 String         originatorOrganizationName,
-                                                 String         targetMetadataCollectionId,
-                                                 TypeDefSummary targetTypeDefSummary,
-                                                 TypeDef        otherTypeDef,
-                                                 String         errorMessage)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-
-
-        OMRSTypeDefEvent typeDefEvent = new OMRSTypeDefEvent(OMRSTypeDefEventErrorCode.TYPEDEF_PATCH_MISMATCH,
-                                                             errorMessage,
-                                                             targetMetadataCollectionId,
-                                                             targetTypeDefSummary,
-                                                             otherTypeDef);
-
-        typeDefEvent.setEventOriginator(eventOriginator);
-
-        this.sendTypeDefEvent(typeDefEvent);
-    }
-
-
-    /**
-     * A new entity has been created.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the new entity
-     */
-    public void processNewEntityEvent(String       sourceName,
-                                      String       originatorMetadataCollectionId,
-                                      String       originatorServerName,
-                                      String       originatorServerType,
-                                      String       originatorOrganizationName,
-                                      EntityDetail entity)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.NEW_ENTITY_EVENT,
-                                                                entity);
-
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * An existing entity has been updated.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the new version of the entity.
-     */
-    public void processUpdatedEntityEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          EntityDetail entity)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.UPDATED_ENTITY_EVENT,
-                                                                entity);
-
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * An update to an entity has been undone.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the version of the entity that has been restored.
-     */
-    public void processUndoneEntityEvent(String       sourceName,
-                                         String       originatorMetadataCollectionId,
-                                         String       originatorServerName,
-                                         String       originatorServerType,
-                                         String       originatorOrganizationName,
-                                         EntityDetail entity)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.UNDONE_ENTITY_EVENT,
-                                                                entity);
-
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * A new classification has been added to an entity.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the entity with the new classification added.
-     */
-    public void processClassifiedEntityEvent(String       sourceName,
-                                             String       originatorMetadataCollectionId,
-                                             String       originatorServerName,
-                                             String       originatorServerType,
-                                             String       originatorOrganizationName,
-                                             EntityDetail entity)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.CLASSIFIED_ENTITY_EVENT,
-                                                                entity);
-
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * A classification has been removed from an entity.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the entity after the classification has been removed.
-     */
-    public void processDeclassifiedEntityEvent(String       sourceName,
-                                               String       originatorMetadataCollectionId,
-                                               String       originatorServerName,
-                                               String       originatorServerType,
-                                               String       originatorOrganizationName,
-                                               EntityDetail entity)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.DECLASSIFIED_ENTITY_EVENT,
-                                                                entity);
-
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * An existing classification has been changed on an entity.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the entity after the classification has been changed.
-     */
-    public void processReclassifiedEntityEvent(String       sourceName,
-                                               String       originatorMetadataCollectionId,
-                                               String       originatorServerName,
-                                               String       originatorServerType,
-                                               String       originatorOrganizationName,
-                                               EntityDetail entity)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.RECLASSIFIED_ENTITY_EVENT,
-                                                                entity);
-
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * An existing entity has been deleted.  This is a soft delete. This means it is still in the repository
-     * but it is no longer returned on queries.
-     *
-     * All relationships to the entity are also soft-deleted and will no longer be usable.  These deleted relationships
-     * will be notified through separate events.
-     *
-     * Details of the TypeDef are included with the entity's unique id (guid) to ensure the right entity is deleted in
-     * the remote repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - deleted entity
-     */
-    public void processDeletedEntityEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          EntityDetail entity)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.DELETED_ENTITY_EVENT,
-                                                                entity);
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * A deleted entity has been permanently removed from the repository.  This request can not be undone.
-     *
-     * Details of the TypeDef are included with the entity's unique id (guid) to ensure the right entity is purged in
-     * the remote repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - unique identifier for this entity's TypeDef
-     * @param typeDefName - name of this entity's TypeDef
-     * @param instanceGUID - unique identifier for the entity
-     */
-    public void processPurgedEntityEvent(String       sourceName,
-                                         String       originatorMetadataCollectionId,
-                                         String       originatorServerName,
-                                         String       originatorServerType,
-                                         String       originatorOrganizationName,
-                                         String       typeDefGUID,
-                                         String       typeDefName,
-                                         String       instanceGUID)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.PURGED_ENTITY_EVENT,
-                                                                typeDefGUID,
-                                                                typeDefName,
-                                                                instanceGUID);
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * A deleted entity has been restored to the state it was before it was deleted.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the version of the entity that has been restored.
-     */
-    public void processRestoredEntityEvent(String       sourceName,
-                                           String       originatorMetadataCollectionId,
-                                           String       originatorServerName,
-                                           String       originatorServerType,
-                                           String       originatorOrganizationName,
-                                           EntityDetail entity)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.RESTORED_ENTITY_EVENT,
-                                                                entity);
-
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * The guid of an existing entity has been changed to a new value.  This is used if two different
-     * entities are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalEntityGUID - the existing identifier for the entity.
-     * @param entity - new values for this entity, including the new guid.
-     */
-    public void processReIdentifiedEntityEvent(String       sourceName,
-                                               String       originatorMetadataCollectionId,
-                                               String       originatorServerName,
-                                               String       originatorServerType,
-                                               String       originatorOrganizationName,
-                                               String       originalEntityGUID,
-                                               EntityDetail entity)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.RE_IDENTIFIED_ENTITY_EVENT,
-                                                                entity);
-
-        instanceEvent.setEventOriginator(eventOriginator);
-        instanceEvent.setOriginalInstanceGUID(originalEntityGUID);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * An existing entity has had its type changed.  Typically this action is taken to move an entity's
-     * type to either a super type (so the subtype can be deleted) or a new subtype (so additional properties can be
-     * added.)  However, the type can be changed to any compatible type.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalTypeDefSummary - original details for this entity's TypeDef.
-     * @param entity - new values for this entity, including the new type information.
-     */
-    public void processReTypedEntityEvent(String         sourceName,
-                                          String         originatorMetadataCollectionId,
-                                          String         originatorServerName,
-                                          String         originatorServerType,
-                                          String         originatorOrganizationName,
-                                          TypeDefSummary originalTypeDefSummary,
-                                          EntityDetail   entity)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.RETYPED_ENTITY_EVENT,
-                                                                entity);
-
-        instanceEvent.setEventOriginator(eventOriginator);
-        instanceEvent.setOriginalTypeDefSummary(originalTypeDefSummary);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * An existing entity has changed home repository.  This action is taken for example, if a repository
-     * becomes permanently unavailable, or if the user community updating this entity move to working
-     * from a different repository in the open metadata repository cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalHomeMetadataCollectionId - unique identifier for the original home repository.
-     * @param entity - new values for this entity, including the new home information.
-     */
-    public void processReHomedEntityEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          String       originalHomeMetadataCollectionId,
-                                          EntityDetail entity)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.RE_HOMED_ENTITY_EVENT,
-                                                                entity);
-
-        instanceEvent.setEventOriginator(eventOriginator);
-        instanceEvent.setOriginalHomeMetadataCollectionId(originalHomeMetadataCollectionId);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * The local repository is requesting that an entity from another repository's metadata collection is
-     * refreshed so the local repository can create a reference copy.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - - unique identifier for this entity's TypeDef
-     * @param typeDefName - name of this entity's TypeDef
-     * @param instanceGUID - unique identifier for the entity
-     * @param homeMetadataCollectionId - metadata collection id for the home of this instance.
-     */
-    public void processRefreshEntityRequested(String       sourceName,
-                                              String       originatorMetadataCollectionId,
-                                              String       originatorServerName,
-                                              String       originatorServerType,
-                                              String       originatorOrganizationName,
-                                              String       typeDefGUID,
-                                              String       typeDefName,
-                                              String       instanceGUID,
-                                              String       homeMetadataCollectionId)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.REFRESH_ENTITY_REQUEST,
-                                                                typeDefGUID,
-                                                                typeDefName,
-                                                                instanceGUID);
-
-        instanceEvent.setEventOriginator(eventOriginator);
-        instanceEvent.setHomeMetadataCollectionId(homeMetadataCollectionId);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * A remote repository in the cohort has sent entity details in response to a refresh request.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param entity - details of the requested entity
-     */
-    public void processRefreshEntityEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          EntityDetail entity)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.REFRESHED_ENTITY_EVENT,
-                                                                entity);
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * A new relationship has been created.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - details of the new relationship
-     */
-    public void processNewRelationshipEvent(String       sourceName,
-                                            String       originatorMetadataCollectionId,
-                                            String       originatorServerName,
-                                            String       originatorServerType,
-                                            String       originatorOrganizationName,
-                                            Relationship relationship)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.NEW_RELATIONSHIP_EVENT,
-                                                                relationship);
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * An existing relationship has been updated.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - details of the new version of the relationship.
-     */
-    public void processUpdatedRelationshipEvent(String       sourceName,
-                                                String       originatorMetadataCollectionId,
-                                                String       originatorServerName,
-                                                String       originatorServerType,
-                                                String       originatorOrganizationName,
-                                                Relationship relationship)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.UPDATED_RELATIONSHIP_EVENT,
-                                                                relationship);
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * An update to a relationship has been undone.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - details of the version of the relationship that has been restored.
-     */
-    public void processUndoneRelationshipEvent(String       sourceName,
-                                               String       originatorMetadataCollectionId,
-                                               String       originatorServerName,
-                                               String       originatorServerType,
-                                               String       originatorOrganizationName,
-                                               Relationship relationship)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.UNDONE_RELATIONSHIP_EVENT,
-                                                                relationship);
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-    /**
-     * An existing relationship has been deleted.  This is a soft delete. This means it is still in the repository
-     * but it is no longer returned on queries.
-     *
-     * Details of the TypeDef are included with the relationship's unique id (guid) to ensure the right
-     * relationship is deleted in the remote repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param relationship - deleted relationship
-     */
-    public void processDeletedRelationshipEvent(String       sourceName,
-                                                String       originatorMetadataCollectionId,
-                                                String       originatorServerName,
-                                                String       originatorServerType,
-                                                String       originatorOrganizationName,
-                                                Relationship relationship)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.DELETED_RELATIONSHIP_EVENT,
-                                                                relationship);
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * A deleted relationship has been permanently removed from the repository.  This request can not be undone.
-     *
-     * Details of the TypeDef are included with the relationship's unique id (guid) to ensure the right
-     * relationship is purged in the remote repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - unique identifier for this relationship's TypeDef.
-     * @param typeDefName - name of this relationship's TypeDef.
-     * @param instanceGUID - unique identifier for the relationship.
-     */
-    public void processPurgedRelationshipEvent(String       sourceName,
-                                               String       originatorMetadataCollectionId,
-                                               String       originatorServerName,
-                                               String       originatorServerType,
-                                               String       originatorOrganizationName,
-                                               String       typeDefGUID,
-                                               String       typeDefName,
-                                               String       instanceGUID)
-    {
-        OMRSEventOriginator eventOriginator = new OMRSEventOriginator();
-
-        eventOriginator.setMetadataCollectionId(originatorMetadataCollectionId);
-        eventOriginator.setServerName(originatorServerName);
-        eventOriginator.setServerType(originatorServerType);
-        eventOriginator.setOrganizationName(originatorOrganizationName);
-
-        OMRSInstanceEvent instanceEvent = new OMRSInstanceEvent(OMRSInstanceEventType.PURGED_RELATIONSHIP_EVENT,
-                                                                typeDefGUID,
-                                                                typeDefName,
-                                                                instanceGUID);
-
-        instanceEvent.setEventOriginator(eventOriginator);
-
-        this.sendInstanceEvent(instanceEvent);
-    }
-
-
-    /**
-     * A deleted relationship has been restored to the state it was before it was deleted.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @pa

<TRUNCATED>

[02/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/metadatacollection/OMRSMetadataCollectionBase.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/metadatacollection/OMRSMetadataCollectionBase.java b/omrs/src/main/java/org/apache/atlas/omrs/metadatacollection/OMRSMetadataCollectionBase.java
deleted file mode 100644
index bdd2e43..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/metadatacollection/OMRSMetadataCollectionBase.java
+++ /dev/null
@@ -1,4407 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.metadatacollection;
-
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.*;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.metadatacollection.properties.MatchCriteria;
-import org.apache.atlas.omrs.metadatacollection.properties.SequencingOrder;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.*;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.*;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-import java.util.List;
-import java.util.Date;
-
-/**
- * <p>
- *     OMRSMetadataCollection is the common interface for working with the contents of a metadata repository.
- *     Within a metadata collection are the type definitions (TypeDefs) and metadata instances (Entities and
- *     Relationships).  OMRSMetadataCollectionBase provides empty implementation of the the abstract methods of
- *     OMRSMetadataCollection.
- *
- *     The methods on OMRSMetadataCollection are in the following major groups:
- * </p>
- * <ul>
- *     <li><b>Methods to retrieve information about the metadata repository</b> -
- *         Used to retrieve or confirm the identity of the metadata repository
- *     </li>
- *     <li><b>Methods for working with typedefs</b> -
- *         Typedefs are used to define the type model for open metadata.
- *         The open metadata support had a comprehensive set of typedefs implemented, and these can be augmented by
- *         different vendors or applications.  The typedefs can be queried, created, updated and deleted though the
- *         metadata collection.
- *     </li>
- *
- *     <li><b>Methods for querying Entities and Relationships</b> -
- *         The metadata repository stores instances of the typedefs as metadata instances.
- *         Principally these are entities (nodes in the graph) and relationships (links between nodes).
- *         Both the entities and relationships can have properties.
- *         The entity may also have structured properties called structs and classifications attached.
- *         This second group of methods supports a range of queries to retrieve these instances.
- *     </li>
- *
- *     <li><b>Methods for maintaining the instances</b> -
- *         The fourth group of methods supports the maintenance of the metadata instances.  Each instance as a status
- *         (see InstanceStatus) that allows an instance to be proposed, drafted and approved before it becomes
- *         active.  The instances can also be soft-deleted and restored or purged from the metadata
- *         collection.
- *     </li>
- *     <li>
- *         <b>Methods for repairing the metadata collections of the cohort</b> -
- *         The fifth group of methods are for editing the control information of entities and relationships to
- *         manage changes in the cohort.  These methods are advanced methods and are rarely used.
- *     </li>
- *     <li>
- *         <b>Methods for local maintenance of a metadata collection</b>
- *         The final group of methods are for removing reference copies of the metadata instances.  These updates
- *         are not broadcast to the rest of the Cohort as events.
- *     </li>
- * </ul>
- */
-public abstract class OMRSMetadataCollectionBase extends OMRSMetadataCollection
-{
-
-    /**
-     * Constructor to save the metadata collection id.
-     *
-     * @param metadataCollectionId - unique identifier for the metadata managed by the repository.
-     */
-    @Deprecated
-    public OMRSMetadataCollectionBase(String  metadataCollectionId)
-    {
-        super(metadataCollectionId);
-    }
-
-
-    /**
-     * Constructor ensures the metadata collection is linked to its connector and knows its metadata collection Id.
-     *
-     * @param parentConnector - connector that this metadata collection supports.  The connector has the information
-     *                        to call the metadata repository.
-     * @param repositoryName - name of this repository.
-     * @param repositoryHelper - helper class for building types and instances
-     * @param repositoryValidator - validator class for checking open metadata repository objects and parameters.
-     * @param metadataCollectionId - unique identifier of the metadata collection Id.
-     */
-    public OMRSMetadataCollectionBase(OMRSRepositoryConnector parentConnector,
-                                      String                  repositoryName,
-                                      OMRSRepositoryHelper    repositoryHelper,
-                                      OMRSRepositoryValidator repositoryValidator,
-                                      String                  metadataCollectionId)
-    {
-        super(parentConnector, repositoryName, metadataCollectionId, repositoryHelper, repositoryValidator);
-    }
-
-
-    /* ======================================================================
-     * Group 1: Confirm the identity of the metadata repository being called.
-     */
-
-    /**
-     * Returns the identifier of the metadata repository.  This is the identifier used to register the
-     * metadata repository with the metadata repository cohort.  It is also the identifier used to
-     * identify the home repository of a metadata instance.
-     *
-     * @return String - metadata collection id.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     */
-    public String      getMetadataCollectionId() throws RepositoryErrorException
-    {
-        final String methodName = "getMetadataCollectionId";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        /*
-         * Perform operation
-         */
-        return super.metadataCollectionId;
-    }
-
-
-    /* ==============================
-     * Group 2: Working with typedefs
-     */
-
-
-    /**
-     * Returns the list of different types of metadata organized into two groups.  The first are the
-     * attribute type definitions (AttributeTypeDefs).  These provide types for properties in full
-     * type definitions.  Full type definitions (TypeDefs) describe types for entities, relationships
-     * and classifications.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @return TypeDefGalleryResponse - List of different categories of type definitions.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDefGallery getAllTypes(String   userId) throws RepositoryErrorException,
-                                                              UserNotAuthorizedException
-    {
-        final String                       methodName = "getAllTypes";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Returns a list of type definitions that have the specified name.  Type names should be unique.  This
-     * method allows wildcard character to be included in the name.  These are * (asterisk) for an
-     * arbitrary string of characters and ampersand for an arbitrary character.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - name of the TypeDefs to return (including wildcard characters).
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the name of the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDefGallery findTypesByName(String userId,
-                                          String name) throws InvalidParameterException,
-                                                              RepositoryErrorException,
-                                                              UserNotAuthorizedException
-    {
-        final String   methodName        = "findTypesByName";
-        final String   nameParameterName = "name";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeName(repositoryName, nameParameterName, name, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Returns all of the TypeDefs for a specific category.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param category - enum value for the category of TypeDef to return.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the TypeDefCategory is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> findTypeDefsByCategory(String          userId,
-                                                TypeDefCategory category) throws InvalidParameterException,
-                                                                                 RepositoryErrorException,
-                                                                                 UserNotAuthorizedException
-    {
-        final String methodName            = "findTypeDefsByCategory";
-        final String categoryParameterName = "category";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefCategory(repositoryName, categoryParameterName, category, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Returns all of the AttributeTypeDefs for a specific category.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param category - enum value for the category of an AttributeTypeDef to return.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the TypeDefCategory is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<AttributeTypeDef> findAttributeTypeDefsByCategory(String                   userId,
-                                                                  AttributeTypeDefCategory category) throws InvalidParameterException,
-                                                                                                            RepositoryErrorException,
-                                                                                                            UserNotAuthorizedException
-    {
-        final String methodName            = "findAttributeTypeDefsByCategory";
-        final String categoryParameterName = "category";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDefCategory(repositoryName, categoryParameterName, category, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return the TypeDefs that have the properties matching the supplied match criteria.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param matchCriteria - TypeDefProperties - a list of property names and values.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the matchCriteria is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> findTypeDefsByProperty(String            userId,
-                                                TypeDefProperties matchCriteria) throws InvalidParameterException,
-                                                                                        RepositoryErrorException,
-                                                                                        UserNotAuthorizedException
-    {
-        final String  methodName                 = "findTypeDefsByProperty";
-        final String  matchCriteriaParameterName = "matchCriteria";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateMatchCriteria(repositoryName, matchCriteriaParameterName, matchCriteria, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return the types that are linked to the elements from the specified standard.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param standard - name of the standard - null means any.
-     * @param organization - name of the organization - null means any.
-     * @param identifier - identifier of the element in the standard - null means any.
-     * @return TypeDefs list - each entry in the list contains a typedef.  This is is a structure
-     * describing the TypeDef's category and properties.
-     * @throws InvalidParameterException - all attributes of the external id are null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> findTypesByExternalID(String    userId,
-                                                String    standard,
-                                                String    organization,
-                                                String    identifier) throws InvalidParameterException,
-                                                                             RepositoryErrorException,
-                                                                             UserNotAuthorizedException
-    {
-        final String                       methodName = "findTypesByExternalID";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateExternalId(repositoryName, standard, organization, identifier, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return the TypeDefs that match the search criteria.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param searchCriteria - String - search criteria.
-     * @return TypeDefs list - each entry in the list contains a typedef.  This is is a structure
-     * describing the TypeDef's category and properties.
-     * @throws InvalidParameterException - the searchCriteria is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> searchForTypeDefs(String userId,
-                                           String searchCriteria) throws InvalidParameterException,
-                                                                         RepositoryErrorException,
-                                                                         UserNotAuthorizedException
-    {
-        final String methodName                  = "searchForTypeDefs";
-        final String searchCriteriaParameterName = "searchCriteria";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateSearchCriteria(repositoryName, searchCriteriaParameterName, searchCriteria, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return the TypeDef identified by the GUID.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique id of the TypeDef.
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - The requested TypeDef is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDef getTypeDefByGUID(String    userId,
-                                    String    guid) throws InvalidParameterException,
-                                                           RepositoryErrorException,
-                                                           TypeDefNotKnownException,
-                                                           UserNotAuthorizedException
-    {
-        final String methodName        = "getTypeDefByGUID";
-        final String guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the GUID.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique id of the TypeDef
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - The requested TypeDef is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  AttributeTypeDef getAttributeTypeDefByGUID(String    userId,
-                                                       String    guid) throws InvalidParameterException,
-                                                                              RepositoryErrorException,
-                                                                              TypeDefNotKnownException,
-                                                                              UserNotAuthorizedException
-    {
-        final String methodName        = "getAttributeTypeDefByGUID";
-        final String guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return the TypeDef identified by the unique name.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - String name of the TypeDef.
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the name is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDef getTypeDefByName(String    userId,
-                                    String    name) throws InvalidParameterException,
-                                                           RepositoryErrorException,
-                                                           TypeDefNotKnownException,
-                                                           UserNotAuthorizedException
-    {
-        final String  methodName = "getTypeDefByName";
-        final String  nameParameterName = "name";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeName(repositoryName, nameParameterName, name, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the unique name.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - String name of the TypeDef.
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the name is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  AttributeTypeDef getAttributeTypeDefByName(String    userId,
-                                                       String    name) throws InvalidParameterException,
-                                                                              RepositoryErrorException,
-                                                                              TypeDefNotKnownException,
-                                                                              UserNotAuthorizedException
-    {
-        final String  methodName = "getAttributeTypeDefByName";
-        final String  nameParameterName = "name";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeName(repositoryName, nameParameterName, name, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Create a collection of related types.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newTypes - TypeDefGalleryResponse structure describing the new AttributeTypeDefs and TypeDefs.
-     * @throws InvalidParameterException - the new TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefKnownException - the TypeDef is already stored in the repository.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  void addTypeDefGallery(String          userId,
-                                   TypeDefGallery  newTypes) throws InvalidParameterException,
-                                                                    RepositoryErrorException,
-                                                                    TypeDefNotSupportedException,
-                                                                    TypeDefKnownException,
-                                                                    TypeDefConflictException,
-                                                                    InvalidTypeDefException,
-                                                                    FunctionNotSupportedException,
-                                                                    UserNotAuthorizedException
-    {
-        final String  methodName = "addTypeDefGallery";
-        final String  galleryParameterName = "newTypes";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefGallery(repositoryName, galleryParameterName, newTypes, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-
-
-    /**
-     * Create a definition of a new TypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newTypeDef - TypeDef structure describing the new TypeDef.
-     * @throws InvalidParameterException - the new TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefKnownException - the TypeDef is already stored in the repository.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public void addTypeDef(String       userId,
-                           TypeDef      newTypeDef) throws InvalidParameterException,
-                                                           RepositoryErrorException,
-                                                           TypeDefNotSupportedException,
-                                                           TypeDefKnownException,
-                                                           TypeDefConflictException,
-                                                           InvalidTypeDefException,
-                                                           FunctionNotSupportedException,
-                                                           UserNotAuthorizedException
-    {
-        final String  methodName = "addTypeDef";
-        final String  typeDefParameterName = "newTypeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDef(repositoryName, typeDefParameterName, newTypeDef, methodName);
-        repositoryValidator.validateUnknownTypeDef(repositoryName, typeDefParameterName, newTypeDef, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Create a definition of a new AttributeTypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newAttributeTypeDef - TypeDef structure describing the new TypeDef.
-     * @throws InvalidParameterException - the new TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefKnownException - the TypeDef is already stored in the repository.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  void addAttributeTypeDef(String             userId,
-                                     AttributeTypeDef   newAttributeTypeDef) throws InvalidParameterException,
-                                                                                    RepositoryErrorException,
-                                                                                    TypeDefNotSupportedException,
-                                                                                    TypeDefKnownException,
-                                                                                    TypeDefConflictException,
-                                                                                    InvalidTypeDefException,
-                                                                                    FunctionNotSupportedException,
-                                                                                    UserNotAuthorizedException
-    {
-        final String  methodName           = "addAttributeTypeDef";
-        final String  typeDefParameterName = "newAttributeTypeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDef(repositoryName, typeDefParameterName, newAttributeTypeDef, methodName);
-        repositoryValidator.validateUnknownAttributeTypeDef(repositoryName, typeDefParameterName, newAttributeTypeDef, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Verify that a definition of a TypeDef is either new - or matches the definition already stored.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param typeDef - TypeDef structure describing the TypeDef to test.
-     * @return boolean - true means the TypeDef matches the local definition - false means the TypeDef is not known.
-     * @throws InvalidParameterException - the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public boolean verifyTypeDef(String       userId,
-                                 TypeDef      typeDef) throws InvalidParameterException,
-                                                              RepositoryErrorException,
-                                                              TypeDefNotSupportedException,
-                                                              TypeDefConflictException,
-                                                              InvalidTypeDefException,
-                                                              UserNotAuthorizedException
-    {
-        final String  methodName           = "verifyTypeDef";
-        final String  typeDefParameterName = "typeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDef(repositoryName, typeDefParameterName, typeDef, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Verify that a definition of an AttributeTypeDef is either new - or matches the definition already stored.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param attributeTypeDef - TypeDef structure describing the TypeDef to test.
-     * @return boolean - true means the TypeDef matches the local definition - false means the TypeDef is not known.
-     * @throws InvalidParameterException - the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  boolean verifyAttributeTypeDef(String            userId,
-                                           AttributeTypeDef  attributeTypeDef) throws InvalidParameterException,
-                                                                                      RepositoryErrorException,
-                                                                                      TypeDefNotSupportedException,
-                                                                                      TypeDefConflictException,
-                                                                                      InvalidTypeDefException,
-                                                                                      UserNotAuthorizedException
-    {
-        final String  methodName           = "verifyAttributeTypeDef";
-        final String  typeDefParameterName = "attributeTypeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDef(repositoryName, typeDefParameterName, attributeTypeDef, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Update one or more properties of the TypeDef.  The TypeDefPatch controls what types of updates
-     * are safe to make to the TypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param typeDefPatch - TypeDef patch describing change to TypeDef.
-     * @return updated TypeDef
-     * @throws InvalidParameterException - the TypeDefPatch is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws PatchErrorException - the TypeDef can not be updated because the supplied patch is incompatible
-     *                               with the stored TypeDef.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDef updateTypeDef(String       userId,
-                                 TypeDefPatch typeDefPatch) throws InvalidParameterException,
-                                                                   RepositoryErrorException,
-                                                                   TypeDefNotKnownException,
-                                                                   PatchErrorException,
-                                                                   FunctionNotSupportedException,
-                                                                   UserNotAuthorizedException
-    {
-        final String  methodName           = "updateTypeDef";
-        final String  typeDefParameterName = "typeDefPatch";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefPatch(repositoryName, typeDefPatch, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Delete the TypeDef.  This is only possible if the TypeDef has never been used to create instances or any
-     * instances of this TypeDef have been purged from the metadata collection.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param obsoleteTypeDefGUID - String unique identifier for the TypeDef.
-     * @param obsoleteTypeDefName - String unique name for the TypeDef.
-     * @throws InvalidParameterException - the one of TypeDef identifiers is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws TypeDefInUseException - the TypeDef can not be deleted because there are instances of this type in the
-     *                                 the metadata collection.  These instances need to be purged before the
-     *                                 TypeDef can be deleted.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public void deleteTypeDef(String    userId,
-                              String    obsoleteTypeDefGUID,
-                              String    obsoleteTypeDefName) throws InvalidParameterException,
-                                                                    RepositoryErrorException,
-                                                                    TypeDefNotKnownException,
-                                                                    TypeDefInUseException,
-                                                                    FunctionNotSupportedException,
-                                                                    UserNotAuthorizedException
-    {
-        final String    methodName        = "deleteTypeDef";
-        final String    guidParameterName = "obsoleteTypeDefGUID";
-        final String    nameParameterName = "obsoleteTypeDefName";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               guidParameterName,
-                                               nameParameterName,
-                                               obsoleteTypeDefGUID,
-                                               obsoleteTypeDefName,
-                                               methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Delete an AttributeTypeDef.  This is only possible if the AttributeTypeDef has never been used to create
-     * instances or any instances of this AttributeTypeDef have been purged from the metadata collection.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param obsoleteTypeDefGUID - String unique identifier for the AttributeTypeDef.
-     * @param obsoleteTypeDefName - String unique name for the AttributeTypeDef.
-     * @throws InvalidParameterException - the one of AttributeTypeDef identifiers is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested AttributeTypeDef is not found in the metadata collection.
-     * @throws TypeDefInUseException - the AttributeTypeDef can not be deleted because there are instances of this type in the
-     *                                 the metadata collection.  These instances need to be purged before the
-     *                                 AttributeTypeDef can be deleted.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public void deleteAttributeTypeDef(String    userId,
-                                       String    obsoleteTypeDefGUID,
-                                       String    obsoleteTypeDefName) throws InvalidParameterException,
-                                                                             RepositoryErrorException,
-                                                                             TypeDefNotKnownException,
-                                                                             TypeDefInUseException,
-                                                                             FunctionNotSupportedException,
-                                                                             UserNotAuthorizedException
-    {
-        final String    methodName        = "deleteAttributeTypeDef";
-        final String    guidParameterName = "obsoleteTypeDefGUID";
-        final String    nameParameterName = "obsoleteTypeDefName";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDefIds(repositoryName,
-                                                        guidParameterName,
-                                                        nameParameterName,
-                                                        obsoleteTypeDefGUID,
-                                                        obsoleteTypeDefName,
-                                                        methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Change the guid or name of an existing TypeDef to a new value.  This is used if two different
-     * TypeDefs are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param originalTypeDefGUID - the original guid of the TypeDef.
-     * @param originalTypeDefName - the original name of the TypeDef.
-     * @param newTypeDefGUID - the new identifier for the TypeDef.
-     * @param newTypeDefName - new name for this TypeDef.
-     * @return typeDef - new values for this TypeDef, including the new guid/name.
-     * @throws InvalidParameterException - one of the parameters is invalid or null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the TypeDef identified by the original guid/name is not found
-     *                                    in the metadata collection.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  TypeDef reIdentifyTypeDef(String     userId,
-                                      String     originalTypeDefGUID,
-                                      String     originalTypeDefName,
-                                      String     newTypeDefGUID,
-                                      String     newTypeDefName) throws InvalidParameterException,
-                                                                        RepositoryErrorException,
-                                                                        TypeDefNotKnownException,
-                                                                        FunctionNotSupportedException,
-                                                                        UserNotAuthorizedException
-    {
-        final String    methodName                = "reIdentifyTypeDef";
-        final String    originalGUIDParameterName = "originalTypeDefGUID";
-        final String    originalNameParameterName = "originalTypeDefName";
-        final String    newGUIDParameterName      = "newTypeDefGUID";
-        final String    newNameParameterName      = "newTypeDefName";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               originalGUIDParameterName,
-                                               originalNameParameterName,
-                                               originalTypeDefGUID,
-                                               originalTypeDefName,
-                                               methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               newGUIDParameterName,
-                                               newNameParameterName,
-                                               newTypeDefGUID,
-                                               newTypeDefName,
-                                               methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Change the guid or name of an existing TypeDef to a new value.  This is used if two different
-     * TypeDefs are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param originalAttributeTypeDefGUID - the original guid of the AttributeTypeDef.
-     * @param originalAttributeTypeDefName - the original name of the AttributeTypeDef.
-     * @param newAttributeTypeDefGUID - the new identifier for the AttributeTypeDef.
-     * @param newAttributeTypeDefName - new name for this AttributeTypeDef.
-     * @return attributeTypeDef - new values for this AttributeTypeDef, including the new guid/name.
-     * @throws InvalidParameterException - one of the parameters is invalid or null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the AttributeTypeDef identified by the original guid/name is not
-     *                                    found in the metadata collection.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  AttributeTypeDef reIdentifyAttributeTypeDef(String     userId,
-                                                        String     originalAttributeTypeDefGUID,
-                                                        String     originalAttributeTypeDefName,
-                                                        String     newAttributeTypeDefGUID,
-                                                        String     newAttributeTypeDefName) throws InvalidParameterException,
-                                                                                                   RepositoryErrorException,
-                                                                                                   TypeDefNotKnownException,
-                                                                                                   FunctionNotSupportedException,
-                                                                                                   UserNotAuthorizedException
-    {
-        final String    methodName                = "reIdentifyAttributeTypeDef";
-        final String    originalGUIDParameterName = "originalAttributeTypeDefGUID";
-        final String    originalNameParameterName = "originalAttributeTypeDefName";
-        final String    newGUIDParameterName      = "newAttributeTypeDefGUID";
-        final String    newNameParameterName      = "newAttributeTypeDefName";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               originalGUIDParameterName,
-                                               originalNameParameterName,
-                                               originalAttributeTypeDefGUID,
-                                               originalAttributeTypeDefName,
-                                               methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               newGUIDParameterName,
-                                               newNameParameterName,
-                                               newAttributeTypeDefGUID,
-                                               newAttributeTypeDefName,
-                                               methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /* ===================================================
-     * Group 3: Locating entity and relationship instances
-     */
-
-
-    /**
-     * Returns a boolean indicating if the entity is stored in the metadata collection.  This entity may be a full
-     * entity object, or an entity proxy.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity
-     * @return the entity details if the entity is found in the metadata collection; otherwise return null
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public EntityDetail  isEntityKnown(String     userId,
-                                       String     guid) throws InvalidParameterException,
-                                                               RepositoryErrorException,
-                                                               UserNotAuthorizedException
-    {
-        final String  methodName = "isEntityKnown";
-        final String  guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return the header and classifications for a specific entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity.
-     * @return EntitySummary structure
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public EntitySummary getEntitySummary(String     userId,
-                                          String     guid) throws InvalidParameterException,
-                                                                  RepositoryErrorException,
-                                                                  EntityNotKnownException,
-                                                                  UserNotAuthorizedException
-    {
-        final String  methodName        = "getEntitySummary";
-        final String  guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return the header, classifications and properties of a specific entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity.
-     * @return EntityDetail structure.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                 the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws EntityProxyOnlyException - the requested entity instance is only a proxy in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public EntityDetail getEntityDetail(String     userId,
-                                        String     guid) throws InvalidParameterException,
-                                                                RepositoryErrorException,
-                                                                EntityNotKnownException,
-                                                                EntityProxyOnlyException,
-                                                                UserNotAuthorizedException
-    {
-        final String  methodName        = "getEntityDetail";
-        final String  guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return a historical version of an entity - includes the header, classifications and properties of the entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity.
-     * @param asOfTime - the time used to determine which version of the entity that is desired.
-     * @return EntityDetail structure.
-     * @throws InvalidParameterException - the guid or date is null or date is for a future time.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                 the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection
-     *                                   at the time requested.
-     * @throws EntityProxyOnlyException - the requested entity instance is only a proxy in the metadata collection.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  EntityDetail getEntityDetail(String     userId,
-                                         String     guid,
-                                         Date       asOfTime) throws InvalidParameterException,
-                                                                     RepositoryErrorException,
-                                                                     EntityNotKnownException,
-                                                                     EntityProxyOnlyException,
-                                                                     FunctionNotSupportedException,
-                                                                     UserNotAuthorizedException
-    {
-        final String  methodName        = "getEntityDetail";
-        final String  guidParameterName = "guid";
-        final String  asOfTimeParameter = "asOfTime";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-        repositoryValidator.validateAsOfTime(repositoryName, asOfTimeParameter, asOfTime, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return the relationships for a specific entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param entityGUID - String unique identifier for the entity.
-     * @param relationshipTypeGUID - String GUID of the the type of relationship required (null for all).
-     * @param fromRelationshipElement - the starting element number of the relationships to return.
-     *                                This is used when retrieving elements
-     *                                beyond the first page of results. Zero means start from the first element.
-     * @param limitResultsByStatus - By default, relationships in all statuses are returned.  However, it is possible
-     *                             to specify a list of statuses (eg ACTIVE) to restrict the results to.  Null means all
-     *                             status values.
-     * @param asOfTime - Requests a historical query of the relationships for the entity.  Null means return the
-     *                 present values.
-     * @param sequencingProperty - String name of the property that is to be used to sequence the results.
-     *                           Null means do not sequence on a property name (see SequencingOrder).
-     * @param sequencingOrder - Enum defining how the results should be ordered.
-     * @param pageSize -- the maximum number of result classifications that can be returned on this request.  Zero means
-     *                 unrestricted return results size.
-     * @return Relationships list.  Null means no relationships associated with the entity.
-     * @throws InvalidParameterException - a parameter is invalid or null.
-     * @throws TypeErrorException - the type guid passed on the request is not known by the
-     *                              metadata collection.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws PropertyErrorException - the sequencing property is not valid for the attached classifications.
-     * @throws PagingErrorException - the paging/sequencing parameters are set up incorrectly.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<Relationship> getRelationshipsForEntity(String                     userId,
-                                                        String                     entityGUID,
-                                                        String                     relationshipTypeGUID,
-                                                        int                        fromRelationshipElement,
-                                                        List<InstanceStatus>       limitResultsByStatus,
-                                                        Date                       asOfTime,
-                                                        String                     sequencingProperty,
-                                                        SequencingOrder            sequencingOrder,
-                                                        int                        pageSize) throws InvalidParameterException,
-                                                                                                    TypeErrorException,
-                                                                                                    RepositoryErrorException,
-                                                                                                    EntityNotKnownException,
-                                                                                                    PropertyErrorException,
-                                                                                                    PagingErrorException,
-                                                                                                    FunctionNotSupportedException,
-                                                                                                    UserNotAuthorizedException
-    {
-        final String  methodName = "getRelationshipsForEntity";
-        final String  guidParameterName = "entityGUID";
-        final String  typeGUIDParameter = "relationshipTypeGUID";
-        final String  asOfTimeParameter = "asOfTime";
-        final String  pageSizeParameter = "pageSize";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, entityGUID, methodName);
-        repositoryValidator.validateAsOfTime(repositoryName, asOfTimeParameter, asOfTime, methodName);
-        repositoryValidator.validateOptionalTypeGUID(repositoryName, typeGUIDParameter, relationshipTypeGUID, methodName);
-        repositoryValidator.validatePageSize(repositoryName, pageSizeParameter, pageSize, methodName);
-
-        /*
-         * Perform operation
-         */
-        OMRSErrorCode errorCode = OMRSErrorCode.METHOD_NOT_IMPLEMENTED;
-
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 this.getClass().getName(),
-                                                                                                 repositoryName);
-
-        throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction());
-    }
-
-
-    /**
-     * Return a list of entities that match the supplied properties according to the match criteria.  The results
-     * can be returned over many pages.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param entityTypeGUID - String unique identifier for the entity type of interest (null means any entity type).
-     * @param matchProperties - List of entity properties to match to (null means match on entityTypeGUID only).
-     * @param matchCriteria

<TRUNCATED>

[14/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEvent.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEvent.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEvent.java
deleted file mode 100644
index c12752a..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEvent.java
+++ /dev/null
@@ -1,453 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-import org.apache.atlas.omrs.eventmanagement.events.v1.OMRSEventV1;
-import org.apache.atlas.omrs.eventmanagement.events.v1.OMRSEventV1TypeDefSection;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.AttributeTypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDef;
-
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefPatch;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-
-public class OMRSTypeDefEvent extends OMRSEvent
-{
-    /*
-     * The type of the TypeDef event that defines how the rest of the values should be interpreted.
-     */
-    private OMRSTypeDefEventType typeDefEventType = OMRSTypeDefEventType.UNKNOWN_TYPEDEF_EVENT;
-
-    /*
-     * TypeDef specific properties.
-     */
-    private AttributeTypeDef attributeTypeDef = null;
-    private TypeDef          typeDef          = null;
-    private String           typeDefGUID      = null;
-    private String           typeDefName      = null;
-    private TypeDefPatch     typeDefPatch     = null;
-
-    /*
-     * TypeDef specific properties for events related to correcting conflicts in the open metadata repository
-     * cohort.
-     */
-    private TypeDefSummary   originalTypeDefSummary   = null;
-    private AttributeTypeDef originalAttributeTypeDef = null;
-
-    /*
-     * Specific variables only used in error reporting.  It defines the subset of error codes from OMRSEvent
-     * that are specific to TypeDef events.
-     */
-    private OMRSTypeDefEventErrorCode   errorCode                  = OMRSTypeDefEventErrorCode.NOT_IN_USE;
-
-
-    private static final Logger log = LoggerFactory.getLogger(OMRSTypeDefEvent.class);
-
-    /**
-     * Inbound event constructor that takes the object created by the Jackson JSON mapper and unpacks the
-     * properties into the instance event.
-     *
-     * @param inboundEvent - incoming Event.
-     */
-    public OMRSTypeDefEvent(OMRSEventV1 inboundEvent)
-    {
-        super(inboundEvent);
-
-        OMRSEventV1TypeDefSection typeDefSection = inboundEvent.getTypeDefEventSection();
-
-        if (typeDefSection != null)
-        {
-            this.typeDefEventType = typeDefSection.getTypeDefEventType();
-            this.attributeTypeDef = typeDefSection.getAttributeTypeDef();
-            this.typeDef = typeDefSection.getTypeDef();
-            this.typeDefGUID = typeDefSection.getTypeDefGUID();
-            this.typeDefName = typeDefSection.getTypeDefName();
-            this.typeDefPatch = typeDefSection.getTypeDefPatch();
-            this.originalTypeDefSummary = typeDefSection.getOriginalTypeDefSummary();
-            this.originalAttributeTypeDef = typeDefSection.getOriginalAttributeTypeDef();
-        }
-
-        if (super.genericErrorCode != null)
-        {
-            switch(genericErrorCode)
-            {
-                case CONFLICTING_TYPEDEFS:
-                    errorCode = OMRSTypeDefEventErrorCode.CONFLICTING_TYPEDEFS;
-                    break;
-
-                case CONFLICTING_ATTRIBUTE_TYPEDEFS:
-                    errorCode = OMRSTypeDefEventErrorCode.CONFLICTING_ATTRIBUTE_TYPEDEFS;
-
-                case TYPEDEF_PATCH_MISMATCH:
-                    errorCode = OMRSTypeDefEventErrorCode.TYPEDEF_PATCH_MISMATCH;
-                    break;
-
-                default:
-                    errorCode = OMRSTypeDefEventErrorCode.UNKNOWN_ERROR_CODE;
-                    break;
-            }
-        }
-    }
-
-    /**
-     * Outbound event constructor for events such as newTypeDef.
-     *
-     * @param typeDefEventType - type of event
-     * @param typeDef - Complete details of the TypeDef that is the subject of the event.
-     */
-    public OMRSTypeDefEvent(OMRSTypeDefEventType typeDefEventType,
-                            TypeDef              typeDef)
-    {
-        super(OMRSEventCategory.TYPEDEF);
-
-        this.typeDefEventType = typeDefEventType;
-        this.typeDef = typeDef;
-    }
-
-
-    /**
-     * Outbound event constructor for events such as newAttributeTypeDef.
-     *
-     * @param typeDefEventType - type of event
-     * @param attributeTypeDef - Complete details of the AttributeTypeDef that is the subject of the event.
-     */
-    public OMRSTypeDefEvent(OMRSTypeDefEventType typeDefEventType,
-                            AttributeTypeDef     attributeTypeDef)
-    {
-        super(OMRSEventCategory.TYPEDEF);
-
-        this.typeDefEventType = typeDefEventType;
-        this.attributeTypeDef = attributeTypeDef;
-    }
-
-
-    /**
-     * Outbound event constructor for events such as updates.
-     *
-     * @param typeDefEventType - type of event
-     * @param typeDefPatch - Complete details of the TypeDef that is the subject of the event.
-     */
-    public OMRSTypeDefEvent(OMRSTypeDefEventType typeDefEventType,
-                            TypeDefPatch         typeDefPatch)
-    {
-        super(OMRSEventCategory.TYPEDEF);
-
-        this.typeDefEventType = typeDefEventType;
-        this.typeDefPatch = typeDefPatch;
-    }
-
-
-    /**
-     * Outbound event constructor for events such as deletes.
-     *
-     * @param typeDefEventType - type of event
-     * @param typeDefGUID - Unique identifier of the TypeDef that is the subject of the event.
-     * @param typeDefName - Unique name of the TypeDef that is the subject of the event.
-     */
-    public OMRSTypeDefEvent(OMRSTypeDefEventType typeDefEventType,
-                            String               typeDefGUID,
-                            String               typeDefName)
-    {
-        super(OMRSEventCategory.TYPEDEF);
-
-        this.typeDefEventType = typeDefEventType;
-        this.typeDefGUID = typeDefGUID;
-        this.typeDefName = typeDefName;
-    }
-
-
-    /**
-     * Outbound event constructor for changing the identifiers associated with TypeDefs.
-     *
-     * @param typeDefEventType - type of event
-     * @param originalTypeDefSummary - description of the original TypeDef that is the subject of the event.
-     * @param typeDef - updated TypeDef with new identifiers
-     */
-    public OMRSTypeDefEvent(OMRSTypeDefEventType typeDefEventType,
-                            TypeDefSummary       originalTypeDefSummary,
-                            TypeDef              typeDef)
-    {
-        super(OMRSEventCategory.TYPEDEF);
-
-        this.typeDefEventType = typeDefEventType;
-        this.originalTypeDefSummary = originalTypeDefSummary;
-        this.typeDef = typeDef;
-    }
-
-
-    /**
-     * Outbound event constructor for changing the identifiers associated with AttributeTypeDefs.
-     *
-     * @param typeDefEventType - type of event
-     * @param originalAttributeTypeDef - description of the original AttributeTypeDef that is the subject of the event.
-     * @param attributeTypeDef - updated AttributeTypeDef with new identifiers
-     */
-    public OMRSTypeDefEvent(OMRSTypeDefEventType typeDefEventType,
-                            AttributeTypeDef     originalAttributeTypeDef,
-                            AttributeTypeDef     attributeTypeDef)
-    {
-        super(OMRSEventCategory.TYPEDEF);
-
-        this.typeDefEventType = typeDefEventType;
-        this.originalAttributeTypeDef = originalAttributeTypeDef;
-        this.attributeTypeDef = attributeTypeDef;
-    }
-
-
-    /**
-     * Outbound event constructor for conflicting typedef errors.
-     *
-     * @param errorCode - code enum indicating the cause of the error.
-     * @param errorMessage - descriptive message about the error.
-     * @param targetMetadataCollectionId - identifier of the cohort member that issued the event in error.
-     * @param targetTypeDefSummary - details of the TypeDef in the remote repository.
-     * @param otherTypeDefSummary - details of the TypeDef in the local repository.
-     */
-    public OMRSTypeDefEvent(OMRSTypeDefEventErrorCode errorCode,
-                            String                    errorMessage,
-                            String                    targetMetadataCollectionId,
-                            TypeDefSummary            targetTypeDefSummary,
-                            TypeDefSummary            otherTypeDefSummary)
-    {
-        super(OMRSEventCategory.TYPEDEF,
-              errorCode.getErrorCodeEncoding(),
-              errorMessage,
-              targetMetadataCollectionId,
-              targetTypeDefSummary,
-              otherTypeDefSummary);
-
-        this.typeDefEventType = OMRSTypeDefEventType.TYPEDEF_ERROR_EVENT;
-    }
-
-
-    /**
-     * Outbound event constructor for conflicting attribute typedef errors.
-     *
-     * @param errorCode - code enum indicating the cause of the error.
-     * @param errorMessage - descriptive message about the error.
-     * @param targetMetadataCollectionId - identifier of the cohort member that issued the event in error.
-     * @param targetAttributeTypeDef - details of the TypeDef in the remote repository.
-     * @param otherAttributeTypeDef - details of the TypeDef in the local repository.
-     */
-    public OMRSTypeDefEvent(OMRSTypeDefEventErrorCode errorCode,
-                            String                    errorMessage,
-                            String                    targetMetadataCollectionId,
-                            AttributeTypeDef          targetAttributeTypeDef,
-                            AttributeTypeDef          otherAttributeTypeDef)
-    {
-        super(OMRSEventCategory.TYPEDEF,
-              errorCode.getErrorCodeEncoding(),
-              errorMessage,
-              targetMetadataCollectionId,
-              targetAttributeTypeDef,
-              targetAttributeTypeDef);
-
-        this.typeDefEventType = OMRSTypeDefEventType.TYPEDEF_ERROR_EVENT;
-    }
-
-
-
-    /**
-     * Outbound event constructor for typedef mismatch errors.
-     *
-     * @param errorCode - code enum indicating the cause of the error.
-     * @param errorMessage - descriptive message about the error.
-     * @param targetMetadataCollectionId - identifier of the cohort member that issued the event in error.
-     * @param targetTypeDefSummary - details of the TypeDef in the remote repository.
-     * @param otherTypeDef - details of the TypeDef in the local repository.
-     */
-    public OMRSTypeDefEvent(OMRSTypeDefEventErrorCode errorCode,
-                            String                    errorMessage,
-                            String                    targetMetadataCollectionId,
-                            TypeDefSummary            targetTypeDefSummary,
-                            TypeDef                   otherTypeDef)
-    {
-        super(OMRSEventCategory.TYPEDEF,
-              errorCode.getErrorCodeEncoding(),
-              errorMessage,
-              targetMetadataCollectionId,
-              targetTypeDefSummary,
-              otherTypeDef);
-
-        this.typeDefEventType = OMRSTypeDefEventType.TYPEDEF_ERROR_EVENT;
-    }
-
-
-    /**
-     * Return the code for this event's type.
-     *
-     * @return OMRSTypeDefEventType enum
-     */
-    public OMRSTypeDefEventType getTypeDefEventType()
-    {
-        return typeDefEventType;
-    }
-
-
-    /**
-     * Return the complete TypeDef object.
-     *
-     * @return TypeDef object
-     */
-    public TypeDef getTypeDef()
-    {
-        return typeDef;
-    }
-
-
-    /**
-     * Return the complete AttributeTypeDef object.
-     *
-     * @return AttributeTypeDef object
-     */
-    public AttributeTypeDef getAttributeTypeDef()
-    {
-        return attributeTypeDef;
-    }
-
-    /**
-     * Return the unique id of the TypeDef.
-     *
-     * @return String guid
-     */
-    public String getTypeDefGUID()
-    {
-        return typeDefGUID;
-    }
-
-
-    /**
-     * Return the unique name of the TypeDef.
-     *
-     * @return String name
-     */
-    public String getTypeDefName()
-    {
-        return typeDefName;
-    }
-
-
-    /**
-     * Return a patch for the TypeDef.
-     *
-     * @return TypeDefPatch object
-     */
-    public TypeDefPatch getTypeDefPatch()
-    {
-        return typeDefPatch;
-    }
-
-
-    /**
-     * Return the details of the TypeDef before it was changed.
-     *
-     * @return TypeDefSummary containing identifiers, category and version
-     */
-    public TypeDefSummary getOriginalTypeDefSummary()
-    {
-        return originalTypeDefSummary;
-    }
-
-
-    /**
-     * Return the details of the AttributeTypeDef before it was changed.
-     *
-     * @return AttributeTypeDef object
-     */
-    public AttributeTypeDef getOriginalAttributeTypeDef()
-    {
-        return originalAttributeTypeDef;
-    }
-
-    /**
-     * Return the TypeDef error code for error events.
-     *
-     * @return OMRSTypeDefEventErrorCode enum
-     */
-    public OMRSTypeDefEventErrorCode getErrorCode()
-    {
-        return errorCode;
-    }
-
-
-    /**
-     * Returns an OMRSEvent populated with details from this TypeDefEvent
-     *
-     * @return OMRSEvent (Version 1) object
-     */
-    public OMRSEventV1  getOMRSEventV1()
-    {
-        OMRSEventV1     omrsEvent = super.getOMRSEventV1();
-
-        OMRSEventV1TypeDefSection typeDefSection  = new OMRSEventV1TypeDefSection();
-
-        typeDefSection.setTypeDefEventType(this.typeDefEventType);
-        typeDefSection.setTypeDef(this.typeDef);
-        typeDefSection.setAttributeTypeDef(this.attributeTypeDef);
-        typeDefSection.setTypeDefPatch(this.typeDefPatch);
-        typeDefSection.setTypeDefGUID(this.typeDefGUID);
-        typeDefSection.setTypeDefName(this.typeDefName);
-        typeDefSection.setOriginalTypeDefSummary(this.originalTypeDefSummary);
-        typeDefSection.setOriginalAttributeTypeDef(this.originalAttributeTypeDef);
-
-        omrsEvent.setTypeDefEventSection(typeDefSection);
-
-        return omrsEvent;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return JSON style description of variables.
-     */
-    @Override
-    public String toString()
-    {
-        return "OMRSTypeDefEvent{" +
-                "typeDefEventType=" + typeDefEventType +
-                ", attributeTypeDef=" + attributeTypeDef +
-                ", typeDef=" + typeDef +
-                ", typeDefGUID='" + typeDefGUID + '\'' +
-                ", typeDefName='" + typeDefName + '\'' +
-                ", typeDefPatch=" + typeDefPatch +
-                ", originalTypeDefSummary=" + originalTypeDefSummary +
-                ", originalAttributeTypeDef=" + originalAttributeTypeDef +
-                ", errorCode=" + errorCode +
-                ", eventTimestamp=" + eventTimestamp +
-                ", eventDirection=" + eventDirection +
-                ", eventCategory=" + eventCategory +
-                ", eventOriginator=" + eventOriginator +
-                ", genericErrorCode=" + genericErrorCode +
-                ", errorMessage='" + errorMessage + '\'' +
-                ", targetMetadataCollectionId='" + targetMetadataCollectionId + '\'' +
-                ", targetRemoteConnection=" + targetRemoteConnection +
-                ", targetTypeDefSummary=" + targetTypeDefSummary +
-                ", targetAttributeTypeDef=" + targetAttributeTypeDef +
-                ", targetInstanceGUID='" + targetInstanceGUID + '\'' +
-                ", otherOrigin=" + otherOrigin +
-                ", otherMetadataCollectionId='" + otherMetadataCollectionId + '\'' +
-                ", otherTypeDefSummary=" + otherTypeDefSummary +
-                ", otherTypeDef=" + otherTypeDef +
-                ", otherAttributeTypeDef=" + otherAttributeTypeDef +
-                ", otherInstanceGUID='" + otherInstanceGUID + '\'' +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEventErrorCode.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEventErrorCode.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEventErrorCode.java
deleted file mode 100644
index fd36108..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEventErrorCode.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-import org.apache.atlas.omrs.eventmanagement.events.OMRSEventErrorCode;
-
-/**
- * OMRSTypeDefEventErrorCode defines the list of error codes that are used to record errors in the TypeDef
- * synchronization process that is used by the repository connectors within the open metadata repository cluster.
- * <ul>
- *     <li>
- *         NOT_IN_USE - There has been no error detected and so the error code is not in use.
- *     </li>
- * </ul>
- */
-public enum OMRSTypeDefEventErrorCode
-{
-    NOT_IN_USE                     (0,  "No Error",
-                                        "There has been no error detected and so the error code is not in use.",
-                                        null),
-    CONFLICTING_TYPEDEFS           (1,  "ConflictingTypeDefs",
-                                        "There are conflicting type definitions (TypeDefs) detected between two " +
-                                        "repositories in the open metadata repository cohort.",
-                                        OMRSEventErrorCode.CONFLICTING_TYPEDEFS),
-    CONFLICTING_ATTRIBUTE_TYPEDEFS (2,  "ConflictingAttributeTypeDefs",
-                                        "There are conflicting attribute type definitions (AttributeTypeDefs) detected between two " +
-                                        "repositories in the open metadata repository cohort.",
-                                        OMRSEventErrorCode.CONFLICTING_ATTRIBUTE_TYPEDEFS),
-    TYPEDEF_PATCH_MISMATCH         (3,  "TypeDefPatchMismatch",
-                                        "There are different versions of a TypeDef in use in the cohort",
-                                        OMRSEventErrorCode.TYPEDEF_PATCH_MISMATCH),
-    UNKNOWN_ERROR_CODE             (99, "Unknown Error Code",
-                                        "Unrecognized error code from incoming event.",
-                                        null);
-
-
-    private int                errorCodeId;
-    private String             errorCodeName;
-    private String             errorCodeDescription;
-    private OMRSEventErrorCode errorCodeEncoding;
-
-
-    /**
-     * Default constructor sets up the values for this enum instance.
-     *
-     * @param errorCodeId - int identifier for the enum, used for indexing arrays etc with the enum.
-     * @param errorCodeName - String name for the enum, used for message content.
-     * @param errorCodeDescription - String default description for the enum, used when there is not natural
-     *                             language resource bundle available.
-     * @param errorCodeEncoding - code value to use in OMRSEvents
-     */
-    OMRSTypeDefEventErrorCode(int                errorCodeId,
-                              String             errorCodeName,
-                              String             errorCodeDescription,
-                              OMRSEventErrorCode errorCodeEncoding)
-    {
-        this.errorCodeId = errorCodeId;
-        this.errorCodeName = errorCodeName;
-        this.errorCodeDescription = errorCodeDescription;
-        this.errorCodeEncoding = errorCodeEncoding;
-    }
-
-
-    /**
-     * Return the identifier for the enum, used for indexing arrays etc with the enum.
-     *
-     * @return int identifier
-     */
-    public int getErrorCodeId()
-    {
-        return errorCodeId;
-    }
-
-
-    /**
-     * Return the name for the enum, used for message content.
-     *
-     * @return String name
-     */
-    public String getErrorCodeName()
-    {
-        return errorCodeName;
-    }
-
-
-    /**
-     * Return the default description for the enum, used when there is not natural
-     * language resource bundle available.
-     *
-     * @return String default description
-     */
-    public String getErrorCodeDescription()
-    {
-        return errorCodeDescription;
-    }
-
-
-    /**
-     * Return the encoding to use in OMRSEvents.
-     *
-     * @return String OMRSEvent encoding for this errorCode
-     */
-    public OMRSEventErrorCode getErrorCodeEncoding()
-    {
-        return errorCodeEncoding;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEventProcessor.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEventProcessor.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEventProcessor.java
deleted file mode 100644
index 7cb2338..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEventProcessor.java
+++ /dev/null
@@ -1,262 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.AttributeTypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefPatch;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-
-/**
- * OMRSTypeDefEventProcessor is an interface implemented by a component that is able to process incoming
- * TypeDef events for an Open Metadata Repository.  TypeDef events are used to synchronize TypeDefs across
- * an Open Metadata Repository Cohort.
- */
-public interface OMRSTypeDefEventProcessor
-{
-    /**
-     * A new TypeDef has been defined in an open metadata repository.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDef - details of the new TypeDef.
-     */
-    void processNewTypeDefEvent(String      sourceName,
-                                String      originatorMetadataCollectionId,
-                                String      originatorServerName,
-                                String      originatorServerType,
-                                String      originatorOrganizationName,
-                                TypeDef     typeDef);
-
-
-    /**
-     * A new AttributeTypeDef has been defined in an open metadata repository.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param attributeTypeDef - details of the new AttributeTypeDef.
-     */
-    void processNewAttributeTypeDefEvent(String           sourceName,
-                                         String           originatorMetadataCollectionId,
-                                         String           originatorServerName,
-                                         String           originatorServerType,
-                                         String           originatorOrganizationName,
-                                         AttributeTypeDef attributeTypeDef);
-
-
-    /**
-     * An existing TypeDef has been updated in an open metadata repository.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefPatch - details of the new version of the TypeDef
-     */
-    void processUpdatedTypeDefEvent(String       sourceName,
-                                    String       originatorMetadataCollectionId,
-                                    String       originatorServerName,
-                                    String       originatorServerType,
-                                    String       originatorOrganizationName,
-                                    TypeDefPatch typeDefPatch);
-
-
-    /**
-     * An existing TypeDef has been deleted in an open metadata repository.  Both the name and the
-     * GUID are provided to ensure the right TypeDef is deleted in other cohort member repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID - unique identifier of the TypeDef
-     * @param typeDefName - unique name of the TypeDef
-     */
-    void processDeletedTypeDefEvent(String      sourceName,
-                                    String      originatorMetadataCollectionId,
-                                    String      originatorServerName,
-                                    String      originatorServerType,
-                                    String      originatorOrganizationName,
-                                    String      typeDefGUID,
-                                    String      typeDefName);
-
-
-    /**
-     * An existing AttributeTypeDef has been deleted in an open metadata repository.  Both the name and the
-     * GUID are provided to ensure the right AttributeTypeDef is deleted in other cohort member repositories.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param attributeTypeDefGUID - unique identifier of the AttributeTypeDef
-     * @param attributeTypeDefName - unique name of the AttributeTypeDef
-     */
-    void processDeletedAttributeTypeDefEvent(String      sourceName,
-                                             String      originatorMetadataCollectionId,
-                                             String      originatorServerName,
-                                             String      originatorServerType,
-                                             String      originatorOrganizationName,
-                                             String      attributeTypeDefGUID,
-                                             String      attributeTypeDefName);
-
-
-    /**
-     * Process an event that changes either the name or guid of a TypeDef.  It is resolving a Conflicting TypeDef Error.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalTypeDef - description of original TypeDef
-     * @param typeDef - updated TypeDef with new identifiers inside.
-     */
-    void processReIdentifiedTypeDefEvent(String         sourceName,
-                                         String         originatorMetadataCollectionId,
-                                         String         originatorServerName,
-                                         String         originatorServerType,
-                                         String         originatorOrganizationName,
-                                         TypeDefSummary originalTypeDef,
-                                         TypeDef        typeDef);
-
-
-    /**
-     * Process an event that changes either the name or guid of an AttributeTypeDef.
-     * It is resolving a Conflicting AttributeTypeDef Error.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originalAttributeTypeDef - description of original AttributeTypeDef
-     * @param attributeTypeDef - updated AttributeTypeDef with new identifiers inside.
-     */
-    void processReIdentifiedAttributeTypeDefEvent(String           sourceName,
-                                                  String           originatorMetadataCollectionId,
-                                                  String           originatorServerName,
-                                                  String           originatorServerType,
-                                                  String           originatorOrganizationName,
-                                                  AttributeTypeDef originalAttributeTypeDef,
-                                                  AttributeTypeDef attributeTypeDef);
-
-
-    /**
-     * Process a detected conflict in the type definitions (TypeDefs) used in the cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originatorTypeDef- description of the TypeDef in the event originator.
-     * @param otherMetadataCollectionId - the metadataCollection using the conflicting TypeDef.
-     * @param conflictingTypeDef - description of the TypeDef in the other metadata collection.
-     * @param errorMessage - details of the error that occurs when the connection is used.
-     */
-    void processTypeDefConflictEvent(String         sourceName,
-                                     String         originatorMetadataCollectionId,
-                                     String         originatorServerName,
-                                     String         originatorServerType,
-                                     String         originatorOrganizationName,
-                                     TypeDefSummary originatorTypeDef,
-                                     String         otherMetadataCollectionId,
-                                     TypeDefSummary conflictingTypeDef,
-                                     String         errorMessage);
-
-
-    /**
-     * Process a detected conflict in the attribute type definitions (AttributeTypeDefs) used in the cohort.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param originatorAttributeTypeDef- description of the AttributeTypeDef in the event originator.
-     * @param otherMetadataCollectionId - the metadataCollection using the conflicting AttributeTypeDef.
-     * @param conflictingAttributeTypeDef - description of the AttributeTypeDef in the other metadata collection.
-     * @param errorMessage - details of the error that occurs when the connection is used.
-     */
-    void processAttributeTypeDefConflictEvent(String           sourceName,
-                                              String           originatorMetadataCollectionId,
-                                              String           originatorServerName,
-                                              String           originatorServerType,
-                                              String           originatorOrganizationName,
-                                              AttributeTypeDef originatorAttributeTypeDef,
-                                              String           otherMetadataCollectionId,
-                                              AttributeTypeDef conflictingAttributeTypeDef,
-                                              String           errorMessage);
-
-
-    /**
-     * A TypeDef from another member in the cohort is at a different version than the local repository.  This may
-     * create some inconsistencies in the different copies of instances of this type in different members of the
-     * cohort.  The recommended action is to update all TypeDefs to the latest version.
-     *
-     * @param sourceName - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                   local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName - name of the server that the event came from.
-     * @param originatorServerType - type of server that the event came from.
-     * @param originatorOrganizationName - name of the organization that owns the server that sent the event.
-     * @param targetMetadataCollectionId - identifier of the metadata collection that is reporting a TypeDef at a
-     *                                   different level to the reporting repository.
-     * @param targetTypeDef - details of the TypeDef in the target repository.
-     * @param otherTypeDef - details of the TypeDef in the other repository.
-     * @param errorMessage - details of the error that occurs when the connection is used.
-     */
-    void processTypeDefPatchMismatchEvent(String         sourceName,
-                                          String         originatorMetadataCollectionId,
-                                          String         originatorServerName,
-                                          String         originatorServerType,
-                                          String         originatorOrganizationName,
-                                          String         targetMetadataCollectionId,
-                                          TypeDefSummary targetTypeDef,
-                                          TypeDef        otherTypeDef,
-                                          String         errorMessage);
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEventType.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEventType.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEventType.java
deleted file mode 100644
index e04fbe4..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/OMRSTypeDefEventType.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events;
-
-/**
- * OMRSTypeDefEventType defines the different types of TypeDef events in the open metadata repository services
- * protocol:
- * <ul>
- *     <li>
- *         UNKNOWN_TYPEDEF_EVENT - the event is not recognized by this local server, probably because it is back-level
- *         from other servers in the cluster.  It is logged in the audit log and then ignored.  The metadata exchange
- *         protocol should evolve so that new message types can be ignored by back-level servers without damage
- *         to the cluster's integrity.
- *     </li>
- *     <li>
- *         NEW_TYPEDEF - A new TypeDef has been defined.
- *     </li>
- *     <li>
- *         UPDATED_TYPEDEF - An existing TypeDef has been updated.
- *     </li>
- *     <li>
- *         DELETED_TYPEDEF_EVENT - An existing TypeDef has been deleted.
- *     </li>
- *     <li>
- *         RE_IDENTIFIED_TYPEDEF_EVENT - the guid has been changed for a TypeDef.
- *     </li>
- * </ul>
- */
-public enum OMRSTypeDefEventType
-{
-    UNKNOWN_TYPEDEF_EVENT                 (0,  "UnknownTypeDefEvent",          "A TypeDef event that is not recognized by the local server."),
-    NEW_TYPEDEF_EVENT                     (1,  "NewTypeDef",                   "A new TypeDef has been defined."),
-    NEW_ATTRIBUTE_TYPEDEF_EVENT           (2,  "NewAttributeTypeDef",          "A new AttributeTypeDef has been defined."),
-    UPDATED_TYPEDEF_EVENT                 (3,  "UpdatedTypeDef",               "An existing TypeDef has been updated."),
-    DELETED_TYPEDEF_EVENT                 (4,  "DeletedTypeDef",               "An existing TypeDef has been deleted."),
-    DELETED_ATTRIBUTE_TYPEDEF_EVENT       (5,  "DeletedAttributeTypeDef",      "An existing AttributeTypeDef has been deleted."),
-    RE_IDENTIFIED_TYPEDEF_EVENT           (6,  "ReIdentifiedTypeDef",          "An existing TypeDef has changed either it guid or its name."),
-    RE_IDENTIFIED_ATTRIBUTE_TYPEDEF_EVENT (7,  "ReIdentifiedAttributeTypeDef", "An existing AttributeTypeDef has changed either it guid or its name."),
-    TYPEDEF_ERROR_EVENT                   (99, "InstanceErrorEvent",
-                                               "An error has been detected in the exchange of TypeDefs between members of the cohort.");
-
-
-    private  int      eventTypeCode;
-    private  String   eventTypeName;
-    private  String   eventTypeDescription;
-
-
-    /**
-     * Default Constructor - sets up the specific values for this instance of the enum.
-     *
-     * @param eventTypeCode - int identifier used for indexing based on the enum.
-     * @param eventTypeName - string name used for messages that include the enum.
-     * @param eventTypeDescription - default description for the enum value - used when natural resource
-     *                                     bundle is not available.
-     */
-    OMRSTypeDefEventType(int eventTypeCode, String eventTypeName, String eventTypeDescription)
-    {
-        this.eventTypeCode = eventTypeCode;
-        this.eventTypeName = eventTypeName;
-        this.eventTypeDescription = eventTypeDescription;
-    }
-
-
-    /**
-     * Return the int identifier used for indexing based on the enum.
-     *
-     * @return int identifier code
-     */
-    public int getTypeDefEventTypeCode()
-    {
-        return eventTypeCode;
-    }
-
-
-    /**
-     * Return the string name used for messages that include the enum.
-     *
-     * @return String name
-     */
-    public String getTypeDefEventTypeName()
-    {
-        return eventTypeName;
-    }
-
-
-    /**
-     * Return the default description for the enum value - used when natural resource
-     * bundle is not available.
-     *
-     * @return String default description
-     */
-    public String getTypeDefEventTypeDescription()
-    {
-        return eventTypeDescription;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1.java
deleted file mode 100644
index 26345a6..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events.v1;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import org.apache.atlas.omrs.eventmanagement.events.OMRSEventCategory;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSEventOriginator;
-
-
-import java.io.Serializable;
-import java.util.Date;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-
-
-/**
- * OMRSEventV1 is the OMRSEvent payload for version 1 of the open metadata and governance message exchange.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OMRSEventV1 implements Serializable
-{
-    private static final long serialVersionUID = 1L;
-
-    private final String                     protocolVersionId    = "OMRS V1.0";
-    private       Date                       timestamp            = null;
-    private       OMRSEventOriginator        originator           = null;
-    private       OMRSEventCategory          eventCategory        = null;
-    private       OMRSEventV1RegistrySection registryEventSection = null;
-    private       OMRSEventV1TypeDefSection  typeDefEventSection  = null;
-    private       OMRSEventV1InstanceSection instanceEventSection = null;
-    private       OMRSEventV1ErrorSection    errorSection         = null;
-
-    public OMRSEventV1()
-    {
-    }
-
-    public String getProtocolVersionId()
-    {
-        return protocolVersionId;
-    }
-
-    public Date getTimestamp()
-    {
-        return timestamp;
-    }
-
-    public void setTimestamp(Date timestamp)
-    {
-        this.timestamp = timestamp;
-    }
-
-    public OMRSEventOriginator getOriginator()
-    {
-        return originator;
-    }
-
-    public void setOriginator(OMRSEventOriginator originator)
-    {
-        this.originator = originator;
-    }
-
-    public OMRSEventCategory getEventCategory()
-    {
-        return eventCategory;
-    }
-
-    public void setEventCategory(OMRSEventCategory eventCategory)
-    {
-        this.eventCategory = eventCategory;
-    }
-
-    public OMRSEventV1RegistrySection getRegistryEventSection()
-    {
-        return registryEventSection;
-    }
-
-    public void setRegistryEventSection(OMRSEventV1RegistrySection registryEventSection)
-    {
-        this.registryEventSection = registryEventSection;
-    }
-
-    public OMRSEventV1TypeDefSection getTypeDefEventSection()
-    {
-        return typeDefEventSection;
-    }
-
-    public void setTypeDefEventSection(OMRSEventV1TypeDefSection typeDefEventSection)
-    {
-        this.typeDefEventSection = typeDefEventSection;
-    }
-
-    public OMRSEventV1InstanceSection getInstanceEventSection()
-    {
-        return instanceEventSection;
-    }
-
-    public void setInstanceEventSection(OMRSEventV1InstanceSection instanceEventSection)
-    {
-        this.instanceEventSection = instanceEventSection;
-    }
-
-    public OMRSEventV1ErrorSection getErrorSection()
-    {
-        return errorSection;
-    }
-
-    public void setErrorSection(OMRSEventV1ErrorSection errorSection)
-    {
-        this.errorSection = errorSection;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1ErrorSection.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1ErrorSection.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1ErrorSection.java
deleted file mode 100644
index 2e74bb7..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1ErrorSection.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events.v1;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSEventErrorCode;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceProvenanceType;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.AttributeTypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OMRSEventV1ErrorSection describes the properties used to record errors detected by one of the members of the
- * open metadata repository cohort.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OMRSEventV1ErrorSection implements Serializable
-{
-    private static final long serialVersionUID = 1L;
-
-    private OMRSEventErrorCode     errorCode                  = null;
-    private String                 errorMessage               = null;
-    private String                 targetMetadataCollectionId = null;
-    private Connection             targetRemoteConnection     = null;
-    private TypeDefSummary         targetTypeDefSummary       = null;
-    private AttributeTypeDef       targetAttributeTypeDef     = null;
-    private String                 targetInstanceGUID         = null;
-    private InstanceProvenanceType otherOrigin                = null;
-    private String                 otherMetadataCollectionId  = null;
-    private TypeDefSummary         otherTypeDefSummary        = null;
-    private TypeDef                otherTypeDef               = null;
-    private AttributeTypeDef       otherAttributeTypeDef      = null;
-    private String                 otherInstanceGUID          = null;
-
-    public OMRSEventV1ErrorSection()
-    {
-    }
-
-    public OMRSEventErrorCode getErrorCode()
-    {
-        return errorCode;
-    }
-
-    public void setErrorCode(OMRSEventErrorCode errorCode)
-    {
-        this.errorCode = errorCode;
-    }
-
-    public String getErrorMessage()
-    {
-        return errorMessage;
-    }
-
-    public void setErrorMessage(String errorMessage)
-    {
-        this.errorMessage = errorMessage;
-    }
-
-    public String getTargetMetadataCollectionId()
-    {
-        return targetMetadataCollectionId;
-    }
-
-    public void setTargetMetadataCollectionId(String targetMetadataCollectionId)
-    {
-        this.targetMetadataCollectionId = targetMetadataCollectionId;
-    }
-
-    public Connection getTargetRemoteConnection()
-    {
-        return targetRemoteConnection;
-    }
-
-    public void setTargetRemoteConnection(Connection targetRemoteConnection)
-    {
-        this.targetRemoteConnection = targetRemoteConnection;
-    }
-
-    public TypeDefSummary getTargetTypeDefSummary()
-    {
-        return targetTypeDefSummary;
-    }
-
-    public void setTargetTypeDefSummary(TypeDefSummary targetTypeDefSummary)
-    {
-        this.targetTypeDefSummary = targetTypeDefSummary;
-    }
-
-    public AttributeTypeDef getTargetAttributeTypeDef()
-    {
-        return targetAttributeTypeDef;
-    }
-
-    public void setTargetAttributeTypeDef(AttributeTypeDef targetAttributeTypeDef)
-    {
-        this.targetAttributeTypeDef = targetAttributeTypeDef;
-    }
-
-    public String getTargetInstanceGUID()
-    {
-        return targetInstanceGUID;
-    }
-
-    public void setTargetInstanceGUID(String targetInstanceGUID)
-    {
-        this.targetInstanceGUID = targetInstanceGUID;
-    }
-
-    public InstanceProvenanceType getOtherOrigin()
-    {
-        return otherOrigin;
-    }
-
-    public void setOtherOrigin(InstanceProvenanceType otherOrigin)
-    {
-        this.otherOrigin = otherOrigin;
-    }
-
-    public String getOtherMetadataCollectionId()
-    {
-        return otherMetadataCollectionId;
-    }
-
-    public void setOtherMetadataCollectionId(String otherMetadataCollectionId)
-    {
-        this.otherMetadataCollectionId = otherMetadataCollectionId;
-    }
-
-    public TypeDefSummary getOtherTypeDefSummary() { return otherTypeDefSummary; }
-
-    public void setOtherTypeDefSummary(TypeDefSummary otherTypeDefSummary)
-    {
-        this.otherTypeDefSummary = otherTypeDefSummary;
-    }
-
-    public TypeDef getOtherTypeDef()
-    {
-        return otherTypeDef;
-    }
-
-    public void setOtherTypeDef(TypeDef otherTypeDef)
-    {
-        this.otherTypeDef = otherTypeDef;
-    }
-
-    public AttributeTypeDef getOtherAttributeTypeDef()
-    {
-        return otherAttributeTypeDef;
-    }
-
-    public void setOtherAttributeTypeDef(AttributeTypeDef otherAttributeTypeDef)
-    {
-        this.otherAttributeTypeDef = otherAttributeTypeDef;
-    }
-
-    public String getOtherInstanceGUID()
-    {
-        return otherInstanceGUID;
-    }
-
-    public void setOtherInstanceGUID(String otherInstanceGUID)
-    {
-        this.otherInstanceGUID = otherInstanceGUID;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1InstanceSection.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1InstanceSection.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1InstanceSection.java
deleted file mode 100644
index f31c302..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1InstanceSection.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events.v1;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSInstanceEventType;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityDetail;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.Relationship;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OMRSEventV1InstanceSection describes the properties specific to instance events
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OMRSEventV1InstanceSection implements Serializable
-{
-    private static final long serialVersionUID = 1L;
-
-    private OMRSInstanceEventType eventType = null;
-
-    private String         typeDefGUID                      = null;
-    private String         typeDefName                      = null;
-    private String         instanceGUID                     = null;
-    private EntityDetail   entity                           = null;
-    private Relationship   relationship                     = null;
-    private String         homeMetadataCollectionId         = null;
-    private String         originalHomeMetadataCollectionId = null;
-    private TypeDefSummary originalTypeDefSummary           = null;
-    private String         originalInstanceGUID             = null;
-
-    public OMRSEventV1InstanceSection()
-    {
-    }
-
-    public OMRSInstanceEventType getEventType()
-    {
-        return eventType;
-    }
-
-    public void setEventType(OMRSInstanceEventType eventType)
-    {
-        this.eventType = eventType;
-    }
-
-    public String getTypeDefGUID()
-    {
-        return typeDefGUID;
-    }
-
-    public void setTypeDefGUID(String typeDefGUID)
-    {
-        this.typeDefGUID = typeDefGUID;
-    }
-
-    public String getTypeDefName()
-    {
-        return typeDefName;
-    }
-
-    public void setTypeDefName(String typeDefName)
-    {
-        this.typeDefName = typeDefName;
-    }
-
-    public String getInstanceGUID()
-    {
-        return instanceGUID;
-    }
-
-    public void setInstanceGUID(String instanceGUID)
-    {
-        this.instanceGUID = instanceGUID;
-    }
-
-    public EntityDetail getEntity()
-    {
-        return entity;
-    }
-
-    public void setEntity(EntityDetail entity)
-    {
-        this.entity = entity;
-    }
-
-    public Relationship getRelationship()
-    {
-        return relationship;
-    }
-
-    public void setRelationship(Relationship relationship)
-    {
-        this.relationship = relationship;
-    }
-
-    public String getHomeMetadataCollectionId()
-    {
-        return homeMetadataCollectionId;
-    }
-
-    public void setHomeMetadataCollectionId(String homeMetadataCollectionId)
-    {
-        this.homeMetadataCollectionId = homeMetadataCollectionId;
-    }
-
-    public String getOriginalHomeMetadataCollectionId()
-    {
-        return originalHomeMetadataCollectionId;
-    }
-
-    public void setOriginalHomeMetadataCollectionId(String originalHomeMetadataCollectionId)
-    {
-        this.originalHomeMetadataCollectionId = originalHomeMetadataCollectionId;
-    }
-
-    public TypeDefSummary getOriginalTypeDefSummary()
-    {
-        return originalTypeDefSummary;
-    }
-
-    public void setOriginalTypeDefSummary(TypeDefSummary originalTypeDefSummary)
-    {
-        this.originalTypeDefSummary = originalTypeDefSummary;
-    }
-
-    public String getOriginalInstanceGUID()
-    {
-        return originalInstanceGUID;
-    }
-
-    public void setOriginalInstanceGUID(String originalInstanceGUID)
-    {
-        this.originalInstanceGUID = originalInstanceGUID;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1RegistrySection.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1RegistrySection.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1RegistrySection.java
deleted file mode 100644
index 2878404..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1RegistrySection.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events.v1;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSRegistryEventType;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OMRSEventV1RegistrySection describes properties that are used exclusively for registry events.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OMRSEventV1RegistrySection implements Serializable
-{
-    private static final long serialVersionUID = 1L;
-
-    private OMRSRegistryEventType     registryEventType     = null;
-    private Date                      registrationTimestamp = null;
-    private Connection                remoteConnection      = null;
-
-
-    public OMRSEventV1RegistrySection()
-    {
-    }
-
-    public OMRSRegistryEventType getRegistryEventType()
-    {
-        return registryEventType;
-    }
-
-    public void setRegistryEventType(OMRSRegistryEventType registryEventType)
-    {
-        this.registryEventType = registryEventType;
-    }
-
-    public Date getRegistrationTimestamp()
-    {
-        return registrationTimestamp;
-    }
-
-    public void setRegistrationTimestamp(Date registrationTimestamp)
-    {
-        this.registrationTimestamp = registrationTimestamp;
-    }
-
-    public Connection getRemoteConnection()
-    {
-        return remoteConnection;
-    }
-
-    public void setRemoteConnection(Connection remoteConnection)
-    {
-        this.remoteConnection = remoteConnection;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1TypeDefSection.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1TypeDefSection.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1TypeDefSection.java
deleted file mode 100644
index d035f75..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/events/v1/OMRSEventV1TypeDefSection.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.events.v1;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSTypeDefEventType;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.AttributeTypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefPatch;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OMRSEventV1TypeDefSection describes the properties specific to TypeDef related events
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OMRSEventV1TypeDefSection implements Serializable
-{
-    private static final long serialVersionUID = 1L;
-
-    private OMRSTypeDefEventType typeDefEventType         = null;
-    private String               typeDefGUID              = null;
-    private String               typeDefName              = null;
-    private AttributeTypeDef     attributeTypeDef         = null;
-    private TypeDef              typeDef                  = null;
-    private TypeDefPatch         typeDefPatch             = null;
-    private TypeDefSummary       originalTypeDefSummary   = null;
-    private AttributeTypeDef     originalAttributeTypeDef = null;
-
-    public OMRSEventV1TypeDefSection()
-    {
-    }
-
-    public OMRSTypeDefEventType getTypeDefEventType()
-    {
-        return typeDefEventType;
-    }
-
-    public void setTypeDefEventType(OMRSTypeDefEventType typeDefEventType)
-    {
-        this.typeDefEventType = typeDefEventType;
-    }
-
-    public String getTypeDefGUID()
-    {
-        return typeDefGUID;
-    }
-
-    public void setTypeDefGUID(String typeDefGUID)
-    {
-        this.typeDefGUID = typeDefGUID;
-    }
-
-    public String getTypeDefName()
-    {
-        return typeDefName;
-    }
-
-    public void setTypeDefName(String typeDefName)
-    {
-        this.typeDefName = typeDefName;
-    }
-
-    public AttributeTypeDef getAttributeTypeDef()
-    {
-        return attributeTypeDef;
-    }
-
-    public void setAttributeTypeDef(AttributeTypeDef attributeTypeDef)
-    {
-        this.attributeTypeDef = attributeTypeDef;
-    }
-
-    public TypeDef getTypeDef()
-    {
-        return typeDef;
-    }
-
-    public void setTypeDef(TypeDef typeDef)
-    {
-        this.typeDef = typeDef;
-    }
-
-    public TypeDefPatch getTypeDefPatch()
-    {
-        return typeDefPatch;
-    }
-
-    public void setTypeDefPatch(TypeDefPatch typeDefPatch)
-    {
-        this.typeDefPatch = typeDefPatch;
-    }
-
-    public TypeDefSummary getOriginalTypeDefSummary()
-    {
-        return originalTypeDefSummary;
-    }
-
-    public void setOriginalTypeDefSummary(TypeDefSummary originalTypeDefSummary)
-    {
-        this.originalTypeDefSummary = originalTypeDefSummary;
-    }
-
-    public AttributeTypeDef getOriginalAttributeTypeDef()
-    {
-        return originalAttributeTypeDef;
-    }
-
-    public void setOriginalAttributeTypeDef(AttributeTypeDef originalAttributeTypeDef)
-    {
-        this.originalAttributeTypeDef = originalAttributeTypeDef;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapper.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapper.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapper.java
deleted file mode 100644
index 3d3ae70..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapper.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.repositoryeventmapper;
-
-import org.apache.atlas.omrs.eventmanagement.OMRSRepositoryEventProcessor;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-/**
- * OMRSRepositoryEventMapper is the interface to a connector that is converting events received from
- * a non-native local metadata repository into OMRS compliant repository events.  It is used when the Open Metadata
- * and Governance Server is being used as a RepositoryProxy, or if the local metadata repository has
- * additional APIs that mean metadata can be changed without going through the OMRS Repository Connectors.
- */
-public interface OMRSRepositoryEventMapper
-{
-    /**
-     * Pass additional information to the connector needed to process events.
-     *
-     * @param repositoryEventMapperName - repository event mapper name used for the source of the OMRS events.
-     * @param repositoryConnector - this is the connector to the local repository that the event mapper is processing
-     *                            events from.  The repository connector is used to retrieve additional information
-     *                            necessary to fill out the OMRS Events.
-     */
-    void initialize(String                      repositoryEventMapperName,
-                    OMRSRepositoryConnector     repositoryConnector);
-
-
-    /**
-     * Set up a repository helper object for the repository connector to use.
-     *
-     * @param repositoryHelper - helper object for building TypeDefs and metadata instances.
-     */
-    void setRepositoryHelper(OMRSRepositoryHelper   repositoryHelper);
-
-
-    /**
-     * Set up a repository validator for the repository connector to use.
-     *
-     * @param repositoryValidator - validator object to check the validity of TypeDefs and metadata instances.
-     */
-    void setRepositoryValidator(OMRSRepositoryValidator repositoryValidator);
-
-
-    /**
-     * Set up the name of the server where the metadata collection resides.
-     *
-     * @param serverName - String name
-     */
-    void  setServerName(String      serverName);
-
-
-    /**
-     * Set up the descriptive string describing the type of the server.  This might be the
-     * name of the product, or similar identifier.
-     *
-     * @param serverType - String server type
-     */
-    void setServerType(String serverType);
-
-
-    /**
-     * Set up the name of the organization that runs/owns the server.
-     *
-     * @param organizationName - String organization name
-     */
-    void setOrganizationName(String organizationName);
-
-
-    /**
-     * Set up the unique Id for this metadata collection.
-     *
-     * @param metadataCollectionId - String unique Id
-     */
-    void setMetadataCollectionId(String         metadataCollectionId);
-
-
-    /**
-     * Set up the repository event processor for this connector to use.  The connector should pass
-     * each typeDef or instance metadata change reported by its metadata repository's metadata on to the
-     * repository event processor.
-     *
-     * @param repositoryEventProcessor - listener responsible for distributing notifications of local
-     *                                changes to metadata types and instances to the rest of the
-     *                                open metadata repository cohort.
-     */
-    void setRepositoryEventProcessor(OMRSRepositoryEventProcessor repositoryEventProcessor);
-
-
-
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapperBase.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapperBase.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapperBase.java
deleted file mode 100644
index e84735c..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapperBase.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.repositoryeventmapper;
-
-
-/**
- * OMRSRepositoryEventMapperBase provides a base class for implementors of OMRSRepositoryEventMapper.
- */
-public abstract class OMRSRepositoryEventMapperBase extends OMRSRepositoryEventMapperConnector
-{
-    /**
-     * Default constructor for OCF ConnectorBase.
-     */
-    public OMRSRepositoryEventMapperBase()
-    {
-        super();
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapperConnector.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapperConnector.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapperConnector.java
deleted file mode 100644
index 0db06e4..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapperConnector.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.repositoryeventmapper;
-
-import org.apache.atlas.ocf.ConnectorBase;
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.omrs.eventmanagement.OMRSRepositoryEventProcessor;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-/**
- * OMRSRepositoryEventMapperBase provides a base class for implementors of OMRSRepositoryEventMapper.
- */
-public abstract class OMRSRepositoryEventMapperConnector extends ConnectorBase implements OMRSRepositoryEventMapper
-{
-    protected OMRSRepositoryEventProcessor repositoryEventProcessor  = null;
-    protected String                       repositoryEventMapperName = null;
-    protected OMRSRepositoryConnector      repositoryConnector       = null;
-    protected OMRSRepositoryHelper         repositoryHelper          = null;
-    protected OMRSRepositoryValidator      repositoryValidator       = null;
-    protected String                       localMetadataCollectionId = null;
-    protected String                       localServerName           = null;
-    protected String                       localServerType           = null;
-    protected String                       localOrganizationName     = null;
-
-    /**
-     * Default constructor for OCF ConnectorBase.
-     */
-    public OMRSRepositoryEventMapperConnector()
-    {
-        super();
-    }
-
-
-    /**
-     * Pass additional information to the connector needed to process events.
-     *
-     * @param repositoryEventMapperName - repository event mapper name used for the source of the OMRS events.
-     * @param repositoryConnector - ths is the connector to the local repository that the event mapper is processing
-     *                            events from.  The repository connector is used to retrieve additional information
-     *                            necessary to fill out the OMRS Events.
-     */
-    public void initialize(String                      repositoryEventMapperName,
-                           OMRSRepositoryConnector     repositoryConnector)
-    {
-        this.repositoryEventMapperName = repositoryEventMapperName;
-        this.repositoryConnector = repositoryConnector;
-    }
-
-
-    /**
-     * Set up a repository helper object for the repository connector to use.
-     *
-     * @param repositoryHelper - helper object for building TypeDefs and metadata instances.
-     */
-    public void setRepositoryHelper(OMRSRepositoryHelper repositoryHelper)
-    {
-        this.repositoryHelper = repositoryHelper;
-    }
-
-
-    /**
-     * Set up a repository validator for the repository connector to use.
-     *
-     * @param repositoryValidator - validator object to check the validity of TypeDefs and metadata instances.
-     */
-    public void setRepositoryValidator(OMRSRepositoryValidator repositoryValidator)
-    {
-        this.repositoryValidator = repositoryValidator;
-    }
-
-
-    /**
-     * Set up the name of the server where the metadata collection resides.
-     *
-     * @param serverName - String name
-     */
-    public void  setServerName(String      serverName)
-    {
-        this.localServerName = serverName;
-    }
-
-
-    /**
-     * Set up the descriptive string describing the type of the server.  This might be the
-     * name of the product, or similar identifier.
-     *
-     * @param serverType - String server type
-     */
-    public void setServerType(String serverType)
-    {
-        this.localServerType = serverType;
-    }
-
-
-    /**
-     * Set up the name of the organization that runs/owns the server.
-     *
-     * @param organizationName - String organization name
-     */
-    public void setOrganizationName(String organizationName)
-    {
-        this.localOrganizationName = organizationName;
-    }
-
-
-    /**
-     * Set up the unique Id for this metadata collection.
-     *
-     * @param metadataCollectionId - String unique Id
-     */
-    public void setMetadataCollectionId(String         metadataCollectionId)
-    {
-        this.localMetadataCollectionId = metadataCollectionId;
-    }
-
-
-    /**
-     * Set up the repository event listener for this connector to use.  The connector should pass
-     * each type or instance metadata change reported by its metadata repository's metadata on to the
-     * repository event listener.
-     *
-     * @param repositoryEventProcessor - listener responsible for distributing notifications of local
-     *                                changes to metadata types and instances to the rest of the
-     *                                open metadata repository cluster.
-     */
-    public void setRepositoryEventProcessor(OMRSRepositoryEventProcessor repositoryEventProcessor)
-    {
-        this.repositoryEventProcessor = repositoryEventProcessor;
-    }
-
-
-    /**
-     * Indicates that the connector is completely configured and can begin processing.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public void start() throws ConnectorCheckedException
-    {
-        super.start();
-    }
-
-
-    /**
-     * Free up any resources held since the connector is no longer needed.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public  void disconnect() throws ConnectorCheckedException
-    {
-        super.disconnect();
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapperProviderBase.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapperProviderBase.java b/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapperProviderBase.java
deleted file mode 100644
index b4895b1..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/eventmanagement/repositoryeventmapper/OMRSRepositoryEventMapperProviderBase.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.eventmanagement.repositoryeventmapper;
-
-import org.apache.atlas.ocf.ConnectorProviderBase;
-
-/**
- * OMRSRepositoryEventMapperProviderBase provides a base class for the connector provider supporting
- * OMRSRepositoryEventMapper connectors.  It extends ConnectorProviderBase which does the creation of connector instances.
- *
- * The subclasses of OMRSRepositoryEventMapperProviderBase must initialize ConnectorProviderBase with the Java class
- * name of the OMRS Connector implementation (by calling super.setConnectorClassName(className)).
- * Then the connector provider will work.
- */
-public abstract class OMRSRepositoryEventMapperProviderBase extends ConnectorProviderBase
-{
-    /**
-     * Default Constructor
-     */
-    public OMRSRepositoryEventMapperProviderBase()
-    {
-        /*
-         * Nothing to do
-         */
-    }
-}


[44/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/StarRating.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/StarRating.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/StarRating.java
deleted file mode 100644
index 26017d4..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/StarRating.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * A StarRating defines the rating that a user has placed against an asset. This ranges from not recommended
- * through to five stars (excellent).
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum StarRating implements Serializable
-{
-    NOT_RECOMMENDED (0, "X", "Not recommended"),
-    ONE_STAR        (1, "*", "Poor"),
-    TWO_STARS       (2, "**", "Usable"),
-    THREE_STARS     (3, "***", "Good"),
-    FOUR_STARS      (4, "****", "Very Good"),
-    FIVE_STARS      (5, "*****", "Excellent");
-
-    private static final long     serialVersionUID = 1L;
-
-    private int            starRatingCode;
-    private String         starRatingSymbol;
-    private String         starRatingDescription;
-
-
-    /**
-     * Typical Constructor
-     */
-    StarRating(int     starRatingCode, String   starRatingSymbol, String   starRatingDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.starRatingCode = starRatingCode;
-        this.starRatingSymbol = starRatingSymbol;
-        this.starRatingDescription = starRatingDescription;
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - star rating code
-     */
-    public int getStarRatingCode()
-    {
-        return starRatingCode;
-    }
-
-
-    /**
-     * Return the default symbol for this enum instance.
-     *
-     * @return String - default symbol
-     */
-    public String getStarRatingSymbol()
-    {
-        return starRatingSymbol;
-    }
-
-
-    /**
-     * Return the default description for the star rating for this enum instance.
-     *
-     * @return String - default description
-     */
-    public String getStarRatingDescription()
-    {
-        return starRatingDescription;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "StarRating{" +
-                "starRatingCode=" + starRatingCode +
-                ", starRatingSymbol='" + starRatingSymbol + '\'' +
-                ", starRatingDescription='" + starRatingDescription + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/VirtualConnection.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/VirtualConnection.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/VirtualConnection.java
deleted file mode 100644
index 5deb6eb..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/VirtualConnection.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * A virtual connection is for an asset that provides data by delegating requests to one or more other connections.
- * it maintains a list of the connections that are used by its asset.  These are referred to as embedded connections.
- */
-public class VirtualConnection extends Connection
-{
-    /*
-     * Attributes of a virtual connection
-     */
-    protected EmbeddedConnections       embeddedConnections = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object
-     * @param meanings - list of glossary terms (summary)
-     * @param displayName - consumable name
-     * @param description - stored description property for the connection.
-     * @param connectorType - connector type to copy
-     * @param endpoint - endpoint properties
-     * @param securedProperties - typically user credentials for the connection
-     * @param embeddedConnections - the embedded connections for this virtual connection.
-     */
-    public VirtualConnection(AssetDescriptor      parentAsset,
-                             ElementType          type,
-                             String               guid,
-                             String               url,
-                             Classifications      classifications,
-                             String               qualifiedName,
-                             AdditionalProperties additionalProperties,
-                             Meanings             meanings,
-                             String               displayName,
-                             String               description,
-                             ConnectorType        connectorType,
-                             Endpoint             endpoint,
-                             AdditionalProperties securedProperties,
-                             EmbeddedConnections  embeddedConnections)
-    {
-        super(parentAsset,
-              type,
-              guid,
-              url,
-              classifications,
-              qualifiedName,
-              additionalProperties,
-              meanings,
-              displayName,
-              description,
-              connectorType,
-              endpoint,
-              securedProperties);
-
-        this.embeddedConnections = embeddedConnections;
-    }
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateVirtualConnection - element to copy
-     */
-    public VirtualConnection(AssetDescriptor parentAsset, VirtualConnection templateVirtualConnection)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(parentAsset, templateVirtualConnection);
-
-        /*
-         * Extract additional information from the template if available
-         */
-        if (templateVirtualConnection != null)
-        {
-            EmbeddedConnections  templateEmbeddedConnections = templateVirtualConnection.getEmbeddedConnections();
-
-            if (templateEmbeddedConnections != null)
-            {
-                /*
-                 * Ensure comment replies has this object's parent asset, not the template's.
-                 */
-                embeddedConnections = templateEmbeddedConnections.cloneIterator(parentAsset);
-            }
-        }
-    }
-
-
-    /**
-     * Return the enumeration of embedded connections for this virtual connection.
-     *
-     * @return EmbeddedConnections
-     */
-    public EmbeddedConnections getEmbeddedConnections()
-    {
-        if (embeddedConnections == null)
-        {
-            return embeddedConnections;
-        }
-        else
-        {
-            return embeddedConnections.cloneIterator(super.getParentAsset());
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "VirtualConnection{" +
-                "embeddedConnections=" + embeddedConnections +
-                ", securedProperties=" + securedProperties +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/AdditionalProperties.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/AdditionalProperties.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/AdditionalProperties.java
deleted file mode 100644
index 6a23a47..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/AdditionalProperties.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties.beans;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The AdditionalProperties bean extends the AdditionalProperties from the properties package with a default constructor and
- * setter methods.  This means it can be used for REST calls and other JSON based functions.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class AdditionalProperties extends org.apache.atlas.ocf.properties.AdditionalProperties
-{
-
-    /**
-     * Default constructor
-     */
-    public AdditionalProperties()
-    {
-        super(null);
-    }
-
-
-    /**
-     * Set up the additional properties.
-     *
-     * @param additionalProperties - property map
-     */
-    public void setAdditionalProperties(Map<String, Object> additionalProperties)
-    {
-        super.additionalProperties = additionalProperties;
-    }
-
-
-    /**
-     * Copy/clone Constructor for additional properties that are connected to an asset.
-     *
-     * @param templateProperties - template object to copy.
-     */
-    public AdditionalProperties(AdditionalProperties templateProperties)
-    {
-        super(null, templateProperties);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/Connection.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/Connection.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/Connection.java
deleted file mode 100644
index 465255f..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/Connection.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties.beans;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The Connection bean extends the Connection from the properties package with a default constructor and
- * setter methods.  This means it can be used for REST calls and other JSON based functions.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Connection extends org.apache.atlas.ocf.properties.Connection
-{
-    /**
-     * Default constructor sets the Connection properties to null.
-     */
-    public Connection()
-    {
-        super(null);
-    }
-
-
-    /**
-     * Copy/clone Constructor to return a copy of a connection object that is not connected to an asset.
-     *
-     * @param templateConnection - Connection to copy
-     */
-    public Connection(Connection   templateConnection)
-    {
-        /*
-         * Set parentAsset to null
-         */
-        super(templateConnection);
-    }
-
-
-    /**
-     * Copy/clone Constructor to return a copy of a connection object that is not connected to an asset.
-     *
-     * @param templateConnection - Connection to copy
-     */
-    public Connection(org.apache.atlas.ocf.properties.Connection   templateConnection)
-    {
-        /*
-         * Set parentAsset to null
-         */
-        super(templateConnection);
-    }
-
-
-    /**
-     * Set up the type of this element.
-     *
-     * @param type - element type proprerties
-     */
-    public void setType(ElementType type)
-    {
-        super.type = type;
-    }
-
-
-    /**
-     * Set up the guid for the element.
-     *
-     * @param guid - String unique identifier
-     */
-    public void setGUID(String guid)
-    {
-        super.guid = guid;
-    }
-
-
-    /**
-     * Set up the URL of this element.
-     *
-     * @param url - String
-     */
-    public void setURL(String url)
-    {
-        super.url = url;
-    }
-
-
-    /**
-     * Set up the fully qualified name.
-     *
-     * @param qualifiedName - String name
-     */
-    public void setQualifiedName(String qualifiedName)
-    {
-        super.qualifiedName = qualifiedName;
-    }
-
-
-    /**
-     * Set up additional properties.
-     *
-     * @param additionalProperties - Additional properties object
-     */
-    public void setAdditionalProperties(AdditionalProperties additionalProperties)
-    {
-        super.additionalProperties = additionalProperties;
-    }
-
-
-    /**
-     * Set up the display name for UIs and reports.
-     *
-     * @param displayName - String name
-     */
-    public void setDisplayName(String displayName)
-    {
-        super.displayName = displayName;
-    }
-
-
-    /**
-     * Set up description of the element.
-     *
-     * @param description - String
-     */
-    public void setDescription(String description)
-    {
-        super.description = description;
-    }
-
-
-    /**
-     * Set up the connector type properties for this Connection.
-     *
-     * @param connectorType - ConnectorType properties object
-     */
-    public void setConnectorType(ConnectorType connectorType)
-    {
-        super.connectorType = connectorType;
-    }
-
-
-    /**
-     * Set up the endpoint properties for this Connection.
-     *
-     * @param endpoint - Endpoint properties object
-     */
-    public void setEndpoint(Endpoint endpoint)
-    {
-        super.endpoint = endpoint;
-    }
-
-
-    /**
-     * Set up the secured properties for this Connection.
-     *
-     * @param securedProperties - properties that contain secret information such as log on information.
-     */
-    public void setSecuredProperties(AdditionalProperties securedProperties)
-    {
-        super.securedProperties = securedProperties;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/ConnectorType.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/ConnectorType.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/ConnectorType.java
deleted file mode 100644
index 7e16440..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/ConnectorType.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties.beans;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The Connection bean extends the Connection from the properties package with a default constructor and
- * setter methods.  This means it can be used for REST calls and other JSON based functions.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class ConnectorType extends org.apache.atlas.ocf.properties.ConnectorType
-{
-    /**
-     * Default constructor
-     */
-    public ConnectorType()
-    {
-        super(null);
-    }
-
-
-    /**
-     * Copy/clone constructor for a connectorType that is not connected to an asset (either directly or indirectly).
-     *
-     * @param templateConnectorType - template object to copy.
-     */
-    public ConnectorType(ConnectorType    templateConnectorType)
-    {
-        super(templateConnectorType);
-    }
-
-
-    /**
-     * Set up the type of this element.
-     *
-     * @param type - element type proprerties
-     */
-    public void setType(ElementType type)
-    {
-        super.type = type;
-    }
-
-
-    /**
-     * Set up the guid for the element.
-     *
-     * @param guid - String unique identifier
-     */
-    public void setGUID(String guid)
-    {
-        super.guid = guid;
-    }
-
-
-    /**
-     * Set up the URL of this element.
-     *
-     * @param url - String
-     */
-    public void setURL(String url)
-    {
-        super.url = url;
-    }
-
-
-    /**
-     * Set up the fully qualified name.
-     *
-     * @param qualifiedName - String name
-     */
-    public void setQualifiedName(String qualifiedName)
-    {
-        super.qualifiedName = qualifiedName;
-    }
-
-
-    /**
-     * Set up additional properties.
-     *
-     * @param additionalProperties - Additional properties object
-     */
-    public void setAdditionalProperties(AdditionalProperties additionalProperties)
-    {
-        super.additionalProperties = additionalProperties;
-    }
-
-
-    /**
-     * Set up the display name for UIs and reports.
-     *
-     * @param displayName - String name
-     */
-    public void setDisplayName(String displayName)
-    {
-        super.displayName = displayName;
-    }
-
-
-    /**
-     * Set up description of the element.
-     *
-     * @param description - String
-     */
-    public void setDescription(String description)
-    {
-        super.description = description;
-    }
-
-
-    /**
-     * The name of the connector provider class name.
-     *
-     * @param connectorProviderClassName - String class name
-     */
-    public void setConnectorProviderClassName(String connectorProviderClassName)
-    {
-        super.connectorProviderClassName = connectorProviderClassName;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/ElementType.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/ElementType.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/ElementType.java
deleted file mode 100644
index 6fb4683..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/ElementType.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties.beans;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.ocf.properties.ElementOrigin;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The ElementType bean extends the ElementType from the properties package with a default constructor and
- * setter methods.  This means it can be used for REST calls and other JSON based functions.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class ElementType extends org.apache.atlas.ocf.properties.ElementType
-{
-    /**
-     * Default constructor
-     */
-    public ElementType()
-    {
-        super(null);
-        elementOrigin = ElementOrigin.CONFIGURATION;
-    }
-
-
-    /**
-     * Copy/clone constructor
-     *
-     * @param templateType - type to clone
-     */
-    public ElementType(ElementType templateType)
-    {
-        super(templateType);
-    }
-
-
-    /**
-     * Set up the unique identifier for the element's type.
-     *
-     * @param elementTypeId - String identifier
-     */
-    public void setElementTypeId(String elementTypeId)
-    {
-        super.elementTypeId = elementTypeId;
-    }
-
-
-    /**
-     * Set up the name of this element's type
-     *
-     * @param elementTypeName - String name
-     */
-    public void setElementTypeName(String elementTypeName)
-    {
-        super.elementTypeName = elementTypeName;
-    }
-
-
-    /**
-     * Set up the version number for this element's type
-     *
-     * @param elementTypeVersion - version number for the element type.
-     */
-    public void setElementTypeVersion(long elementTypeVersion)
-    {
-        super.elementTypeVersion = elementTypeVersion;
-    }
-
-
-    /**
-     *
-     * @param elementTypeDescription - set up the description for this element's type
-     */
-    public void setElementTypeDescription(String elementTypeDescription)
-    {
-        super.elementTypeDescription = elementTypeDescription;
-    }
-
-
-    /**
-     * the URL of the server where the element was retrieved from.  Typically this is
-     * a server where the OMAS interfaces are activated.  If no URL is known for the server then null is returned.
-     *
-     * @param elementAccessServiceURL - URL of the server
-     */
-    public void setElementAccessServiceURL(String elementAccessServiceURL)
-    {
-        super.elementSourceServer = elementAccessServiceURL;
-    }
-
-
-    /**
-     * Set up the details of this element's origin.
-     *
-     * @param elementOrigin - see ElementOrigin enum
-     */
-    public void setElementOrigin(ElementOrigin elementOrigin)
-    {
-        super.elementOrigin = elementOrigin;
-    }
-
-
-    /**
-     * Set up the OMRS identifier for the metadata collection that is managed by the repository
-     * where the element originates (its home repository).
-     *
-     * @param elementHomeMetadataCollectionId - String unique identifier for the home metadata repository
-     */
-    public void setElementHomeMetadataCollectionId(String elementHomeMetadataCollectionId)
-    {
-        super.elementHomeMetadataCollectionId = elementHomeMetadataCollectionId;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/Endpoint.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/Endpoint.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/Endpoint.java
deleted file mode 100644
index f86c01c..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/beans/Endpoint.java
+++ /dev/null
@@ -1,164 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties.beans;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The Endpoint bean extends the Endpoint from the properties package with a default constructor and
- * setter methods.  This means it can be used for REST calls and other JSON based functions.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Endpoint extends org.apache.atlas.ocf.properties.Endpoint
-{
-    /**
-     * Default constructor
-     */
-    public Endpoint()
-    {
-        super(null);
-    }
-
-
-    /**
-     * Copy/clone constructor for an Endpoint not connected to an asset.
-     *
-     * @param templateEndpoint - template object to copy.
-     */
-    public Endpoint(Endpoint  templateEndpoint)
-    {
-        super(templateEndpoint);
-    }
-
-
-    /**
-     * Set up the type of this element.
-     *
-     * @param type - element type proprerties
-     */
-    public void setType(ElementType type)
-    {
-        super.type = type;
-    }
-
-
-    /**
-     * Set up the guid for the element.
-     *
-     * @param guid - String unique identifier
-     */
-    public void setGUID(String guid)
-    {
-        super.guid = guid;
-    }
-
-
-    /**
-     * Set up the URL of this element.
-     *
-     * @param url - String
-     */
-    public void setURL(String url)
-    {
-        super.url = url;
-    }
-
-
-    /**
-     * Set up the fully qualified name.
-     *
-     * @param qualifiedName - String name
-     */
-    public void setQualifiedName(String qualifiedName)
-    {
-        super.qualifiedName = qualifiedName;
-    }
-
-
-    /**
-     * Set up additional properties.
-     *
-     * @param additionalProperties - Additional properties object
-     */
-    public void setAdditionalProperties(AdditionalProperties additionalProperties)
-    {
-        super.additionalProperties = additionalProperties;
-    }
-
-
-    /**
-     * Set up the display name for UIs and reports.
-     *
-     * @param displayName - String name
-     */
-    public void setDisplayName(String displayName)
-    {
-        super.displayName = displayName;
-    }
-
-
-    /**
-     * Set up description of the element.
-     *
-     * @param description - String
-     */
-    public void setDescription(String description)
-    {
-        super.description = description;
-    }
-
-
-    /**
-     * Set up the network address of the Endpoint.
-     *
-     * @param address - String resource name
-     */
-    public void setAddress(String address)
-    {
-        super.address = address;
-    }
-
-
-    /**
-     * Set up the protocol to use for this Endpoint
-     *
-     * @param protocol - String protocol name
-     */
-    public void setProtocol(String protocol)
-    {
-        super.protocol = protocol;
-    }
-
-
-    /**
-     * Set up the encryption method used on this Endpoint.
-     *
-     * @param encryptionMethod - String name
-     */
-    public void setEncryptionMethod(String encryptionMethod)
-    {
-        super.encryptionMethod = encryptionMethod;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/pom.xml
----------------------------------------------------------------------
diff --git a/omag-api/pom.xml b/omag-api/pom.xml
deleted file mode 100644
index b188a99..0000000
--- a/omag-api/pom.xml
+++ /dev/null
@@ -1,121 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-
-    <parent>
-        <artifactId>apache-atlas</artifactId>
-        <groupId>org.apache.atlas</groupId>
-        <version>1.0.0</version>
-    </parent>
-
-    <artifactId>omag-api</artifactId>
-
-    <name>Open Metadata and Governance (OMAG) Server APIs</name>
-    <description>Open Metadata and Governance (OMAG) server interfaces for managing the open metadata and governance
-        functions running inside a server.
-    </description>
-
-    <packaging>jar</packaging>
-
-    <dependencies>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter</artifactId>
-            <version>1.5.7.RELEASE</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-web</artifactId>
-            <version>1.5.7.RELEASE</version>
-        </dependency>
-
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>commons-io</groupId>
-            <artifactId>commons-io</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>com.fasterxml.jackson.jaxrs</groupId>
-            <artifactId>jackson-jaxrs-base</artifactId>
-            <version>${jackson.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>com.fasterxml.jackson.jaxrs</groupId>
-            <artifactId>jackson-jaxrs-json-provider</artifactId>
-            <version>${jackson.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>javax.inject</groupId>
-            <artifactId>javax.inject</artifactId>
-            <version>${javax-inject.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.testng</groupId>
-            <artifactId>testng</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>om-fwk-ocf</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>omrs</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-
-
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-jar-plugin</artifactId>
-                <version>2.4</version>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>test-jar</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-</project>

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/admin/LocalRepositoryMode.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/admin/LocalRepositoryMode.java b/omag-api/src/main/java/org/apache/atlas/omag/admin/LocalRepositoryMode.java
deleted file mode 100644
index ed6c2d9..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/admin/LocalRepositoryMode.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omag.admin;
-
-import java.io.Serializable;
-
-/**
- * LocalRepositoryMode defines the mode that the local repository will operate in.
- */
-public enum LocalRepositoryMode implements Serializable
-{
-    NO_LOCAL_REPOSITORY    (0,    "No Local repository",      "There is no local repository so all of the metadata " +
-                                                              "passed through the enterprise access " +
-                                                              "layer to the open metadata access services comes from " +
-                                                              "peer repositories from the cohort(s) that this repository " +
-                                                              "is registered with."),
-    IN_MEMORY_REPOSITORY   (1,    "In memory repository",     "The local repository is an in memory repository that does" +
-                                                              "not save metadata between each run of the server."),
-    LOCAL_GRAPH_REPOSITORY (2,    "Local graph repository",   "The built-in graph database is in use.  Metadata can be stored " +
-                                                              "and retrieved from this graph database. " +
-                                                              "This metadata can be combined with metadata from " +
-                                                              "peer repositories from the cohort(s) that this repository " +
-                                                              "is registered with."),
-    REPOSITORY_PROXY       (3,    "Repository proxy",         "The local repository is implemented by a service that is " +
-                                                              "external to the local server.  Metadata can be stored " +
-                                                              "and retrieved from this repository. This metadata can be " +
-                                                              "combined with metadata from peer repositories from the " +
-                                                              "cohort(s) that this repository is registered with.");
-
-    private static final long serialVersionUID = 1L;
-
-    private int            typeCode;
-    private String         typeName;
-    private String         typeDescription;
-
-
-    /**
-     * Default Constructor
-     *
-     * @param typeCode - ordinal for this enum
-     * @param typeName - symbolic name for this enum
-     * @param typeDescription - short description for this enum
-     */
-    LocalRepositoryMode(int     typeCode, String   typeName, String   typeDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.typeCode = typeCode;
-        this.typeName = typeName;
-        this.typeDescription = typeDescription;
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - type code
-     */
-    public int getTypeCode()
-    {
-        return typeCode;
-    }
-
-
-    /**
-     * Return the default name for this enum instance.
-     *
-     * @return String - default name
-     */
-    public String getTypeName()
-    {
-        return typeName;
-    }
-
-
-    /**
-     * Return the default description for the type for this enum instance.
-     *
-     * @return String - default description
-     */
-    public String getTypeDescription()
-    {
-        return typeDescription;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/admin/OMAGServerAdministration.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/admin/OMAGServerAdministration.java b/omag-api/src/main/java/org/apache/atlas/omag/admin/OMAGServerAdministration.java
deleted file mode 100644
index dd19018..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/admin/OMAGServerAdministration.java
+++ /dev/null
@@ -1,377 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.admin;
-
-
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.omag.configuration.properties.AccessServiceConfig;
-import org.apache.atlas.omag.configuration.properties.OMAGServerConfig;
-import org.apache.atlas.omag.ffdc.exception.OMAGConfigurationErrorException;
-import org.apache.atlas.omag.ffdc.exception.OMAGInvalidParameterException;
-import org.apache.atlas.omag.ffdc.exception.OMAGNotAuthorizedException;
-import org.apache.atlas.omrs.admin.properties.CohortConfig;
-import org.apache.atlas.omrs.admin.properties.EnterpriseAccessConfig;
-import org.apache.atlas.omrs.admin.properties.LocalRepositoryConfig;
-
-import java.util.List;
-
-/**
- * OMAGServerAdministration defines the administrative interface for an Open Metadata and Governance (OMAG) Server.
- * It is used to create both the Java client and the RESTful server-side implementation.  It provides all of the
- * configuration properties for the Open Metadata Access Services (OMASs) and delegates administration requests
- * to the Open Metadata Repository Services (OMRS).
- *
- * <p>
- *     There are four types of operations supported by OMAGServerAdministration:
- * </p>
- * <ul>
- *     <li>
- *         Basic configuration - these methods use the minimum of configuration information to run the
- *         server using default properties.
- *     </li>
- *     <li>
- *         Advanced Configuration - provides access to all configuration properties to provide
- *         fine-grained control of the server.
- *     </li>
- *     <li>
- *         Initialization and shutdown - these methods control the initialization and shutdown of the
- *         open metadata and governance services based on the supplied configuration.
- *     </li>
- *     <li>
- *         Operational status and control - these methods query the status of the open metadata and governance
- *         services as well as the audit log.
- *     </li>
- * </ul>
- */
-public interface OMAGServerAdministration
-{
-    /*
-     * =============================================================
-     * Configure server - basic options using defaults
-     */
-
-    /**
-     * Set up the root URL for this server that is used to construct full URL paths to calls for
-     * this server's REST interfaces.  The default value is "localhost:8080".
-     *
-     * @param userId - user that is issuing the request.
-     * @param serverName - local server name.
-     * @param serverURLRoot - String url.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or serverURLRoot parameter.
-     */
-    void setServerURLRoot(String    userId,
-                          String    serverName,
-                          String    serverURLRoot) throws OMAGNotAuthorizedException,
-                                                          OMAGInvalidParameterException;
-
-
-    /**
-     * Set up the descriptive type of the server.  This value is added to distributed events to
-     * make it easier to understand the source of events.  The default value is "Open Metadata and Governance Server".
-     *
-     * @param userId - user that is issuing the request.
-     * @param serverName - local server name.
-     * @param serverType - short description for the type of server.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or serverType parameter.
-     */
-    void setServerType(String    userId,
-                       String    serverName,
-                       String    serverType) throws OMAGNotAuthorizedException,
-                                                    OMAGInvalidParameterException;
-
-
-    /**
-     * Set up the name of the organization that is running this server.  This value is added to distributed events to
-     * make it easier to understand the source of events.  The default value is null.
-     *
-     * @param userId - user that is issuing the request.
-     * @param serverName - local server name.
-     * @param organizationName - String name of the organization.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or organizationName parameter.
-     */
-    void setOrganizationName(String    userId,
-                             String    serverName,
-                             String    organizationName) throws OMAGNotAuthorizedException,
-                                                                OMAGInvalidParameterException;
-
-    /**
-     * Set an upper limit in the page size that can be requested on a REST call to the server.  The default
-     * value is 1000.
-     *
-     * @param userId - user that is issuing the request.
-     * @param serverName - local server name.
-     * @param maxPageSize - max number of elements that can be returned on a request.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or maxPageSize parameter.
-     */
-    void setMaxPageSize(String  userId,
-                        String  serverName,
-                        int     maxPageSize) throws OMAGNotAuthorizedException,
-                                                    OMAGInvalidParameterException;
-
-
-    /**
-     * Set up whether the access services should be enabled or not.  This is controlled by the serviceMode.
-     * The default is serviceMode=enabled for all access services that are installed into this server and
-     * serviceMode=disabled for those services that are not installed.   The configuration properties
-     * for each access service can be changed from their default using setAccessServicesConfig operation.
-     *
-     * @param userId - user that is issuing the request.
-     * @param serverName - local server name.
-     * @param serviceMode - OMAGServiceMode enum.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or serviceMode parameter.
-     */
-    void setAccessServicesMode(String            userId,
-                               String            serverName,
-                               OMAGServiceMode   serviceMode) throws OMAGNotAuthorizedException,
-                                                                     OMAGInvalidParameterException;
-
-
-    /**
-     * Set up the type of local repository.  There are three choices: No local Repository, Local Graph Repository
-     * and Repository Proxy.  The default is No Local Repository.  If the local repository mode is set to
-     * Repository Proxy then it is necessary to provide the connection to the local repository using the
-     * setRepositoryProxyConnection operation.
-     *
-     * @param userId - user that is issuing the request.
-     * @param serverName - local server name.
-     * @param localRepositoryMode - LocalRepositoryMode enum - NO_LOCAL_REPOSITORY, LOCAL_GRAPH_REPOSITORY
-     * or REPOSITORY_PROXY.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or localRepositoryMode parameter.
-     */
-    void setLocalRepositoryMode(String               userId,
-                                String               serverName,
-                                LocalRepositoryMode  localRepositoryMode) throws OMAGNotAuthorizedException,
-                                                                                 OMAGInvalidParameterException;
-
-
-    /**
-     * Provide the connection to the local repository - used when the local repository mode is set to repository proxy.
-     *
-     * @param userId - user that is issuing the request.
-     * @param serverName - local server name.
-     * @param repositoryProxyConnection - connection to the OMRS repository connector.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or repositoryProxyConnection parameter
-     * @throws OMAGConfigurationErrorException - the local repository mode has not been set
-     */
-    void setRepositoryProxyConnection(String     userId,
-                                      String     serverName,
-                                      Connection repositoryProxyConnection) throws OMAGNotAuthorizedException,
-                                                                                   OMAGInvalidParameterException,
-                                                                                   OMAGConfigurationErrorException;
-
-
-    /**
-     * Provide the connection to the local repository's event mapper if needed.  The default value is null which
-     * means no event mapper.  An event mapper is needed if the local repository has additional APIs that can change
-     * the metadata in the repository without going through the open metadata and governance services.
-     *
-     * @param userId - user that is issuing the request.
-     * @param serverName - local server name.
-     * @param localRepositoryEventMapper - connection to the OMRS repository event mapper.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or localRepositoryEventMapper parameter.
-     * @throws OMAGConfigurationErrorException - the local repository mode has not been set
-     */
-    void setLocalRepositoryEventMapper(String      userId,
-                                       String      serverName,
-                                       Connection  localRepositoryEventMapper) throws OMAGNotAuthorizedException,
-                                                                                      OMAGInvalidParameterException,
-                                                                                      OMAGConfigurationErrorException;
-
-
-    /**
-     * Set up the mode for an open metadata repository cohort.  This is a group of open metadata repositories that
-     * are sharing metadata.  An OMAG server can connect to zero, one or more cohorts.  Each cohort needs
-     * a unique name.  The members of the cohort use a shared topic to exchange registration information and
-     * events related to changes in their supported metadata types and instances.  They are also able to
-     * query each other's metadata directly through REST calls.
-     *
-     * @param userId - user that is issuing the request.
-     * @param serverName - local server name.
-     * @param cohortName - name of the cohort.
-     * @param serviceMode - OMAGServiceMode enum - ENABLED or DISABLED.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName, cohortName or serviceMode parameter.
-     */
-    void setCohortMode(String           userId,
-                       String           serverName,
-                       String           cohortName,
-                       OMAGServiceMode  serviceMode) throws OMAGNotAuthorizedException,
-                                                            OMAGInvalidParameterException;
-
-
-    /*
-     * =============================================================
-     * Configure server - advanced options overriding defaults
-     */
-
-
-    /**
-     * Set up the configuration for all of the open metadata access services (OMASs).  This overrides
-     * the current values.
-     *
-     * @param userId - user that is issuing the request.
-     * @param serverName - local server name.
-     * @param accessServicesConfig - list of configuration properties for each access service.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or accessServicesConfig parameter.
-     */
-    void setAccessServicesConfig(String                    userId,
-                                 String                    serverName,
-                                 List<AccessServiceConfig> accessServicesConfig) throws OMAGNotAuthorizedException,
-                                                                                        OMAGInvalidParameterException;
-
-
-    /**
-     * Set up the configuration for the local repository.  This overrides the current values.
-     *
-     * @param userId - user that is issuing the request.
-     * @param serverName - local server name.
-     * @param localRepositoryConfig - configuration properties for the local repository.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or localRepositoryConfig parameter.
-     */
-    void setLocalRepositoryConfig(String                   userId,
-                                  String                   serverName,
-                                  LocalRepositoryConfig    localRepositoryConfig) throws OMAGNotAuthorizedException,
-                                                                                         OMAGInvalidParameterException;
-
-
-    /**
-     * Set up the configuration that controls the enterprise repository services.  These services are part
-     * of the Open Metadata Repository Services (OMRS).  They provide federated queries and federated event
-     * notifications that cover metadata from the local repository plus any repositories connected via
-     * open metadata repository cohorts.
-     *
-     * @param userId - user that is issuing the request
-     * @param serverName - local server name
-     * @param enterpriseAccessConfig - enterprise repository services configuration properties.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName or enterpriseAccessConfig parameter.
-     */
-    void setEnterpriseAccessConfig(String                  userId,
-                                   String                  serverName,
-                                   EnterpriseAccessConfig  enterpriseAccessConfig) throws OMAGNotAuthorizedException,
-                                                                                          OMAGInvalidParameterException;
-
-
-    /**
-     * Set up the configuration properties for a cohort.  This may reconfigure an existing cohort or create a
-     * cohort.  Use setCohortMode to delete a cohort.
-     *
-     * @param userId - user that is issuing the request
-     * @param serverName - local server name
-     * @param cohortName - name of the cohort
-     * @param cohortConfig - configuration for the cohort
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName, cohortName or cohortConfig parameter.
-     */
-    void setCohortConfig(String        userId,
-                         String        serverName,
-                         String        cohortName,
-                         CohortConfig  cohortConfig) throws OMAGNotAuthorizedException,
-                                                            OMAGInvalidParameterException;
-
-
-    /*
-     * =============================================================
-     * Query current configuration
-     */
-
-
-    /**
-     * Return the complete set of configuration properties in use by the server.
-     *
-     * @param userId - user that is issuing the request
-     * @param serverName - local server name
-     * @return OMAGServerConfig properties
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - invalid serverName parameter.
-     */
-    OMAGServerConfig  getCurrentConfiguration(String     userId,
-                                              String     serverName) throws OMAGNotAuthorizedException,
-                                                                            OMAGInvalidParameterException;
-
-
-    /*
-     * =============================================================
-     * Initialization and shutdown
-     */
-
-    /**
-     * Initialize the open metadata and governance services using the stored configuration information.
-     *
-     * @param userId - user that is issuing the request
-     * @param serverName - local server name
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - the server name is invalid
-     * @throws OMAGConfigurationErrorException - there is a problem using the supplied configuration
-     */
-    void initialize (String        userId,
-                     String        serverName) throws OMAGNotAuthorizedException,
-                                                      OMAGInvalidParameterException,
-                                                      OMAGConfigurationErrorException;
-
-
-    /**
-     * Initialize the open metadata and governance services using the supplied information.
-     *
-     * @param userId - user that is issuing the request
-     * @param configuration - properties used to initialize the services
-     * @param serverName - local server name
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - the serverName is invalid.
-     * @throws OMAGConfigurationErrorException - there is a problem using the supplied configuration
-     */
-    void initialize (String             userId,
-                     String             serverName,
-                     OMAGServerConfig   configuration) throws OMAGNotAuthorizedException,
-                                                              OMAGInvalidParameterException,
-                                                              OMAGConfigurationErrorException;
-
-
-    /**
-     * Terminate any open metadata and governance services.
-     *
-     * @param userId - user that is issuing the request
-     * @param serverName - local server name
-     * @param permanent - Is the server being shutdown permanently - if yes, the local server will unregister from
-     *                  its open metadata repository cohorts.
-     * @throws OMAGNotAuthorizedException - the supplied userId is not authorized to issue this command.
-     * @throws OMAGInvalidParameterException - the serverName is invalid.
-     */
-    void terminate (String     userId,
-                    String     serverName,
-                    boolean    permanent) throws OMAGNotAuthorizedException,
-                                                  OMAGInvalidParameterException;
-
-
-    /*
-     * =============================================================
-     * Operational status and control
-     */
-
-    /* placeholder */
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/admin/OMAGServiceMode.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/admin/OMAGServiceMode.java b/omag-api/src/main/java/org/apache/atlas/omag/admin/OMAGServiceMode.java
deleted file mode 100644
index 40f9fed..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/admin/OMAGServiceMode.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.admin;
-
-
-import java.io.Serializable;
-
-/**
- * OMAGServiceMode sets up whether an open metadata and governance service (OMAS) is enabled or not.
- */
-public enum OMAGServiceMode implements Serializable
-{
-    ENABLED          (1, "Enabled",         "The open metadata and governance service is available and running."),
-    DISABLED         (0, "Disabled",        "The open metadata and governance service is disabled.");
-
-    private static final long serialVersionUID = 1L;
-
-    private int            typeCode;
-    private String         typeName;
-    private String         typeDescription;
-
-
-    /**
-     * Default Constructor
-     *
-     * @param typeCode - ordinal for this enum
-     * @param typeName - symbolic name for this enum
-     * @param typeDescription - short description for this enum
-     */
-    OMAGServiceMode(int     typeCode, String   typeName, String   typeDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.typeCode = typeCode;
-        this.typeName = typeName;
-        this.typeDescription = typeDescription;
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - type code
-     */
-    public int getTypeCode()
-    {
-        return typeCode;
-    }
-
-
-    /**
-     * Return the default name for this enum instance.
-     *
-     * @return String - default name
-     */
-    public String getTypeName()
-    {
-        return typeName;
-    }
-
-
-    /**
-     * Return the default description for the type for this enum instance.
-     *
-     * @return String - default description
-     */
-    public String getTypeDescription()
-    {
-        return typeDescription;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/OMAGAccessServiceRegistration.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/OMAGAccessServiceRegistration.java b/omag-api/src/main/java/org/apache/atlas/omag/admin/server/OMAGAccessServiceRegistration.java
deleted file mode 100644
index aa9d80c..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/admin/server/OMAGAccessServiceRegistration.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.admin.server;
-
-import org.apache.atlas.omag.configuration.registration.AccessServiceRegistration;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class OMAGAccessServiceRegistration
-{
-    static private List<AccessServiceRegistration> accessServiceRegistrationList = new ArrayList<>();
-
-
-    /*
-     * Register OMAS
-     */
-
-    public static synchronized void registerAccessService(AccessServiceRegistration registration)
-    {
-        if (registration != null)
-        {
-            accessServiceRegistrationList.add(registration);
-        }
-    }
-
-    public static synchronized  List<AccessServiceRegistration> getAccessServiceRegistrationList()
-    {
-        return accessServiceRegistrationList;
-    }
-
-}


[29/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSMetadataStore.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSMetadataStore.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSMetadataStore.java
deleted file mode 100644
index 3d54344..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSMetadataStore.java
+++ /dev/null
@@ -1,615 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.inmemory.repositoryconnector;
-
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityDetail;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityProxy;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.Relationship;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.AttributeTypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDef;
-
-import java.util.*;
-
-/**
- * InMemoryOMRSMetadataStore provides the in memory stores for the InMemoryRepositoryConnector
- */
-public class InMemoryOMRSMetadataStore
-{
-    private String                            repositoryName           = null;
-    private HashMap<String, TypeDef>          typeDefStore             = new HashMap<>();
-    private HashMap<String, AttributeTypeDef> attributeTypeDefStore    = new HashMap<>();
-    private HashMap<String, EntityDetail>     entityStore              = new HashMap<>();
-    private HashMap<String, EntityProxy>      entityProxyStore         = new HashMap<>();
-    private List<EntityDetail>                entityHistoryStore       = new ArrayList<>();
-    private HashMap<String, Relationship>     relationshipStore        = new HashMap<>();
-    private List<Relationship>                relationshipHistoryStore = new ArrayList<>();
-
-
-    /**
-     * Default constructor
-     */
-    public InMemoryOMRSMetadataStore()
-    {
-    }
-
-
-    /**
-     * Set up the name of the repository for logging.
-     *
-     * @param repositoryName - String name
-     */
-    protected void  setRepositoryName(String    repositoryName)
-    {
-        this.repositoryName = repositoryName;
-    }
-
-
-    /**
-     * Return a list of all of the defined AttributeTypeDefs.
-     *
-     * @return list of attribute type definitions
-     */
-    protected List<AttributeTypeDef> getAttributeTypeDefs()
-    {
-        return new ArrayList<>(attributeTypeDefStore.values());
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the supplied guid.
-     *
-     * @param guid - unique identifier for the AttributeTypeDef
-     * @return attribute type definition
-     */
-    protected AttributeTypeDef   getAttributeTypeDef(String  guid)
-    {
-        return attributeTypeDefStore.get(guid);
-    }
-
-
-    /**
-     * Add an AttributeDefType to the store.
-     *
-     * @param attributeTypeDef - type to add
-     */
-    protected void  putAttributeTypeDef(AttributeTypeDef   attributeTypeDef)
-    {
-        attributeTypeDefStore.put(attributeTypeDef.getGUID(), attributeTypeDef);
-    }
-
-
-    /**
-     * Return a list of all of the defined TypeDefs.
-     *
-     * @return list of type definitions
-     */
-    protected List<TypeDef>  getTypeDefs()
-    {
-        return new ArrayList<>(typeDefStore.values());
-    }
-
-
-    /**
-     * Return the type definition identified by the guid.
-     *
-     * @param guid - unique identifier for type definition
-     * @return type definition
-     */
-    protected TypeDef   getTypeDef(String guid)
-    {
-        return typeDefStore.get(guid);
-    }
-
-
-    /**
-     * Add a type definition (TypeDef) to the store.
-     *
-     * @param typeDef - type definition
-     */
-    protected void  putTypeDef(TypeDef   typeDef)
-    {
-        typeDefStore.put(typeDef.getGUID(), typeDef);
-    }
-
-
-    /**
-     * Return a list of entities from the store that are at the latest level.
-     *
-     * @return list of EntityDetail objects
-     */
-    protected List<EntityDetail>   getEntities()
-    {
-        return new ArrayList<>(entityStore.values());
-    }
-
-
-    /**
-     * Return the entity identified by the guid.
-     *
-     * @param guid - unique identifier for the entity
-     * @return entity object
-     */
-    protected EntityDetail  getEntity(String   guid)
-    {
-        return entityStore.get(guid);
-    }
-
-
-    /**
-     * Return the entity proxy identified by the guid.
-     *
-     * @param guid - unique identifier
-     * @return entity proxy object
-     */
-    protected EntityProxy  getEntityProxy(String   guid)
-    {
-        return entityProxyStore.get(guid);
-    }
-
-
-    /**
-     * Return an entity store that contains entities as they were at the time supplied in the asOfTime
-     * parameter
-     *
-     * @param asOfTime - time for the store (or null means now)
-     * @return entity store for the requested time
-     */
-    protected HashMap<String, EntityDetail>  timeWarpEntityStore(Date         asOfTime)
-    {
-        if (asOfTime == null)
-        {
-            return entityStore;
-        }
-
-        HashMap<String, EntityDetail>  timeWarpedEntityStore = new HashMap<>();
-
-        /*
-         * First step through the current relationship store and extract all of the relationships that were
-         * last updated before the asOfTime.
-         */
-        for (EntityDetail  entity : entityStore.values())
-        {
-            if (entity != null)
-            {
-                if (entity.getUpdateTime() != null)
-                {
-                    String entityGUID = entity.getGUID();
-
-                    if (entityGUID != null)
-                    {
-                        if (! entity.getUpdateTime().after(asOfTime))
-                        {
-                            timeWarpedEntityStore.put(entityGUID, entity);
-                        }
-                    }
-                }
-                else if (entity.getCreateTime() != null)
-                {
-                    if (! entity.getCreateTime().after(asOfTime))
-                    {
-                        timeWarpedEntityStore.put(entity.getGUID(), entity);
-                    }
-                }
-            }
-        }
-
-        /*
-         * Now step through the history store picking up the versions of other entities that were active
-         * at the time of the asOfTime.
-         */
-        for (EntityDetail oldEntity : entityHistoryStore)
-        {
-            if (oldEntity != null)
-            {
-                String entityGUID = oldEntity.getGUID();
-
-                if (oldEntity.getUpdateTime() != null)
-                {
-                    if (! oldEntity.getUpdateTime().after(asOfTime))
-                    {
-                        EntityDetail newerEntity = timeWarpedEntityStore.put(entityGUID, oldEntity);
-
-                        if (newerEntity != null)
-                        {
-                            timeWarpedEntityStore.put(entityGUID, newerEntity);
-                        }
-                        break;
-                    }
-                }
-                else if (oldEntity.getCreateTime() != null)
-                {
-                    if (! oldEntity.getCreateTime().after(asOfTime))
-                    {
-                        timeWarpedEntityStore.put(entityGUID, oldEntity);
-                        break;
-                    }
-                }
-            }
-        }
-
-        return timeWarpedEntityStore;
-    }
-
-
-    /**
-     * Return the list of relationships at their current level.
-     *
-     * @return list of relationships
-     */
-    protected List<Relationship>   getRelationships()
-    {
-        return new ArrayList<>(relationshipStore.values());
-    }
-
-
-    /**
-     * Return the relationship identified by the guid.
-     *
-     * @param guid - unique identifier for the relationship
-     * @return relationship object
-     */
-    protected Relationship  getRelationship(String   guid)
-    {
-        return relationshipStore.get(guid);
-    }
-
-    /**
-     * Return a relationship store that contains relationships as they were at the time supplied in the asOfTime
-     * parameter
-     *
-     * @param asOfTime - time for the store (or null means now)
-     * @return relationship store for the requested time
-     */
-    protected HashMap<String, Relationship>  timeWarpRelationshipStore(Date         asOfTime)
-    {
-        if (asOfTime == null)
-        {
-            return relationshipStore;
-        }
-
-
-        HashMap<String, Relationship>  timeWarpedRelationshipStore = new HashMap<>();
-
-        /*
-         * First step through the current relationship store and extract all of the relationships that were
-         * last updated before the asOfTime.
-         */
-        for (Relationship  relationship : relationshipStore.values())
-        {
-            if (relationship != null)
-            {
-                if (relationship.getUpdateTime() != null)
-                {
-                    String relationshipGUID = relationship.getGUID();
-
-                    if (relationshipGUID != null)
-                    {
-                        if (! relationship.getUpdateTime().after(asOfTime))
-                        {
-                            timeWarpedRelationshipStore.put(relationshipGUID, relationship);
-                        }
-                    }
-                }
-                else if (relationship.getCreateTime() != null)
-                {
-                    if (! relationship.getCreateTime().after(asOfTime))
-                    {
-                        timeWarpedRelationshipStore.put(relationship.getGUID(), relationship);
-                    }
-                }
-            }
-        }
-
-        /*
-         * Now step through the history store picking up the versions of other relationships that were active
-         * at the time of the asOfTime.
-         */
-        for (Relationship oldRelationship : relationshipHistoryStore)
-        {
-            if (oldRelationship != null)
-            {
-                String relationshipGUID = oldRelationship.getGUID();
-
-                if (oldRelationship.getUpdateTime() != null)
-                {
-                    if (! oldRelationship.getUpdateTime().after(asOfTime))
-                    {
-                        Relationship newerRelationship = timeWarpedRelationshipStore.put(relationshipGUID, oldRelationship);
-
-                        if (newerRelationship != null)
-                        {
-                            timeWarpedRelationshipStore.put(relationshipGUID, newerRelationship);
-                        }
-                        break;
-                    }
-                }
-                else if (oldRelationship.getCreateTime() != null)
-                {
-                    if (! oldRelationship.getCreateTime().after(asOfTime))
-                    {
-                        timeWarpedRelationshipStore.put(relationshipGUID, oldRelationship);
-                        break;
-                    }
-                }
-            }
-        }
-
-        return timeWarpedRelationshipStore;
-    }
-
-    /**
-     * Create a new entity in the entity store.
-     *
-     * @param entity - new version of the entity
-     * @return entity with potentially updated GUID
-     */
-    protected EntityDetail createEntityInStore(EntityDetail    entity)
-    {
-        /*
-         * There is a small chance the randomly generated GUID will clash with an existing relationship.
-         * If this happens a new GUID is generated for the relationship and the process repeats.
-         */
-        EntityDetail existingEntity = entityStore.put(entity.getGUID(), entity);
-
-        while (existingEntity != null)
-        {
-            entity.setGUID(UUID.randomUUID().toString());
-            existingEntity = entityStore.put(entity.getGUID(), entity);
-        }
-
-        return entity;
-    }
-
-
-    /**
-     * Create a new relationship in the relationship store.
-     *
-     * @param relationship - new version of the relationship
-     * @return relationship with potentially updated GUID
-     */
-    protected Relationship createRelationshipInStore(Relationship    relationship)
-    {
-        /*
-         * There is a small chance the randomly generated GUID will clash with an existing relationship.
-         * If this happens a new GUID is generated for the relationship and the process repeats.
-         */
-        Relationship existingRelationship = relationshipStore.put(relationship.getGUID(), relationship);
-
-        while (existingRelationship != null)
-        {
-            relationship.setGUID(UUID.randomUUID().toString());
-            existingRelationship = relationshipStore.put(relationship.getGUID(), relationship);
-        }
-
-        return relationship;
-    }
-
-
-    /**
-     * Save an entity proxy to the entity store.
-     *
-     * @param entityProxy - entity proxy object to add
-     */
-    protected void addEntityProxyToStore(EntityProxy    entityProxy)
-    {
-        entityProxyStore.put(entityProxy.getGUID(), entityProxy);
-    }
-
-
-    /**
-     * Maintain a history of entities as they are stored into the entity store to ensure old version can be restored.
-     * The history is maintained with the latest changes first in the list.
-     *
-     * @param entity - new version of the entity
-     */
-    protected void updateEntityInStore(EntityDetail    entity)
-    {
-        EntityDetail    oldEntity = entityStore.put(entity.getGUID(), entity);
-
-        if (oldEntity != null)
-        {
-            entityHistoryStore.add(0, oldEntity);
-        }
-    }
-
-
-    /**
-     * Update an entity proxy in the proxy store.
-     *
-     * @param entityProxy - entity proxy object to add
-     */
-    protected void updateEntityProxyInStore(EntityProxy    entityProxy)
-    {
-        entityProxyStore.put(entityProxy.getGUID(), entityProxy);
-    }
-
-
-
-    /**
-     * Maintain a history of relationships as they are stored into the relationship store to ensure old version
-     * can be restored.  The history is maintained with the latest changes first in the list.
-     *
-     * @param relationship - new version of the relationship
-     */
-    protected void updateRelationshipInStore(Relationship    relationship)
-    {
-        Relationship    oldRelationship = relationshipStore.put(relationship.getGUID(), relationship);
-
-        if (oldRelationship != null)
-        {
-            relationshipHistoryStore.add(0, oldRelationship);
-        }
-    }
-
-
-    /**
-     * Save a reference copy of an entity to the active store.  Reference copies are not maintained in the
-     * history store.
-     *
-     * @param entity - object to save
-     */
-    protected void saveReferenceEntityToStore(EntityDetail    entity)
-    {
-        entityStore.put(entity.getGUID(), entity);
-    }
-
-
-    /**
-     * Save a reference copy of a relationship to the active store.  Reference copies are not maintained in the
-     * history store.
-     *
-     * @param relationship - object to save
-     */
-    protected void saveReferenceRelationshipToStore(Relationship    relationship)
-    {
-        relationshipStore.put(relationship.getGUID(), relationship);
-    }
-
-
-    /**
-     * Retrieve the previous version of a Relationship.  This is the first instance of this element that
-     * appears in the history.
-     *
-     * @param guid - unique identifier for the required element
-     * @return - previous version of this relationship - or null if not found
-     */
-    protected Relationship retrievePreviousVersionOfRelationship(String   guid)
-    {
-        if (guid != null)
-        {
-            int  elementPosition = 0;
-
-            for (Relationship relationship : relationshipHistoryStore)
-            {
-                if (relationship != null)
-                {
-                    if (guid.equals(relationship.getGUID()))
-                    {
-                        relationshipHistoryStore.remove(elementPosition);
-                        relationshipStore.put(guid, relationship);
-                        return relationship;
-                    }
-                }
-
-                elementPosition ++;
-            }
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Retrieve the previous version of an Entity from the history store and restore it in the entity store.
-     * This is the first instance of this element that appears in the history.
-     *
-     * @param guid - unique identifier for the required element
-     * @return - previous version of this Entity - or null if not found
-     */
-    protected EntityDetail retrievePreviousVersionOfEntity(String   guid)
-    {
-        if (guid != null)
-        {
-            int  elementPosition = 0;
-
-            for (EntityDetail entity : entityHistoryStore)
-            {
-                if (entity != null)
-                {
-                    if (guid.equals(entity.getGUID()))
-                    {
-                        entityHistoryStore.remove(elementPosition);
-                        entityStore.put(guid, entity);
-                        return entity;
-                    }
-                }
-
-                elementPosition ++;
-            }
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Remove an entity from the active store and add it to the history store.
-     *
-     * @param entity - entity to remove
-     */
-    protected void removeEntityFromStore(EntityDetail     entity)
-    {
-        entityStore.remove(entity.getGUID());
-        entityHistoryStore.add(0, entity);
-    }
-
-    /**
-     * Remove a reference entity from the active store and add it to the history store.
-     *
-     * @param guid - entity to remove
-     */
-    protected void removeReferenceEntityFromStore(String     guid)
-    {
-        EntityDetail entity = entityStore.remove(guid);
-
-        if (entity != null)
-        {
-            entityHistoryStore.add(0, entity);
-        }
-    }
-
-
-    /**
-     * Remove an entity from the active store and add it to the history store.
-     *
-     * @param guid - entity proxy to remove
-     */
-    protected void removeEntityProxyFromStore(String     guid)
-    {
-        entityProxyStore.remove(guid);
-    }
-
-
-    /**
-     * Remove a relationship from the active store and add it to the history store.
-     *
-     * @param relationship - relationship to remove
-     */
-    protected void removeRelationshipFromStore(Relationship     relationship)
-    {
-        relationshipStore.remove(relationship.getGUID());
-        relationshipHistoryStore.add(0, relationship);
-    }
-
-
-    /**
-     * Remove a reference relationship from the active store and add it to the history store.
-     *
-     * @param guid - relationship to remove
-     */
-    protected void removeReferenceRelationshipFromStore(String     guid)
-    {
-        Relationship  relationship = relationshipStore.remove(guid);
-
-        if (relationship != null)
-        {
-            relationshipHistoryStore.add(0, relationship);
-        }
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSRepositoryConnector.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSRepositoryConnector.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSRepositoryConnector.java
deleted file mode 100644
index b564027..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSRepositoryConnector.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.inmemory.repositoryconnector;
-
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-/**
- * The InMemoryOMRSRepositoryConnector is a connector to a local in memory repository.  It is used for test,
- * small scale fixed or temporary repositories where the initial content comes from open metadata archives and
- * other members of connected open metadata repository cohorts.
- */
-public class InMemoryOMRSRepositoryConnector extends OMRSRepositoryConnector
-{
-    /**
-     * Default constructor used by the OCF Connector Provider.
-     */
-    public InMemoryOMRSRepositoryConnector()
-    {
-        /*
-         * Nothing to do.
-         */
-    }
-
-
-    /**
-     * Set up the unique Id for this metadata collection.
-     *
-     * @param metadataCollectionId - String unique Id
-     */
-    public void setMetadataCollectionId(String     metadataCollectionId)
-    {
-        super.metadataCollectionId = metadataCollectionId;
-
-        if (metadataCollectionId != null)
-        {
-            /*
-             * Initialize the metadata collection only once the connector is properly set up.
-             */
-            super.metadataCollection = new InMemoryOMRSMetadataCollection(this,
-                                                                          super.serverName,
-                                                                          repositoryHelper,
-                                                                          repositoryValidator,
-                                                                          metadataCollectionId);
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSRepositoryConnectorProvider.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSRepositoryConnectorProvider.java b/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSRepositoryConnectorProvider.java
deleted file mode 100644
index 0b727e9..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/adapters/inmemory/repositoryconnector/InMemoryOMRSRepositoryConnectorProvider.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.adapters.inmemory.repositoryconnector;
-
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnectorProviderBase;
-
-/**
- * In the Open Connector Framework (OCF), a ConnectorProvider is a factory for a specific type of connector.
- * The InMemoryOMRSRepositoryConnectorProvider is the connector provider for the InMemoryOMRSRepositoryConnector.
- * It extends OMRSRepositoryConnectorProviderBase which in turn extends the OCF ConnectorProviderBase.
- * ConnectorProviderBase supports the creation of connector instances.
- *
- * The InMemoryOMRSRepositoryConnectorProvider must initialize ConnectorProviderBase with the Java class
- * name of the OMRS Connector implementation (by calling super.setConnectorClassName(className)).
- * Then the connector provider will work.
- */
-public class InMemoryOMRSRepositoryConnectorProvider
-        extends OMRSRepositoryConnectorProviderBase
-{
-    /**
-     * Constructor used to initialize the ConnectorProviderBase with the Java class name of the specific
-     * OMRS Connector implementation.
-     */
-    public InMemoryOMRSRepositoryConnectorProvider()
-    {
-        Class    connectorClass = InMemoryOMRSRepositoryConnector.class;
-
-        super.setConnectorClassName(connectorClass.getName());
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/admin/OMRSConfigurationFactory.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/admin/OMRSConfigurationFactory.java b/omrs/src/main/java/org/apache/atlas/omrs/admin/OMRSConfigurationFactory.java
deleted file mode 100644
index 7ae87c6..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/admin/OMRSConfigurationFactory.java
+++ /dev/null
@@ -1,870 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.admin;
-
-import org.apache.atlas.ocf.properties.ElementOrigin;
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.ocf.properties.beans.ConnectorType;
-import org.apache.atlas.ocf.properties.beans.Endpoint;
-import org.apache.atlas.ocf.properties.beans.ElementType;
-
-
-import org.apache.atlas.omrs.adapters.atlas.repositoryconnector.LocalAtlasOMRSRepositoryConnectorProvider;
-import org.apache.atlas.omrs.adapters.inmemory.repositoryconnector.InMemoryOMRSRepositoryConnectorProvider;
-import org.apache.atlas.omrs.admin.properties.*;
-import org.apache.atlas.omrs.archivemanager.store.file.FileBasedOpenMetadataArchiveStoreProvider;
-import org.apache.atlas.omrs.auditlog.store.file.FileBasedAuditLogStoreProvider;
-import org.apache.atlas.omrs.metadatahighway.cohortregistry.store.file.FileBasedRegistryStoreProvider;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-import org.apache.atlas.omrs.rest.repositoryconnector.OMRSRESTRepositoryConnectorProvider;
-import org.apache.atlas.omrs.topicconnectors.inmemory.InMemoryOMRSTopicProvider;
-import org.apache.atlas.omrs.topicconnectors.kafka.KafkaOMRSTopicProvider;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.UUID;
-
-
-/**
- * OMRSConfigurationFactory sets up default configuration for the OMRS components.  It is used by the OMAG server
- * while it manages the changes made to the server configuration by the server administrator.  The aim is to
- * build up the RepositoryServicesConfig object that is used to initialize the OMRSOperationalServices.
- */
-public class OMRSConfigurationFactory
-{
-    /*
-     * Default property fillers
-     */
-    private static final String defaultEnterpriseMetadataCollectionName = " Enterprise Metadata Collection";
-
-    private static final String defaultTopicRootName = "omag/omrs/";
-    private static final String defaultTopicLeafName = "/OMRSTopic";
-
-    private static final String defaultEnterpriseTopicConnectorRootName = "enterprise/";
-    private static final String defaultCohortTopicConnectorRootName     = "cohort/";
-
-    private static final String defaultCohortName = "defaultCohort";
-
-    private static final String defaultOpenMetadataArchiveFileName = "OpenMetadataTypes.json";
-
-    /**
-     * Default constructor
-     */
-    public OMRSConfigurationFactory()
-    {
-    }
-
-
-    /**
-     * Return the connection for the default audit log.
-     * By default, the Audit log is stored in a directory called localServerName.auditlog.
-     *
-     * @param localServerName - name of the local server
-     * @return OCF Connection used to create the file-based audit logger
-     */
-    private Connection getDefaultAuditLogConnection(String localServerName)
-    {
-        final String endpointGUID      = "836efeae-ab34-4425-89f0-6adf2faa1f2e";
-        final String connectorTypeGUID = "f8a24f09-9183-4d5c-8408-aa1c8852a7d6";
-        final String connectionGUID    = "5390bf3e-6b38-4eda-b34a-de55ac4252a7";
-
-        final String endpointDescription = "OMRS default audit log endpoint.";
-
-        String endpointAddress = localServerName + ".auditlog";
-        String endpointName    = "DefaultAuditLog.Endpoint." + endpointAddress;
-
-        Endpoint endpoint = new Endpoint();
-
-        endpoint.setType(this.getEndpointType());
-        endpoint.setGUID(endpointGUID);
-        endpoint.setQualifiedName(endpointName);
-        endpoint.setDisplayName(endpointName);
-        endpoint.setDescription(endpointDescription);
-        endpoint.setAddress(endpointAddress);
-
-        final String connectorTypeDescription   = "OMRS default audit log connector type.";
-        final String connectorTypeJavaClassName = FileBasedAuditLogStoreProvider.class.getName();
-
-        String connectorTypeName = "DefaultAuditLog.ConnectorType." + localServerName;
-
-        ConnectorType connectorType = new ConnectorType();
-
-        connectorType.setType(this.getConnectorTypeType());
-        connectorType.setGUID(connectorTypeGUID);
-        connectorType.setQualifiedName(connectorTypeName);
-        connectorType.setDisplayName(connectorTypeName);
-        connectorType.setDescription(connectorTypeDescription);
-        connectorType.setConnectorProviderClassName(connectorTypeJavaClassName);
-
-        final String connectionDescription = "OMRS default audit log connection.";
-
-        String connectionName = "DefaultAuditLog.Connection." + localServerName;
-
-        Connection connection = new Connection();
-
-        connection.setType(this.getConnectionType());
-        connection.setGUID(connectionGUID);
-        connection.setQualifiedName(connectionName);
-        connection.setDisplayName(connectionName);
-        connection.setDescription(connectionDescription);
-        connection.setEndpoint(endpoint);
-        connection.setConnectorType(connectorType);
-
-        return connection;
-    }
-
-
-    /**
-     * Return the connection for the default audit log.
-     * By default, the open metadata is stored in a file called localServerName.auditlog.
-     *
-     * @return OCF Connection used to create the file-based open metadata archive
-     */
-    public Connection getOpenMetadataTypesConnection()
-    {
-        final String endpointGUID      = "45877b9c-9192-44ba-a2b7-6817bc753969";
-        final String connectorTypeGUID = "86f52a17-5d3c-47fd-9cac-0b5a45d150a9";
-        final String connectionGUID    = "447bbb33-84f9-4a56-a712-addeebdcd764";
-
-        final String endpointDescription = "Open metadata types archive endpoint.";
-
-        String endpointAddress = defaultOpenMetadataArchiveFileName;
-        String endpointName    = "OpenMetadataTypes.Endpoint" + endpointAddress;
-
-        Endpoint endpoint = new Endpoint();
-
-        endpoint.setType(this.getEndpointType());
-        endpoint.setGUID(endpointGUID);
-        endpoint.setQualifiedName(endpointName);
-        endpoint.setDisplayName(endpointName);
-        endpoint.setDescription(endpointDescription);
-        endpoint.setAddress(endpointAddress);
-
-        final String connectorTypeDescription   = "Open metadata types archive connector type.";
-        final String connectorTypeJavaClassName = FileBasedOpenMetadataArchiveStoreProvider.class.getName();
-
-        String connectorTypeName = "OpenMetadataTypes.ConnectorType";
-
-        ConnectorType connectorType = new ConnectorType();
-
-        connectorType.setType(this.getConnectorTypeType());
-        connectorType.setGUID(connectorTypeGUID);
-        connectorType.setQualifiedName(connectorTypeName);
-        connectorType.setDisplayName(connectorTypeName);
-        connectorType.setDescription(connectorTypeDescription);
-        connectorType.setConnectorProviderClassName(connectorTypeJavaClassName);
-
-        final String connectionDescription = "Open metadata types archive connection.";
-
-        String connectionName = "OpenMetadataTypes.Connection";
-
-        Connection connection = new Connection();
-
-        connection.setType(this.getConnectionType());
-        connection.setGUID(connectionGUID);
-        connection.setQualifiedName(connectionName);
-        connection.setDisplayName(connectionName);
-        connection.setDescription(connectionDescription);
-        connection.setEndpoint(endpoint);
-        connection.setConnectorType(connectorType);
-
-        return connection;
-    }
-
-
-    /**
-     * Return the default local repository's local connection.  This is set to null which means use the remote
-     * connection.
-     *
-     * @return null Connection object
-     */
-    private Connection getDefaultLocalRepositoryLocalConnection()
-    {
-        return null;
-    }
-
-
-    /**
-     * Return the local graph repository's connection.  This is using the LocalAtlasOMRSRepositoryConnector.
-     *
-     * @param localServerName - name of the local server
-     * @return Connection object
-     */
-    private Connection getLocalGraphRepositoryLocalConnection(String localServerName)
-    {
-        final String connectorTypeGUID = "18530415-44a2-4bd0-95bb-8efd333e53fb";
-        final String connectionGUID    = "3f1fd4fc-90f9-436a-8e2c-2120d590f5e4";
-
-        final String connectorTypeDescription   = "OMRS default graph local repository connector type.";
-        final String connectorTypeJavaClassName = LocalAtlasOMRSRepositoryConnectorProvider.class.getName();
-
-        String connectorTypeName = "DefaultLocalGraphRepository.ConnectorType." + localServerName;
-
-        ConnectorType connectorType = new ConnectorType();
-
-        connectorType.setType(this.getConnectorTypeType());
-        connectorType.setGUID(connectorTypeGUID);
-        connectorType.setQualifiedName(connectorTypeName);
-        connectorType.setDisplayName(connectorTypeName);
-        connectorType.setDescription(connectorTypeDescription);
-        connectorType.setConnectorProviderClassName(connectorTypeJavaClassName);
-
-
-        final String connectionDescription = "OMRS default local graph repository connection.";
-
-        String connectionName = "DefaultLocalGraphRepository.Connection." + localServerName;
-
-        Connection connection = new Connection();
-
-        connection.setType(this.getConnectionType());
-        connection.setGUID(connectionGUID);
-        connection.setQualifiedName(connectionName);
-        connection.setDisplayName(connectionName);
-        connection.setDescription(connectionDescription);
-        connection.setConnectorType(connectorType);
-
-        return connection;
-    }
-
-
-    /**
-     * Return the in-memory local repository connection.  This is using the InMemoryOMRSRepositoryConnector.
-     *
-     * @param localServerName - name of the local server
-     * @return Connection object
-     */
-    private Connection getInMemoryLocalRepositoryLocalConnection(String localServerName)
-    {
-        final String connectorTypeGUID = "21422eb9-c6c1-4071-b96b-0572c9680260";
-        final String connectionGUID    = "6a3c07b0-0e04-42dc-bcc6-392609bf1d02";
-
-        final String connectorTypeDescription   = "OMRS default in memory local repository connector type.";
-        final String connectorTypeJavaClassName = InMemoryOMRSRepositoryConnectorProvider.class.getName();
-
-        String connectorTypeName = "DefaultInMemoryRepository.ConnectorType." + localServerName;
-
-        ConnectorType connectorType = new ConnectorType();
-
-        connectorType.setType(this.getConnectorTypeType());
-        connectorType.setGUID(connectorTypeGUID);
-        connectorType.setQualifiedName(connectorTypeName);
-        connectorType.setDisplayName(connectorTypeName);
-        connectorType.setDescription(connectorTypeDescription);
-        connectorType.setConnectorProviderClassName(connectorTypeJavaClassName);
-
-
-        final String connectionDescription = "OMRS default in memory local repository connection.";
-
-        String connectionName = "DefaultInMemoryRepository.Connection." + localServerName;
-
-        Connection connection = new Connection();
-
-        connection.setType(this.getConnectionType());
-        connection.setGUID(connectionGUID);
-        connection.setQualifiedName(connectionName);
-        connection.setDisplayName(connectionName);
-        connection.setDescription(connectionDescription);
-        connection.setConnectorType(connectorType);
-
-        return connection;
-    }
-
-
-    /**
-     * Return the Connection for this server's OMRS Repository REST API.  If the localServerURL is
-     * something like localhost:8080/omag/localServerName and the REST API URL would be
-     * localhost:8080/omag/localServerName/omrs/metadatacollection.
-     *
-     * @param localServerName - name of the local server
-     * @param localServerURL - root of the local server's URL
-     * @return Connection object
-     */
-    private  Connection getDefaultLocalRepositoryRemoteConnection(String localServerName,
-                                                                 String localServerURL)
-    {
-        final String endpointGUID      = "cee85898-43aa-4af5-9bbd-2bed809d1acb";
-        final String connectorTypeGUID = "64e67923-8190-45ea-8f96-39320d638c02";
-        final String connectionGUID    = "858be98b-49d2-4ccf-9b23-01085a5f473f";
-
-        final String endpointDescription = "OMRS default repository REST API endpoint.";
-
-        String endpointAddress = localServerURL + "/omag/omrs/";
-        String endpointName    = "DefaultRepositoryRESTAPI.Endpoint." + localServerName;
-
-        Endpoint endpoint = new Endpoint();
-
-        endpoint.setType(this.getEndpointType());
-        endpoint.setGUID(endpointGUID);
-        endpoint.setQualifiedName(endpointName);
-        endpoint.setDisplayName(endpointName);
-        endpoint.setDescription(endpointDescription);
-        endpoint.setAddress(endpointAddress);
-
-        final String connectorTypeDescription   = "OMRS default repository REST API connector type.";
-        final String connectorTypeJavaClassName = OMRSRESTRepositoryConnectorProvider.class.getName();
-
-        String connectorTypeName = "DefaultRepositoryRESTAPI.ConnectorType." + localServerName;
-
-        ConnectorType connectorType = new ConnectorType();
-
-        connectorType.setType(this.getConnectorTypeType());
-        connectorType.setGUID(connectorTypeGUID);
-        connectorType.setQualifiedName(connectorTypeName);
-        connectorType.setDisplayName(connectorTypeName);
-        connectorType.setDescription(connectorTypeDescription);
-        connectorType.setConnectorProviderClassName(connectorTypeJavaClassName);
-
-
-        final String connectionDescription = "OMRS default repository REST API connection.";
-
-        String connectionName = "DefaultRepositoryRESTAPI.Connection." + localServerName;
-
-        Connection connection = new Connection();
-
-        connection.setType(this.getConnectionType());
-        connection.setGUID(connectionGUID);
-        connection.setQualifiedName(connectionName);
-        connection.setDisplayName(connectionName);
-        connection.setDescription(connectionDescription);
-        connection.setEndpoint(endpoint);
-        connection.setConnectorType(connectorType);
-
-        return connection;
-    }
-
-
-    /**
-     * Return the default local repository event mapper.  This is null since the use of, or need for, the event mapper
-     * is determined by the type of local repository.
-     *
-     * @return null Connection object
-     */
-    private Connection getDefaultEventMapperConnection()
-    {
-        return null;
-    }
-
-
-    /**
-     * Return the default connection for the enterprise OMRS topic.  This uses a Kafka topic called
-     * omag/omrs/enterprise/localServerName/OMRSTopic.
-     *
-     * @param localServerName - name of local server
-     * @return Connection object
-     */
-    private Connection getDefaultEnterpriseOMRSTopicConnection(String localServerName)
-    {
-        final String endpointGUID      = "e0d88035-8522-42bc-b57f-06df05f15825";
-        final String connectorTypeGUID = "6536cb46-61f0-4f2d-abb4-2dadede30520";
-        final String connectionGUID    = "2084ee90-717b-49a1-938e-8f9d49567b8e";
-
-        final String endpointDescription = "OMRS default enterprise topic endpoint.";
-
-        String endpointAddress = defaultTopicRootName + defaultEnterpriseTopicConnectorRootName + localServerName + defaultTopicLeafName;
-        String endpointName    = "DefaultEnterpriseTopic.Endpoint." + endpointAddress;
-
-        Endpoint endpoint = new Endpoint();
-
-        endpoint.setType(this.getEndpointType());
-        endpoint.setGUID(endpointGUID);
-        endpoint.setQualifiedName(endpointName);
-        endpoint.setDisplayName(endpointName);
-        endpoint.setDescription(endpointDescription);
-        endpoint.setAddress(endpointAddress);
-
-
-        final String connectorTypeDescription   = "OMRS default enterprise connector type.";
-        final String connectorTypeJavaClassName = InMemoryOMRSTopicProvider.class.getName();
-
-        String connectorTypeName = "DefaultEnterpriseTopic.ConnectorType." + localServerName;
-
-        ConnectorType connectorType = new ConnectorType();
-
-        connectorType.setType(this.getConnectorTypeType());
-        connectorType.setGUID(connectorTypeGUID);
-        connectorType.setQualifiedName(connectorTypeName);
-        connectorType.setDisplayName(connectorTypeName);
-        connectorType.setDescription(connectorTypeDescription);
-        connectorType.setConnectorProviderClassName(connectorTypeJavaClassName);
-
-
-        final String connectionDescription = "OMRS default enterprise topic connection.";
-
-        String connectionName = "DefaultEnterpriseTopic.Connection." + localServerName;
-
-        Connection connection = new Connection();
-
-        connection.setType(this.getConnectionType());
-        connection.setGUID(connectionGUID);
-        connection.setQualifiedName(connectionName);
-        connection.setDisplayName(connectionName);
-        connection.setDescription(connectionDescription);
-        connection.setEndpoint(endpoint);
-        connection.setConnectorType(connectorType);
-
-        return connection;
-    }
-
-
-    /**
-     * Return the connection for the OMRS topic for the named cohort.
-     *
-     * @param cohortName - name of the cohort
-     * @return Connection object
-     */
-    private Connection getDefaultCohortOMRSTopicConnection(String cohortName)
-    {
-        final String endpointGUID      = "dca783a1-d5f9-44a8-b838-4de4d016303d";
-        final String connectorTypeGUID = "32843dd8-2597-4296-831c-674af0d8b837";
-        final String connectionGUID    = "023bb1f3-03dd-47ae-b3bc-dce62e9c11cb";
-
-        final String endpointDescription = "OMRS default cohort topic endpoint.";
-
-        String endpointAddress = defaultTopicRootName + defaultCohortTopicConnectorRootName + cohortName + defaultTopicLeafName;
-        String endpointName    = "DefaultCohortTopic.Endpoint." + endpointAddress;
-
-        Endpoint endpoint = new Endpoint();
-
-        endpoint.setType(this.getEndpointType());
-        endpoint.setGUID(endpointGUID);
-        endpoint.setQualifiedName(endpointName);
-        endpoint.setDisplayName(endpointName);
-        endpoint.setDescription(endpointDescription);
-        endpoint.setAddress(endpointAddress);
-
-
-        final String connectorTypeDescription   = "OMRS default cohort topic connector type.";
-        final String connectorTypeJavaClassName = KafkaOMRSTopicProvider.class.getName();
-
-        String connectorTypeName = "DefaultCohortTopic.ConnectorType." + cohortName;
-
-        ConnectorType connectorType = new ConnectorType();
-
-        connectorType.setType(this.getConnectorTypeType());
-        connectorType.setGUID(connectorTypeGUID);
-        connectorType.setQualifiedName(connectorTypeName);
-        connectorType.setDisplayName(connectorTypeName);
-        connectorType.setDescription(connectorTypeDescription);
-        connectorType.setConnectorProviderClassName(connectorTypeJavaClassName);
-
-
-        final String connectionDescription = "OMRS default cohort topic connection.";
-
-        String connectionName = "DefaultCohortTopic.Connection." + cohortName;
-
-        Connection connection = new Connection();
-
-        connection.setType(this.getConnectionType());
-        connection.setGUID(connectionGUID);
-        connection.setQualifiedName(connectionName);
-        connection.setDisplayName(connectionName);
-        connection.setDescription(connectionDescription);
-        connection.setEndpoint(endpoint);
-        connection.setConnectorType(connectorType);
-
-        return connection;
-    }
-
-
-    /**
-     * Return the connection to the default registry store called localServerName.cohortName.registrystore.
-     *
-     * @param localServerName - name of the local server
-     * @param cohortName - name of the cohort
-     * @return Connection object
-     */
-    private Connection getDefaultCohortRegistryConnection(String localServerName, String cohortName)
-    {
-        final String endpointGUID      = "8bf8f5fa-b5d8-40e1-a00e-e4a0c59fd6c0";
-        final String connectorTypeGUID = "2e1556a3-908f-4303-812d-d81b48b19bab";
-        final String connectionGUID    = "b9af734f-f005-4085-9975-bf46c67a099a";
-
-        final String endpointDescription = "OMRS default cohort registry endpoint.";
-
-        String endpointAddress = localServerName + "." + cohortName + ".registrystore";
-        String endpointName    = "DefaultCohortRegistry.Endpoint." + endpointAddress;
-
-        Endpoint endpoint = new Endpoint();
-
-        endpoint.setType(this.getEndpointType());
-        endpoint.setGUID(endpointGUID);
-        endpoint.setQualifiedName(endpointName);
-        endpoint.setDisplayName(endpointName);
-        endpoint.setDescription(endpointDescription);
-        endpoint.setAddress(endpointAddress);
-
-
-        final String connectorTypeDescription   = "OMRS default cohort registry connector type.";
-        final String connectorTypeJavaClassName = FileBasedRegistryStoreProvider.class.getName();
-
-        String connectorTypeName = "DefaultCohortRegistry.ConnectorType." + localServerName + "." + cohortName;
-
-        ConnectorType connectorType = new ConnectorType();
-
-        connectorType.setType(this.getConnectorTypeType());
-        connectorType.setGUID(connectorTypeGUID);
-        connectorType.setQualifiedName(connectorTypeName);
-        connectorType.setDisplayName(connectorTypeName);
-        connectorType.setDescription(connectorTypeDescription);
-        connectorType.setConnectorProviderClassName(connectorTypeJavaClassName);
-
-
-        final String connectionDescription = "OMRS default cohort registry connection.";
-
-        String connectionName = "DefaultCohortRegistry.Connection." + localServerName + "." + cohortName;
-
-        Connection connection = new Connection();
-
-        connection.setType(this.getConnectionType());
-        connection.setGUID(connectionGUID);
-        connection.setQualifiedName(connectionName);
-        connection.setDisplayName(connectionName);
-        connection.setDescription(connectionDescription);
-        connection.setEndpoint(endpoint);
-        connection.setConnectorType(connectorType);
-
-        return connection;
-    }
-
-
-    /**
-     * Return the protocol level to use for communications with local open metadata access services through the open metadata
-     * enterprise repository services.
-     *
-     * @return protocol version
-     */
-    private OpenMetadataEventProtocolVersion getDefaultEnterpriseOMRSTopicProtocolVersion()
-    {
-        return OpenMetadataEventProtocolVersion.V1;
-    }
-
-
-    /**
-     * Return the protocol level to use for communications with other members of the open metadata repository cohort.
-     *
-     * @return protocol version
-     */
-    private OpenMetadataEventProtocolVersion getDefaultCohortOMRSTopicProtocolVersion()
-    {
-        return OpenMetadataEventProtocolVersion.V1;
-    }
-
-
-    /**
-     * Return the exchange rule set so that events for all local repository changes are sent.
-     *
-     * @return exchange rule
-     */
-    private OpenMetadataExchangeRule getDefaultEventsToSendRule()
-    {
-        return OpenMetadataExchangeRule.ALL;
-    }
-
-
-    /**
-     * Return the default list of types to send as a null because the exchange rule above is set to ALL.
-     *
-     * @return null array list
-     */
-    private ArrayList<TypeDefSummary> getDefaultSelectedTypesToSend()
-    {
-        return null;
-    }
-
-
-    /**
-     * Return the exchange rule set so that all received events are saved.
-     *
-     * @return exchange rule
-     */
-    private OpenMetadataExchangeRule getDefaultEventsToSaveRule()
-    {
-        return OpenMetadataExchangeRule.ALL;
-    }
-
-
-    /**
-     * Return the default list of types to save as a null because the exchange rule above is set to ALL.
-     *
-     * @return null array list
-     */
-    private ArrayList<TypeDefSummary> getDefaultSelectedTypesToSave()
-    {
-        return null;
-    }
-
-
-    /**
-     * Return the exchange rule set so that all incoming events are processed.
-     *
-     * @return exchange rule
-     */
-    private OpenMetadataExchangeRule getDefaultEventsToProcessRule()
-    {
-        return OpenMetadataExchangeRule.ALL;
-    }
-
-
-    /**
-     * Return the default list of types to process as a null because the exchange rule above is set to ALL.
-     *
-     * @return null array list
-     */
-    private ArrayList<TypeDefSummary> getDefaultSelectedTypesToProcess()
-    {
-        return null;
-    }
-
-
-    /**
-     * Returns the basic configuration for a local repository.
-     *
-     * @param localServerName - name of the local server
-     * @param localServerURL - URL root of local server used for REST calls
-     * @return LocalRepositoryConfig object
-     */
-    private LocalRepositoryConfig getDefaultLocalRepositoryConfig(String localServerName,
-                                                                  String localServerURL)
-    {
-        LocalRepositoryConfig localRepositoryConfig = new LocalRepositoryConfig();
-
-        localRepositoryConfig.setMetadataCollectionId(UUID.randomUUID().toString());
-        localRepositoryConfig.setLocalRepositoryLocalConnection(this.getDefaultLocalRepositoryLocalConnection());
-        localRepositoryConfig.setLocalRepositoryRemoteConnection(this.getDefaultLocalRepositoryRemoteConnection(
-                localServerName,
-                localServerURL));
-        localRepositoryConfig.setEventsToSaveRule(this.getDefaultEventsToSaveRule());
-        localRepositoryConfig.setSelectedTypesToSave(this.getDefaultSelectedTypesToSave());
-        localRepositoryConfig.setEventsToSendRule(this.getDefaultEventsToSendRule());
-        localRepositoryConfig.setSelectedTypesToSend(this.getDefaultSelectedTypesToSend());
-        localRepositoryConfig.setEventMapperConnection(this.getDefaultEventMapperConnection());
-
-        return localRepositoryConfig;
-    }
-
-
-    /**
-     * Return the configuration for an in-memory local repository.
-     *
-     * @param localServerName - name of the local server
-     * @param localServerURL  - URL root of local server used for REST calls
-     * @return LocalRepositoryConfig object
-     */
-    public LocalRepositoryConfig getInMemoryLocalRepositoryConfig(String localServerName, String localServerURL)
-    {
-        LocalRepositoryConfig localRepositoryConfig = this.getDefaultLocalRepositoryConfig(localServerName,
-                                                                                           localServerURL);
-
-        localRepositoryConfig.setLocalRepositoryLocalConnection(this.getInMemoryLocalRepositoryLocalConnection(
-                localServerName));
-
-        return localRepositoryConfig;
-    }
-
-
-    /**
-     * Return the configuration for a local repository that is using the built-in graph repository.
-     *
-     * @param localServerName - name of local server
-     * @param localServerURL  - URL root of local server used for REST calls
-     * @return LocalRepositoryConfig object
-     */
-    public LocalRepositoryConfig getLocalGraphLocalRepositoryConfig(String localServerName, String localServerURL)
-    {
-        LocalRepositoryConfig localRepositoryConfig = this.getDefaultLocalRepositoryConfig(localServerName,
-                                                                                           localServerURL);
-
-        localRepositoryConfig.setLocalRepositoryLocalConnection(this.getLocalGraphRepositoryLocalConnection(
-                localServerName));
-
-        return localRepositoryConfig;
-    }
-
-
-    /**
-     * Return the local repository configuration for a repository proxy.
-     *
-     * @param localServerName - name of local server
-     * @param localServerURL - url used to call local server
-     * @return LocalRepositoryConfig object
-     */
-    public LocalRepositoryConfig getRepositoryProxyLocalRepositoryConfig(String localServerName, String localServerURL)
-    {
-        LocalRepositoryConfig localRepositoryConfig = this.getDefaultLocalRepositoryConfig(localServerName,
-                                                                                           localServerURL);
-
-        localRepositoryConfig.setLocalRepositoryLocalConnection(null);
-
-        return localRepositoryConfig;
-    }
-
-
-    /**
-     * Return the default settings for the enterprise repository services' configuration.
-     *
-     * @param localServerName - name of the local server
-     * @return EnterpriseAccessConfig parameters
-     */
-    public EnterpriseAccessConfig getDefaultEnterpriseAccessConfig(String localServerName)
-    {
-        EnterpriseAccessConfig enterpriseAccessConfig = new EnterpriseAccessConfig();
-
-        enterpriseAccessConfig.setEnterpriseMetadataCollectionId(UUID.randomUUID().toString());
-        enterpriseAccessConfig.setEnterpriseMetadataCollectionName(localServerName + defaultEnterpriseMetadataCollectionName);
-        enterpriseAccessConfig.setEnterpriseOMRSTopicConnection(this.getDefaultEnterpriseOMRSTopicConnection(
-                localServerName));
-        enterpriseAccessConfig.setEnterpriseOMRSTopicProtocolVersion(this.getDefaultEnterpriseOMRSTopicProtocolVersion());
-
-        return enterpriseAccessConfig;
-    }
-
-
-    /**
-     * Return a CohortConfig object that is pre-configured with default values.
-     *
-     * @param localServerName - name of the local server
-     * @param cohortName      - name of the cohort
-     * @return default values in a CohortConfig object
-     */
-    public CohortConfig getDefaultCohortConfig(String localServerName, String cohortName)
-    {
-        CohortConfig cohortConfig  = new CohortConfig();
-        String       newCohortName = defaultCohortName;
-
-        if (cohortName != null)
-        {
-            newCohortName = cohortName;
-        }
-
-        cohortConfig.setCohortName(newCohortName);
-        cohortConfig.setCohortRegistryConnection(this.getDefaultCohortRegistryConnection(localServerName, newCohortName));
-        cohortConfig.setCohortOMRSTopicConnection(this.getDefaultCohortOMRSTopicConnection(newCohortName));
-        cohortConfig.setCohortOMRSTopicProtocolVersion(this.getDefaultCohortOMRSTopicProtocolVersion());
-        cohortConfig.setEventsToProcessRule(this.getDefaultEventsToProcessRule());
-        cohortConfig.setSelectedTypesToProcess(this.getDefaultSelectedTypesToProcess());
-
-        return cohortConfig;
-    }
-
-
-    /**
-     * Returns a repository services config with the audit log set up.
-     *
-     * @param localServerName - name of the local server
-     * @return minimally configured repository services config
-     */
-    public RepositoryServicesConfig getDefaultRepositoryServicesConfig(String localServerName)
-    {
-        RepositoryServicesConfig repositoryServicesConfig = new RepositoryServicesConfig();
-
-        List<Connection>   auditLogStoreConnections = new ArrayList<>();
-
-        auditLogStoreConnections.add(this.getDefaultAuditLogConnection(localServerName));
-
-        repositoryServicesConfig.setAuditLogConnections(auditLogStoreConnections);
-
-        return repositoryServicesConfig;
-    }
-
-
-    /**
-     * Return the standard type for an endpoint.
-     *
-     * @return ElementType object
-     */
-    public ElementType getEndpointType()
-    {
-        final String        elementTypeId                   = "dbc20663-d705-4ff0-8424-80c262c6b8e7";
-        final String        elementTypeName                 = "Endpoint";
-        final long          elementTypeVersion              = 1;
-        final String        elementTypeDescription          = "Description of the network address and related information needed to call a software service.";
-        final String        elementAccessServiceURL         = null;
-        final ElementOrigin elementOrigin                   = ElementOrigin.LOCAL_COHORT;
-        final String        elementHomeMetadataCollectionId = null;
-
-        ElementType elementType = new ElementType();
-
-        elementType.setElementTypeId(elementTypeId);
-        elementType.setElementTypeName(elementTypeName);
-        elementType.setElementTypeVersion(elementTypeVersion);
-        elementType.setElementTypeDescription(elementTypeDescription);
-        elementType.setElementAccessServiceURL(elementAccessServiceURL);
-        elementType.setElementOrigin(elementOrigin);
-        elementType.setElementHomeMetadataCollectionId(elementHomeMetadataCollectionId);
-
-        return elementType;
-    }
-
-
-    /**
-     * Return the standard type for a connector type.
-     *
-     * @return ElementType object
-     */
-    public ElementType getConnectorTypeType()
-    {
-        final String        elementTypeId                   = "954421eb-33a6-462d-a8ca-b5709a1bd0d4";
-        final String        elementTypeName                 = "ConnectorType";
-        final long          elementTypeVersion              = 1;
-        final String        elementTypeDescription          = "A set of properties describing a type of connector.";
-        final String        elementAccessServiceURL         = null;
-        final ElementOrigin elementOrigin                   = ElementOrigin.LOCAL_COHORT;
-        final String        elementHomeMetadataCollectionId = null;
-
-        ElementType elementType = new ElementType();
-
-        elementType.setElementTypeId(elementTypeId);
-        elementType.setElementTypeName(elementTypeName);
-        elementType.setElementTypeVersion(elementTypeVersion);
-        elementType.setElementTypeDescription(elementTypeDescription);
-        elementType.setElementAccessServiceURL(elementAccessServiceURL);
-        elementType.setElementOrigin(elementOrigin);
-        elementType.setElementHomeMetadataCollectionId(elementHomeMetadataCollectionId);
-
-        return elementType;
-    }
-
-
-    /**
-     * Return the standard type for a connection type.
-     *
-     * @return ElementType object
-     */
-    public ElementType getConnectionType()
-    {
-        final String        elementTypeId                   = "114e9f8f-5ff3-4c32-bd37-a7eb42712253";
-        final String        elementTypeName                 = "Connection";
-        final long          elementTypeVersion              = 1;
-        final String        elementTypeDescription          = "A set of properties to identify and configure a connector instance.";
-        final String        elementAccessServiceURL         = null;
-        final ElementOrigin elementOrigin                   = ElementOrigin.LOCAL_COHORT;
-        final String        elementHomeMetadataCollectionId = null;
-
-        ElementType elementType = new ElementType();
-
-        elementType.setElementTypeId(elementTypeId);
-        elementType.setElementTypeName(elementTypeName);
-        elementType.setElementTypeVersion(elementTypeVersion);
-        elementType.setElementTypeDescription(elementTypeDescription);
-        elementType.setElementAccessServiceURL(elementAccessServiceURL);
-        elementType.setElementOrigin(elementOrigin);
-        elementType.setElementHomeMetadataCollectionId(elementHomeMetadataCollectionId);
-
-        return elementType;
-    }
-}


[25/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/opentypes/OpenMetadataTypesArchive.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/opentypes/OpenMetadataTypesArchive.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/opentypes/OpenMetadataTypesArchive.java
deleted file mode 100644
index 3fe4d34..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/opentypes/OpenMetadataTypesArchive.java
+++ /dev/null
@@ -1,17114 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omrs.archivemanager.opentypes;
-
-
-import org.apache.atlas.omrs.archivemanager.OMRSArchiveBuilder;
-import org.apache.atlas.omrs.archivemanager.OMRSArchiveHelper;
-import org.apache.atlas.omrs.archivemanager.properties.OpenMetadataArchive;
-import org.apache.atlas.omrs.archivemanager.properties.OpenMetadataArchiveType;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.OMRSLogicErrorException;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.*;
-
-import java.util.ArrayList;
-import java.util.Date;
-
-/**
- * OpenMetadataTypesArchive builds an open metadata archive containing all of the standard open metadata types.
- * These types have hardcoded dates and guids so that however many times this archive is rebuilt, it will
- * produce the same content.
- * <p>
- * Details of the open metadata types are documented on the wiki:
- * <a href="https://cwiki.apache.org/confluence/display/ATLAS/Building+out+the+Open+Metadata+Typesystem">Building out the Open Metadata Typesystem</a>
- * </p>
- * <p>
- * There are 8 areas, each covering a different topic area of metadata.  The module breaks down the process of creating
- * the models into the areas and then the individual models to simplify the maintenance of this class
- * </p>
- */
-public class OpenMetadataTypesArchive
-{
-    /*
-     * This is the header information for the archive.
-     */
-    private static final String                  archiveGUID        = "bce3b0a0-662a-4f87-b8dc-844078a11a6e";
-    private static final String                  archiveName        = "Open Metadata Types";
-    private static final String                  archiveDescription = "Standard types for open metadata repositories.";
-    private static final OpenMetadataArchiveType archiveType        = OpenMetadataArchiveType.CONTENT_PACK;
-    private static final String                  originatorName     = "Apache Atlas (OMRS)";
-    private static final Date                    creationDate       = new Date(1516313040008L);
-
-    /*
-     * Specific values for initializing TypeDefs
-     */
-    private static final long   versionNumber = 1L;
-    private static final String versionName   = "1.0";
-
-
-    private OMRSArchiveBuilder archiveBuilder;
-    private OMRSArchiveHelper  archiveHelper;
-
-
-    /**
-     * Default constructor sets up the archive builder.  This in turn sets up the header for the archive.
-     */
-    public OpenMetadataTypesArchive()
-    {
-        this.archiveBuilder = new OMRSArchiveBuilder(archiveGUID,
-                                                     archiveName,
-                                                     archiveDescription,
-                                                     archiveType,
-                                                     originatorName,
-                                                     creationDate,
-                                                     null);
-
-        this.archiveHelper = new OMRSArchiveHelper(archiveBuilder,
-                                                   archiveGUID,
-                                                   originatorName,
-                                                   creationDate,
-                                                   versionNumber,
-                                                   versionName);
-    }
-
-
-    /**
-     * Return the unique identifier for this archive.
-     *
-     * @return String guid
-     */
-    public String getArchiveGUID()
-    {
-        return archiveGUID;
-    }
-
-    /**
-     * Returns the open metadata type archive containing all of the standard open metadata types.
-     *
-     * @return populated open metadata archive object
-     */
-    public OpenMetadataArchive getOpenMetadataArchive()
-    {
-        final String methodName = "getOpenMetadataArchive()";
-
-        if (this.archiveBuilder != null)
-        {
-            /*
-             * Call each of the methods to systematically add the contents of the archive.
-             */
-            this.addStandardPrimitiveDefs();
-            this.addStandardCollectionDefs();
-            this.addArea0Types();
-            this.addArea1Types();
-            this.addArea2Types();
-            this.addArea3Types();
-            this.addArea4Types();
-            this.addArea5Types();
-            this.addArea6Types();
-            this.addArea7Types();
-
-            /*
-             * The completed archive is ready to be packaged up and returned
-             */
-            return this.archiveBuilder.getOpenMetadataArchive();
-        }
-        else
-        {
-            /*
-             * This is a logic error since it means the creation of the archive builder threw an exception
-             * in the constructor and so this object should not be used.
-             */
-            OMRSErrorCode errorCode    = OMRSErrorCode.ARCHIVE_UNAVAILABLE;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-
-
-    /*
-     * ========================================
-     * Attribute types
-     */
-
-
-    /**
-     * Add the standard primitive types to the archive builder.
-     */
-    private void addStandardPrimitiveDefs()
-    {
-        this.archiveBuilder.addPrimitiveDef(archiveHelper.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_UNKNOWN));
-        this.archiveBuilder.addPrimitiveDef(archiveHelper.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_BOOLEAN));
-        this.archiveBuilder.addPrimitiveDef(archiveHelper.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_BYTE));
-        this.archiveBuilder.addPrimitiveDef(archiveHelper.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_CHAR));
-        this.archiveBuilder.addPrimitiveDef(archiveHelper.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_SHORT));
-        this.archiveBuilder.addPrimitiveDef(archiveHelper.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_INT));
-        this.archiveBuilder.addPrimitiveDef(archiveHelper.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_LONG));
-        this.archiveBuilder.addPrimitiveDef(archiveHelper.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_FLOAT));
-        this.archiveBuilder.addPrimitiveDef(archiveHelper.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_DOUBLE));
-        this.archiveBuilder.addPrimitiveDef(archiveHelper.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_BIGINTEGER));
-        this.archiveBuilder.addPrimitiveDef(archiveHelper.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_BIGDECIMAL));
-        this.archiveBuilder.addPrimitiveDef(archiveHelper.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_STRING));
-        this.archiveBuilder.addPrimitiveDef(archiveHelper.getPrimitiveDef(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_DATE));
-    }
-
-
-    /**
-     * Add the standard collection types to the archive builder.
-     */
-    private void addStandardCollectionDefs()
-    {
-        this.archiveBuilder.addCollectionDef(getMapStringStringCollectionDef());
-        this.archiveBuilder.addCollectionDef(getArrayStringCollectionDef());
-
-    }
-
-
-    /**
-     * Defines the "map<string,string>" type.
-     *
-     * @return CollectionDef for this type
-     */
-    private CollectionDef getMapStringStringCollectionDef()
-    {
-        final String guid            = "005c7c14-ac84-4136-beed-959401b041f8";
-        final String description     = "A map from String to String.";
-        final String descriptionGUID = null;
-
-        return archiveHelper.getMapCollectionDef(guid,
-                                                 description,
-                                                 descriptionGUID,
-                                                 PrimitiveDefCategory.OM_PRIMITIVE_TYPE_STRING,
-                                                 PrimitiveDefCategory.OM_PRIMITIVE_TYPE_STRING);
-    }
-
-
-    /**
-     * Define the "array<string>" type.
-     *
-     * @return CollectionDef for this object
-     */
-    private CollectionDef getArrayStringCollectionDef()
-    {
-        final String guid            = "0428b5d3-f824-459c-b7f5-f8151de59707";
-        final String description     = "An array of Strings.";
-        final String descriptionGUID = null;
-
-        return archiveHelper.getArrayCollectionDef(guid,
-                                                   description,
-                                                   descriptionGUID,
-                                                   PrimitiveDefCategory.OM_PRIMITIVE_TYPE_STRING);
-    }
-
-
-
-
-    /*
-     * ========================================
-     * AREA 0 - common types and infrastructure
-     */
-
-    /**
-     * Add the list of area 0 types
-     */
-    private void addArea0Types()
-    {
-        this.add0010BaseModel();
-        this.add0015LinkedMediaTypes();
-        this.add0017ExternalIdentifiers();
-        this.add0020PropertyFacets();
-        this.add0025Locations();
-        this.add0030HostsAndPlatforms();
-        this.add0035ComplexHosts();
-        this.add0040SoftwareServers();
-        this.add0045ServersAndAssets();
-        this.add0070NetworksAndGateways();
-        this.add0090CloudPlatformsAndServices();
-    }
-
-    /*
-     * -------------------------------------------------------------------------------------------------------
-     */
-
-    /**
-     * 0010 Base Model defines the core entities that have been inherited from the original Apache Atlas model.
-     * It defines an initial set of asset types that need to be governed (more assets are defined in Area 2).
-     */
-    private void add0010BaseModel()
-    {
-        this.archiveBuilder.addEntityDef(getReferenceableEntity());
-        this.archiveBuilder.addEntityDef(getAssetEntity());
-        this.archiveBuilder.addEntityDef(getInfrastructureEntity());
-        this.archiveBuilder.addEntityDef(getProcessEntity());
-        this.archiveBuilder.addEntityDef(getDataSetEntity());
-
-        this.archiveBuilder.addRelationshipDef(getProcessInputRelationship());
-        this.archiveBuilder.addRelationshipDef(getProcessOutputRelationship());
-    }
-
-
-    /**
-     * The Referenceable entity is the superclass of all of the governed open metadata entities.  It specifies that
-     * these entities have a unique identifier called "qualifiedName".
-     *
-     * @return Referenceable EntityDef
-     */
-    private EntityDef getReferenceableEntity()
-    {
-        /*
-         * Build the Entity
-         */
-        final String guid            = "a32316b8-dc8c-48c5-b12b-71c1b2a080bf";
-        final String name            = "Referenceable";
-        final String description     = "An open metadata entity that has a unique identifier.";
-        final String descriptionGUID = null;
-
-        EntityDef entityDef = archiveHelper.getDefaultEntityDef(guid,
-                                                                name,
-                                                                null,
-                                                                description,
-                                                                descriptionGUID);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "qualifiedName";
-        final String attribute1Description     = "Unique identifier for the entity.";
-        final String attribute1DescriptionGUID = null;
-        final String attribute2Name            = "additionalProperties";
-        final String attribute2Description     = "Additional properties for the element.";
-        final String attribute2DescriptionGUID = null;
-
-        property = archiveHelper.getStringTypeDefAttribute(attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        property.setUnique(true);
-        properties.add(property);
-        property = archiveHelper.getMapStringStringTypeDefAttribute(attribute2Name, attribute2Description, attribute2DescriptionGUID);
-        properties.add(property);
-
-        entityDef.setPropertiesDefinition(properties);
-
-        return entityDef;
-    }
-
-
-    /**
-     * The Asset entity is the root entity for the assets that open metadata and governance is governing.
-     *
-     * @return Asset EntityDef
-     */
-    private EntityDef getAssetEntity()
-    {
-        /*
-         * Build the Entity
-         */
-        final String guid            = "896d14c2-7522-4f6c-8519-757711943fe6";
-        final String name            = "Asset";
-        final String description     = "The description of an asset that needs to be catalogued and governed.";
-        final String descriptionGUID = null;
-        final String superTypeName   = "Referenceable";
-
-        EntityDef entityDef = archiveHelper.getDefaultEntityDef(guid,
-                                                                name,
-                                                                this.archiveBuilder.getEntityDef(superTypeName),
-                                                                description,
-                                                                descriptionGUID);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "name";
-        final String attribute1Description     = "Display name for the asset.";
-        final String attribute1DescriptionGUID = null;
-        final String attribute2Name            = "description";
-        final String attribute2Description     = "Description of the asset.";
-        final String attribute2DescriptionGUID = null;
-        final String attribute3Name            = "owner";
-        final String attribute3Description     = "User name of the person or process that owns the asset.";
-        final String attribute3DescriptionGUID = null;
-
-
-        property = archiveHelper.getStringTypeDefAttribute(attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute2Name, attribute2Description, attribute2DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute3Name, attribute3Description, attribute3DescriptionGUID);
-        properties.add(property);
-
-        entityDef.setPropertiesDefinition(properties);
-
-        return entityDef;
-    }
-
-
-    /**
-     * The Infrastructure entity describes an asset that is physical infrastructure or part of the software
-     * platform that supports the data and process assets.
-     *
-     * @return Infrastructure EntityDef
-     */
-    private EntityDef getInfrastructureEntity()
-    {
-        /*
-         * Build the Entity
-         */
-        final String guid            = "c19746ac-b3ec-49ce-af4b-83348fc55e07";
-        final String name            = "Infrastructure";
-        final String description     = "Physical infrastructure or software platform.";
-        final String descriptionGUID = null;
-        final String superTypeName   = "Asset";
-
-        return archiveHelper.getDefaultEntityDef(guid,
-                                                 name,
-                                                 this.archiveBuilder.getEntityDef(superTypeName),
-                                                 description,
-                                                 descriptionGUID);
-    }
-
-
-    /**
-     * The Process entity describes a well-defined sequence of activities performed by people or software components.
-     *
-     * @return Process EntityDef
-     */
-    private EntityDef getProcessEntity()
-    {
-        /*
-         * Build the Entity
-         */
-        final String guid            = "d8f33bd7-afa9-4a11-a8c7-07dcec83c050";
-        final String name            = "Process";
-        final String description     = "Well-defined sequence of activities performed by people or software components.";
-        final String descriptionGUID = null;
-        final String superTypeName   = "Asset";
-
-        return archiveHelper.getDefaultEntityDef(guid,
-                                                 name,
-                                                 this.archiveBuilder.getEntityDef(superTypeName),
-                                                 description,
-                                                 descriptionGUID);
-    }
-
-
-    /**
-     * The DataSet entity describes a collection of related data.
-     *
-     * @return DataSet EntityDef
-     */
-    private EntityDef getDataSetEntity()
-    {
-        /*
-         * Build the Entity
-         */
-        final String guid            = "1449911c-4f44-4c22-abc0-7540154feefb";
-        final String name            = "DataSet";
-        final String description     = "Collection of related data.";
-        final String descriptionGUID = null;
-        final String superTypeName   = "Asset";
-
-        return archiveHelper.getDefaultEntityDef(guid,
-                                                 name,
-                                                 this.archiveBuilder.getEntityDef(superTypeName),
-                                                 description,
-                                                 descriptionGUID);
-    }
-
-
-    /**
-     * The ProcessInput relationship describes the data set(s) that are passed into a process.
-     *
-     * @return ProcessInput RelationshipDef
-     */
-    private RelationshipDef getProcessInputRelationship()
-    {
-        /*
-         * Build the relationship
-         */
-        final String guid            = "9a6583c4-7419-4d5a-a6e5-26b0033fa349";
-        final String name            = "ProcessInput";
-        final String description     = "The DataSets passed into a Process.";
-        final String descriptionGUID = null;
-
-        final RelationshipCategory          relationshipCategory          = RelationshipCategory.AGGREGATION;
-        final ClassificationPropagationRule classificationPropagationRule = ClassificationPropagationRule.NONE;
-
-        RelationshipDef relationshipDef = archiveHelper.getBasicRelationshipDef(guid,
-                                                                                name,
-                                                                                null,
-                                                                                description,
-                                                                                descriptionGUID,
-                                                                                relationshipCategory,
-                                                                                classificationPropagationRule);
-
-        RelationshipEndDef relationshipEndDef;
-
-        /*
-         * Set up end 1.
-         */
-        final String               end1EntityType               = "Process";
-        final String               end1AttributeName            = "consumedByProcess";
-        final String               end1AttributeDescription     = "Processes that consume this DataSet.";
-        final String               end1AttributeDescriptionGUID = null;
-        final AttributeCardinality end1Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end1EntityType),
-                                                                 end1AttributeName,
-                                                                 end1AttributeDescription,
-                                                                 end1AttributeDescriptionGUID,
-                                                                 end1Cardinality);
-        relationshipDef.setEndDef1(relationshipEndDef);
-
-
-        /*
-         * Set up end 2.
-         */
-        final String               end2EntityType               = "DataSet";
-        final String               end2AttributeName            = "processInputData";
-        final String               end2AttributeDescription     = "DataSets consumed by this Process.";
-        final String               end2AttributeDescriptionGUID = null;
-        final AttributeCardinality end2Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end2EntityType),
-                                                                 end2AttributeName,
-                                                                 end2AttributeDescription,
-                                                                 end2AttributeDescriptionGUID,
-                                                                 end2Cardinality);
-        relationshipDef.setEndDef2(relationshipEndDef);
-
-
-        return relationshipDef;
-    }
-
-
-    /**
-     * The ProcessOutput relationship describes the data set(s) that are produced by a process.
-     *
-     * @return ProcessOutput RelationshipDef
-     */
-    private RelationshipDef getProcessOutputRelationship()
-    {
-        /*
-         * Build the relationship
-         */
-        final String                        guid                          = "8920eada-9b05-4368-b511-b8506a4bef4b";
-        final String                        name                          = "ProcessOutput";
-        final String                        description                   = "The DataSets produced by a Process.";
-        final String                        descriptionGUID               = null;
-        final RelationshipCategory          relationshipCategory          = RelationshipCategory.AGGREGATION;
-        final ClassificationPropagationRule classificationPropagationRule = ClassificationPropagationRule.NONE;
-
-        RelationshipDef relationshipDef = archiveHelper.getBasicRelationshipDef(guid,
-                                                                                name,
-                                                                                null,
-                                                                                description,
-                                                                                descriptionGUID,
-                                                                                relationshipCategory,
-                                                                                classificationPropagationRule);
-
-        RelationshipEndDef relationshipEndDef;
-
-        /*
-         * Set up end 1.
-         */
-        final String               end1EntityType               = "Process";
-        final String               end1AttributeName            = "producedByProcess";
-        final String               end1AttributeDescription     = "Processes that produce this DataSet.";
-        final String               end1AttributeDescriptionGUID = null;
-        final AttributeCardinality end1Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end1EntityType),
-                                                                 end1AttributeName,
-                                                                 end1AttributeDescription,
-                                                                 end1AttributeDescriptionGUID,
-                                                                 end1Cardinality);
-        relationshipDef.setEndDef1(relationshipEndDef);
-
-
-        /*
-         * Set up end 2.
-         */
-        final String               end2EntityType               = "DataSet";
-        final String               end2AttributeName            = "processOutputData";
-        final String               end2AttributeDescription     = "DataSets produced by this Process.";
-        final String               end2AttributeDescriptionGUID = null;
-        final AttributeCardinality end2Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end2EntityType),
-                                                                 end2AttributeName,
-                                                                 end2AttributeDescription,
-                                                                 end2AttributeDescriptionGUID,
-                                                                 end2Cardinality);
-        relationshipDef.setEndDef2(relationshipEndDef);
-
-
-        return relationshipDef;
-    }
-
-
-    /*
-     * -------------------------------------------------------------------------------------------------------
-     */
-
-
-    /**
-     * 0015 Linked Media Types describe different media (like images and documents) that enhance the description
-     * of an entity.  Media entities can be added to any Referenceable entities.
-     */
-    private void add0015LinkedMediaTypes()
-    {
-        this.archiveBuilder.addEnumDef(getMediaUsageTypeEnum());
-
-        this.archiveBuilder.addEntityDef(getExternalReferenceEntity());
-        this.archiveBuilder.addEntityDef(getRelatedMediaEntity());
-        this.archiveBuilder.addEntityDef(getMediaUsageEntity());
-
-
-        this.archiveBuilder.addRelationshipDef(getExternalReferenceLinkRelationship());
-        this.archiveBuilder.addRelationshipDef(getMediaReferenceRelationship());
-        this.archiveBuilder.addRelationshipDef(getMediaUsageGuidanceRelationship());
-
-    }
-
-
-    private EnumDef getMediaUsageTypeEnum()
-    {
-        final String guid            = "c6861a72-7485-48c9-8040-876f6c342b61";
-        final String name            = "MediaUsageType";
-        final String description     = "Defines how a related media reference should be used.";
-        final String descriptionGUID = null;
-
-        EnumDef enumDef = archiveHelper.getEmptyEnumDef(guid, name, description, descriptionGUID);
-
-        ArrayList<EnumElementDef> elementDefs = new ArrayList<>();
-        EnumElementDef            elementDef;
-
-        final int    element1Ordinal         = 0;
-        final String element1Value           = "Icon";
-        final String element1Description     = "Provides a small image to represent the asset in tree views and graphs.";
-        final String element1DescriptionGUID = null;
-
-        elementDef = archiveHelper.getEnumElementDef(element1Ordinal, element1Value, element1Description, element1DescriptionGUID);
-        elementDefs.add(elementDef);
-
-        final int    element2Ordinal         = 1;
-        final String element2Value           = "Thumbnail";
-        final String element2Description     = "Provides a small image about the asset that can be used in lists.";
-        final String element2DescriptionGUID = null;
-
-        elementDef = archiveHelper.getEnumElementDef(element2Ordinal, element2Value, element2Description, element2DescriptionGUID);
-        elementDefs.add(elementDef);
-
-        final int    element3Ordinal         = 2;
-        final String element3Value           = "Illustration";
-        final String element3Description     = "Illustrates how the asset works or what it contains. It is complementary to the asset's description.";
-        final String element3DescriptionGUID = null;
-
-        elementDef = archiveHelper.getEnumElementDef(element3Ordinal, element3Value, element3Description, element3DescriptionGUID);
-        elementDefs.add(elementDef);
-
-        final int    element4Ordinal         = 3;
-        final String element4Value           = "UsageGuidance";
-        final String element4Description     = "Provides guidance to a person on how to use the asset.";
-        final String element4DescriptionGUID = null;
-
-        elementDef = archiveHelper.getEnumElementDef(element4Ordinal, element4Value, element4Description, element4DescriptionGUID);
-        elementDefs.add(elementDef);
-
-        final int    element5Ordinal         = 99;
-        final String element5Value           = "Other";
-        final String element5Description     = "Another usage.";
-        final String element5DescriptionGUID = null;
-
-        elementDef = archiveHelper.getEnumElementDef(element5Ordinal, element5Value, element5Description, element5DescriptionGUID);
-        elementDefs.add(elementDef);
-
-        enumDef.setElementDefs(elementDefs);
-
-        return enumDef;
-    }
-
-
-    private EntityDef getExternalReferenceEntity()
-    {
-        final String guid            = "af536f20-062b-48ef-9c31-1ddd05b04c56";
-        final String name            = "ExternalReference";
-        final String description     = "A link to more information.";
-        final String descriptionGUID = null;
-
-        final String superTypeName = "Referenceable";
-
-        EntityDef entityDef = archiveHelper.getDefaultEntityDef(guid,
-                                                                name,
-                                                                this.archiveBuilder.getEntityDef(superTypeName),
-                                                                description,
-                                                                descriptionGUID);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "displayName";
-        final String attribute1Description     = "Consumable name for reports and user interfaces.";
-        final String attribute1DescriptionGUID = null;
-        final String attribute2Name            = "url";
-        final String attribute2Description     = "Location of the external reference.";
-        final String attribute2DescriptionGUID = null;
-        final String attribute3Name            = "version";
-        final String attribute3Description     = "Version number of the external reference.";
-        final String attribute3DescriptionGUID = null;
-        final String attribute4Name            = "description";
-        final String attribute4Description     = "Description of the external reference.";
-        final String attribute4DescriptionGUID = null;
-
-        property = archiveHelper.getStringTypeDefAttribute(attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute2Name, attribute2Description, attribute2DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute3Name, attribute3Description, attribute3DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute4Name, attribute4Description, attribute4DescriptionGUID);
-        properties.add(property);
-
-        entityDef.setPropertiesDefinition(properties);
-
-        return entityDef;
-    }
-
-
-    private EntityDef getRelatedMediaEntity()
-    {
-        final String guid            = "747f8b86-fe7c-4c9b-ba75-979e093cc307";
-        final String name            = "RelatedMedia";
-        final String description     = "Images, video or sound media.";
-        final String descriptionGUID = null;
-
-        final String superTypeName = "ExternalReference";
-
-        return archiveHelper.getDefaultEntityDef(guid,
-                                                 name,
-                                                 this.archiveBuilder.getEntityDef(superTypeName),
-                                                 description,
-                                                 descriptionGUID);
-    }
-
-
-    private EntityDef getMediaUsageEntity()
-    {
-        final String guid            = "b9599da3-ce7e-4981-b25e-86d03340da0b";
-        final String name            = "MediaUsage";
-        final String description     = "Guidance on a particular way a specific piece of media could be used.";
-        final String descriptionGUID = null;
-
-        EntityDef entityDef = archiveHelper.getDefaultEntityDef(guid,
-                                                                name,
-                                                                null,
-                                                                description,
-                                                                descriptionGUID);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "mediaUsageType";
-        final String attribute1Description     = "Type of media usage.";
-        final String attribute1DescriptionGUID = null;
-        final String attribute2Name            = "guidance";
-        final String attribute2Description     = "Advice on how the media should be used in this context.";
-        final String attribute2DescriptionGUID = null;
-
-        property = archiveHelper.getEnumTypeDefAttribute("MediaUsageType", attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute2Name, attribute2Description, attribute2DescriptionGUID);
-        properties.add(property);
-
-        entityDef.setPropertiesDefinition(properties);
-
-        return entityDef;
-    }
-
-
-    private RelationshipDef getExternalReferenceLinkRelationship()
-    {
-        final String guid            = "7d818a67-ab45-481c-bc28-f6b1caf12f06";
-        final String name            = "ExternalReferenceLink";
-        final String description     = "Link to more information.";
-        final String descriptionGUID = null;
-
-        final RelationshipCategory          relationshipCategory          = RelationshipCategory.ASSOCIATION;
-        final ClassificationPropagationRule classificationPropagationRule = ClassificationPropagationRule.NONE;
-
-        RelationshipDef relationshipDef = archiveHelper.getBasicRelationshipDef(guid,
-                                                                                name,
-                                                                                null,
-                                                                                description,
-                                                                                descriptionGUID,
-                                                                                relationshipCategory,
-                                                                                classificationPropagationRule);
-
-        RelationshipEndDef relationshipEndDef;
-
-        /*
-         * Set up end 1.
-         */
-        final String               end1EntityType               = "Referenceable";
-        final String               end1AttributeName            = "relatedItem";
-        final String               end1AttributeDescription     = "Item that is referencing this work.";
-        final String               end1AttributeDescriptionGUID = null;
-        final AttributeCardinality end1Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end1EntityType),
-                                                                 end1AttributeName,
-                                                                 end1AttributeDescription,
-                                                                 end1AttributeDescriptionGUID,
-                                                                 end1Cardinality);
-        relationshipDef.setEndDef1(relationshipEndDef);
-
-
-        /*
-         * Set up end 2.
-         */
-        final String               end2EntityType               = "ExternalReference";
-        final String               end2AttributeName            = "externalReference";
-        final String               end2AttributeDescription     = "Link to more information from an external source.";
-        final String               end2AttributeDescriptionGUID = null;
-        final AttributeCardinality end2Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end2EntityType),
-                                                                 end2AttributeName,
-                                                                 end2AttributeDescription,
-                                                                 end2AttributeDescriptionGUID,
-                                                                 end2Cardinality);
-        relationshipDef.setEndDef2(relationshipEndDef);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "referenceId";
-        final String attribute1Description     = "Local identifier for the reference.";
-        final String attribute1DescriptionGUID = null;
-        final String attribute2Name            = "description";
-        final String attribute2Description     = "Description of the relevance of this reference to the linked item.";
-        final String attribute2DescriptionGUID = null;
-
-        property = archiveHelper.getStringTypeDefAttribute(attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute2Name, attribute2Description, attribute2DescriptionGUID);
-        properties.add(property);
-
-        relationshipDef.setPropertiesDefinition(properties);
-
-        return relationshipDef;
-    }
-
-
-    private RelationshipDef getMediaReferenceRelationship()
-    {
-        final String guid            = "1353400f-b0ab-4ab9-ab09-3045dd8a7140";
-        final String name            = "MediaReference";
-        final String description     = "Link to related media such as images, videos and audio.";
-        final String descriptionGUID = null;
-
-        final RelationshipCategory          relationshipCategory          = RelationshipCategory.ASSOCIATION;
-        final ClassificationPropagationRule classificationPropagationRule = ClassificationPropagationRule.NONE;
-
-        RelationshipDef relationshipDef = archiveHelper.getBasicRelationshipDef(guid,
-                                                                                name,
-                                                                                null,
-                                                                                description,
-                                                                                descriptionGUID,
-                                                                                relationshipCategory,
-                                                                                classificationPropagationRule);
-
-        RelationshipEndDef relationshipEndDef;
-
-        /*
-         * Set up end 1.
-         */
-        final String               end1EntityType               = "Referenceable";
-        final String               end1AttributeName            = "consumingItem";
-        final String               end1AttributeDescription     = "Item that is referencing this work.";
-        final String               end1AttributeDescriptionGUID = null;
-        final AttributeCardinality end1Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end1EntityType),
-                                                                 end1AttributeName,
-                                                                 end1AttributeDescription,
-                                                                 end1AttributeDescriptionGUID,
-                                                                 end1Cardinality);
-        relationshipDef.setEndDef1(relationshipEndDef);
-
-
-        /*
-         * Set up end 2.
-         */
-        final String               end2EntityType               = "RelatedMedia";
-        final String               end2AttributeName            = "relatedMedia";
-        final String               end2AttributeDescription     = "Link to external media.";
-        final String               end2AttributeDescriptionGUID = null;
-        final AttributeCardinality end2Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end2EntityType),
-                                                                 end2AttributeName,
-                                                                 end2AttributeDescription,
-                                                                 end2AttributeDescriptionGUID,
-                                                                 end2Cardinality);
-        relationshipDef.setEndDef2(relationshipEndDef);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "mediaId";
-        final String attribute1Description     = "Local identifier for the media.";
-        final String attribute1DescriptionGUID = null;
-        final String attribute2Name            = "description";
-        final String attribute2Description     = "Description of the relevance of this media to the linked item.";
-        final String attribute2DescriptionGUID = null;
-
-        property = archiveHelper.getStringTypeDefAttribute(attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute2Name, attribute2Description, attribute2DescriptionGUID);
-        properties.add(property);
-
-        relationshipDef.setPropertiesDefinition(properties);
-
-        return relationshipDef;
-    }
-
-
-    private RelationshipDef getMediaUsageGuidanceRelationship()
-    {
-        final String guid            = "952b5c8b-42fb-4ff2-a15f-a9eebb82d2ca";
-        final String name            = "MediaUsageGuidance";
-        final String description     = "Link to information on how a specific piece of media could be used.";
-        final String descriptionGUID = null;
-
-        final RelationshipCategory          relationshipCategory          = RelationshipCategory.COMPOSITION;
-        final ClassificationPropagationRule classificationPropagationRule = ClassificationPropagationRule.NONE;
-
-        RelationshipDef relationshipDef = archiveHelper.getBasicRelationshipDef(guid,
-                                                                                name,
-                                                                                null,
-                                                                                description,
-                                                                                descriptionGUID,
-                                                                                relationshipCategory,
-                                                                                classificationPropagationRule);
-
-        RelationshipEndDef relationshipEndDef;
-
-        /*
-         * Set up end 1.
-         */
-        final String               end1EntityType               = "RelatedMedia";
-        final String               end1AttributeName            = "parentMedia";
-        final String               end1AttributeDescription     = "Parent media that this guidance is for.";
-        final String               end1AttributeDescriptionGUID = null;
-        final AttributeCardinality end1Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end1EntityType),
-                                                                 end1AttributeName,
-                                                                 end1AttributeDescription,
-                                                                 end1AttributeDescriptionGUID,
-                                                                 end1Cardinality);
-        relationshipDef.setEndDef1(relationshipEndDef);
-
-
-        /*
-         * Set up end 2.
-         */
-        final String               end2EntityType               = "MediaUsage";
-        final String               end2AttributeName            = "usageRecommendation";
-        final String               end2AttributeDescription     = "Link to guidance on how related media should be used.";
-        final String               end2AttributeDescriptionGUID = null;
-        final AttributeCardinality end2Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end2EntityType),
-                                                                 end2AttributeName,
-                                                                 end2AttributeDescription,
-                                                                 end2AttributeDescriptionGUID,
-                                                                 end2Cardinality);
-        relationshipDef.setEndDef2(relationshipEndDef);
-
-        return relationshipDef;
-    }
-
-    /*
-     * -------------------------------------------------------------------------------------------------------
-     */
-
-
-    /**
-     * 0017 External Identifiers define identifiers used to identify this entity in other systems.
-     */
-    private void add0017ExternalIdentifiers()
-    {
-        this.archiveBuilder.addEnumDef(getKeyPatternEnum());
-
-        this.archiveBuilder.addEntityDef(getExternalIdEntity());
-
-        this.archiveBuilder.addRelationshipDef(getExternalIdScopeRelationship());
-        this.archiveBuilder.addRelationshipDef(getExternalIdLinkRelationship());
-    }
-
-
-    private EnumDef getKeyPatternEnum()
-    {
-        final String guid            = "8904df8f-1aca-4de8-9abd-1ef2aadba300";
-        final String name            = "KeyPattern";
-        final String description     = "Defines the type of identifier used for an asset.";
-        final String descriptionGUID = null;
-
-        EnumDef enumDef = archiveHelper.getEmptyEnumDef(guid, name, description, descriptionGUID);
-
-        ArrayList<EnumElementDef> elementDefs = new ArrayList<>();
-        EnumElementDef            elementDef;
-
-        final int    element1Ordinal         = 0;
-        final String element1Value           = "LocalKey";
-        final String element1Description     = "Unique key allocated and used within the scope of a single system.";
-        final String element1DescriptionGUID = null;
-
-        elementDef = archiveHelper.getEnumElementDef(element1Ordinal, element1Value, element1Description, element1DescriptionGUID);
-        elementDefs.add(elementDef);
-
-        final int    element2Ordinal         = 1;
-        final String element2Value           = "RecycledKey";
-        final String element2Description     = "Key allocated and used within the scope of a single system that is periodically reused for different records.";
-        final String element2DescriptionGUID = null;
-
-        elementDef = archiveHelper.getEnumElementDef(element2Ordinal, element2Value, element2Description, element2DescriptionGUID);
-        elementDefs.add(elementDef);
-
-        final int    element3Ordinal         = 2;
-        final String element3Value           = "NaturalKey";
-        final String element3Description     = "Key derived from an attribute of the entity, such as email address, passport number.";
-        final String element3DescriptionGUID = null;
-
-        elementDef = archiveHelper.getEnumElementDef(element3Ordinal, element3Value, element3Description, element3DescriptionGUID);
-        elementDefs.add(elementDef);
-
-        final int    element4Ordinal         = 3;
-        final String element4Value           = "MirrorKey";
-        final String element4Description     = "Key value copied from another system.";
-        final String element4DescriptionGUID = null;
-
-        elementDef = archiveHelper.getEnumElementDef(element4Ordinal, element4Value, element4Description, element4DescriptionGUID);
-        elementDefs.add(elementDef);
-
-        final int    element5Ordinal         = 4;
-        final String element5Value           = "AggregateKey";
-        final String element5Description     = "Key formed by combining keys from multiple systems.";
-        final String element5DescriptionGUID = null;
-
-        elementDef = archiveHelper.getEnumElementDef(element5Ordinal, element5Value, element5Description, element5DescriptionGUID);
-        elementDefs.add(elementDef);
-
-        final int    element6Ordinal         = 5;
-        final String element6Value           = "CallersKey";
-        final String element6Description     = "Key from another system can bey used if system name provided.";
-        final String element6DescriptionGUID = null;
-
-        elementDef = archiveHelper.getEnumElementDef(element6Ordinal, element6Value, element6Description, element6DescriptionGUID);
-        elementDefs.add(elementDef);
-
-        final int    element7Ordinal         = 6;
-        final String element7Value           = "StableKey";
-        final String element7Description     = "Key value will remain active even if records are merged.";
-        final String element7DescriptionGUID = null;
-
-        elementDef = archiveHelper.getEnumElementDef(element7Ordinal, element7Value, element7Description, element7DescriptionGUID);
-        elementDefs.add(elementDef);
-
-        final int    element8Ordinal         = 99;
-        final String element8Value           = "Other";
-        final String element8Description     = "Another key pattern.";
-        final String element8DescriptionGUID = null;
-
-        elementDef = archiveHelper.getEnumElementDef(element8Ordinal, element8Value, element8Description, element8DescriptionGUID);
-        elementDefs.add(elementDef);
-
-        enumDef.setElementDefs(elementDefs);
-
-        return enumDef;
-    }
-
-
-    private EntityDef getExternalIdEntity()
-    {
-        final String guid            = "7c8f8c2c-cc48-429e-8a21-a1f1851ccdb0";
-        final String name            = "ExternalId";
-        final String description     = "Alternative identifier used in another system.";
-        final String descriptionGUID = null;
-
-        final String superTypeName = "Referenceable";
-
-        EntityDef entityDef = archiveHelper.getDefaultEntityDef(guid,
-                                                                name,
-                                                                this.archiveBuilder.getEntityDef(superTypeName),
-                                                                description,
-                                                                descriptionGUID);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "identifier";
-        final String attribute1Description     = "Identifier used in an external system.";
-        final String attribute1DescriptionGUID = null;
-        final String attribute2Name            = "keyPattern";
-        final String attribute2Description     = "Management pattern associated with the identifier.";
-        final String attribute2DescriptionGUID = null;
-
-        property = archiveHelper.getStringTypeDefAttribute(attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getEnumTypeDefAttribute("KeyPattern", attribute2Name, attribute2Description, attribute2DescriptionGUID);
-        properties.add(property);
-
-        entityDef.setPropertiesDefinition(properties);
-
-        return entityDef;
-    }
-
-
-    private RelationshipDef getExternalIdScopeRelationship()
-    {
-        final String guid            = "8c5b1415-2d1f-4190-ba6c-1fdd47f03269";
-        final String name            = "ExternalIdScope";
-        final String description     = "Places where an external identifier is recognized.";
-        final String descriptionGUID = null;
-
-        final RelationshipCategory          relationshipCategory          = RelationshipCategory.ASSOCIATION;
-        final ClassificationPropagationRule classificationPropagationRule = ClassificationPropagationRule.NONE;
-
-        RelationshipDef relationshipDef = archiveHelper.getBasicRelationshipDef(guid,
-                                                                                name,
-                                                                                null,
-                                                                                description,
-                                                                                descriptionGUID,
-                                                                                relationshipCategory,
-                                                                                classificationPropagationRule);
-
-        RelationshipEndDef relationshipEndDef;
-
-        /*
-         * Set up end 1.
-         */
-        final String               end1EntityType               = "Referenceable";
-        final String               end1AttributeName            = "scopedTo";
-        final String               end1AttributeDescription     = "Identifies where this external identifier is known.";
-        final String               end1AttributeDescriptionGUID = null;
-        final AttributeCardinality end1Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end1EntityType),
-                                                                 end1AttributeName,
-                                                                 end1AttributeDescription,
-                                                                 end1AttributeDescriptionGUID,
-                                                                 end1Cardinality);
-        relationshipDef.setEndDef1(relationshipEndDef);
-
-
-        /*
-         * Set up end 2.
-         */
-        final String               end2EntityType               = "ExternalId";
-        final String               end2AttributeName            = "managedResources";
-        final String               end2AttributeDescription     = "Link to details of a resource that this component manages.";
-        final String               end2AttributeDescriptionGUID = null;
-        final AttributeCardinality end2Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end2EntityType),
-                                                                 end2AttributeName,
-                                                                 end2AttributeDescription,
-                                                                 end2AttributeDescriptionGUID,
-                                                                 end2Cardinality);
-        relationshipDef.setEndDef2(relationshipEndDef);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "description";
-        final String attribute1Description     = "Description of the relationship between the resources and the managing component.";
-        final String attribute1DescriptionGUID = null;
-
-        property = archiveHelper.getStringTypeDefAttribute(attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        properties.add(property);
-
-
-        relationshipDef.setPropertiesDefinition(properties);
-
-        return relationshipDef;
-    }
-
-
-    private RelationshipDef getExternalIdLinkRelationship()
-    {
-        final String guid            = "28ab0381-c662-4b6d-b787-5d77208de126";
-        final String name            = "ExternalIdLink";
-        final String description     = "Link between an external identifier and an asset or related item.";
-        final String descriptionGUID = null;
-
-        final RelationshipCategory          relationshipCategory          = RelationshipCategory.ASSOCIATION;
-        final ClassificationPropagationRule classificationPropagationRule = ClassificationPropagationRule.NONE;
-
-        RelationshipDef relationshipDef = archiveHelper.getBasicRelationshipDef(guid,
-                                                                                name,
-                                                                                null,
-                                                                                description,
-                                                                                descriptionGUID,
-                                                                                relationshipCategory,
-                                                                                classificationPropagationRule);
-
-        RelationshipEndDef relationshipEndDef;
-
-        /*
-         * Set up end 1.
-         */
-        final String               end1EntityType               = "Referenceable";
-        final String               end1AttributeName            = "resource";
-        final String               end1AttributeDescription     = "Resource being identified.";
-        final String               end1AttributeDescriptionGUID = null;
-        final AttributeCardinality end1Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end1EntityType),
-                                                                 end1AttributeName,
-                                                                 end1AttributeDescription,
-                                                                 end1AttributeDescriptionGUID,
-                                                                 end1Cardinality);
-        relationshipDef.setEndDef1(relationshipEndDef);
-
-
-        /*
-         * Set up end 2.
-         */
-        final String               end2EntityType               = "ExternalId";
-        final String               end2AttributeName            = "alsoKnownAs";
-        final String               end2AttributeDescription     = "Identifier used in an external system.";
-        final String               end2AttributeDescriptionGUID = null;
-        final AttributeCardinality end2Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end2EntityType),
-                                                                 end2AttributeName,
-                                                                 end2AttributeDescription,
-                                                                 end2AttributeDescriptionGUID,
-                                                                 end2Cardinality);
-        relationshipDef.setEndDef2(relationshipEndDef);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "description";
-        final String attribute1Description     = "Description of how the external identifier relates to the resource.";
-        final String attribute1DescriptionGUID = null;
-        final String attribute2Name            = "usage";
-        final String attribute2Description     = "Description of how the external identifier can be used.";
-        final String attribute2DescriptionGUID = null;
-        final String attribute3Name            = "source";
-        final String attribute3Description     = "Details of where the external identifier was sourced from.";
-        final String attribute3DescriptionGUID = null;
-
-        property = archiveHelper.getStringTypeDefAttribute(attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute2Name, attribute2Description, attribute2DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute3Name, attribute3Description, attribute3DescriptionGUID);
-        properties.add(property);
-
-        relationshipDef.setPropertiesDefinition(properties);
-
-        return relationshipDef;
-    }
-
-
-    /*
-     * -------------------------------------------------------------------------------------------------------
-     */
-
-
-    /**
-     * 0020 Property Facets define blocks of properties that are unique to a particular vendor or service.
-     */
-    private void add0020PropertyFacets()
-    {
-        this.archiveBuilder.addEntityDef(getPropertyFacetEntity());
-
-        this.archiveBuilder.addRelationshipDef(getReferenceableFacetRelationship());
-    }
-
-
-    private EntityDef getPropertyFacetEntity()
-    {
-        final String guid            = "6403a704-aad6-41c2-8e08-b9525c006f85";
-        final String name            = "PropertyFacet";
-        final String description     = "Additional properties that support a particular vendor or service.";
-        final String descriptionGUID = null;
-
-        final String superTypeName = "Referenceable";
-
-        EntityDef entityDef = archiveHelper.getDefaultEntityDef(guid,
-                                                                name,
-                                                                this.archiveBuilder.getEntityDef(superTypeName),
-                                                                description,
-                                                                descriptionGUID);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "version";
-        final String attribute1Description     = "Version of the property facet schema.";
-        final String attribute1DescriptionGUID = null;
-        final String attribute2Name            = "description";
-        final String attribute2Description     = "Description of the property facet contents.";
-        final String attribute2DescriptionGUID = null;
-        final String attribute3Name            = "properties";
-        final String attribute3Description     = "Properties for the property facet.";
-        final String attribute3DescriptionGUID = null;
-
-
-        property = archiveHelper.getStringTypeDefAttribute(attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute2Name, attribute2Description, attribute2DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getMapStringStringTypeDefAttribute(attribute3Name, attribute3Description, attribute3DescriptionGUID);
-        properties.add(property);
-
-        entityDef.setPropertiesDefinition(properties);
-
-        return entityDef;
-    }
-
-
-    private RelationshipDef getReferenceableFacetRelationship()
-    {
-        final String guid            = "58c87647-ada9-4c90-a3c3-a40ace46b1f7";
-        final String name            = "ReferenceableFacet";
-        final String description     = "Link between a property facet and the resource it relates to.";
-        final String descriptionGUID = null;
-
-        final RelationshipCategory          relationshipCategory          = RelationshipCategory.COMPOSITION;
-        final ClassificationPropagationRule classificationPropagationRule = ClassificationPropagationRule.NONE;
-
-        RelationshipDef relationshipDef = archiveHelper.getBasicRelationshipDef(guid,
-                                                                                name,
-                                                                                null,
-                                                                                description,
-                                                                                descriptionGUID,
-                                                                                relationshipCategory,
-                                                                                classificationPropagationRule);
-
-        RelationshipEndDef relationshipEndDef;
-
-        /*
-         * Set up end 1.
-         */
-        final String               end1EntityType               = "Referenceable";
-        final String               end1AttributeName            = "relatedEntity";
-        final String               end1AttributeDescription     = "Identifies which element this property facet belongs to.";
-        final String               end1AttributeDescriptionGUID = null;
-        final AttributeCardinality end1Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end1EntityType),
-                                                                 end1AttributeName,
-                                                                 end1AttributeDescription,
-                                                                 end1AttributeDescriptionGUID,
-                                                                 end1Cardinality);
-        relationshipDef.setEndDef1(relationshipEndDef);
-
-
-        /*
-         * Set up end 2.
-         */
-        final String               end2EntityType               = "PropertyFacet";
-        final String               end2AttributeName            = "facets";
-        final String               end2AttributeDescription     = "Additional properties from different sources.";
-        final String               end2AttributeDescriptionGUID = null;
-        final AttributeCardinality end2Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end2EntityType),
-                                                                 end2AttributeName,
-                                                                 end2AttributeDescription,
-                                                                 end2AttributeDescriptionGUID,
-                                                                 end2Cardinality);
-        relationshipDef.setEndDef2(relationshipEndDef);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "source";
-        final String attribute1Description     = "Source of this property facet.";
-        final String attribute1DescriptionGUID = null;
-
-        property = archiveHelper.getStringTypeDefAttribute(attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        properties.add(property);
-
-        relationshipDef.setPropertiesDefinition(properties);
-
-        return relationshipDef;
-    }
-
-    /*
-     * -------------------------------------------------------------------------------------------------------
-     */
-
-
-    /**
-     * 0025 Locations define entities that describe physical, logical and cyber locations for Assets.
-     */
-    private void add0025Locations()
-    {
-        this.archiveBuilder.addEntityDef(getLocationEntity());
-
-        this.archiveBuilder.addRelationshipDef(getNestedLocationRelationship());
-        this.archiveBuilder.addRelationshipDef(getAdjacentLocationRelationship());
-        this.archiveBuilder.addRelationshipDef(getAssetLocationRelationship());
-
-        this.archiveBuilder.addClassificationDef(getMobileAssetClassification());
-        this.archiveBuilder.addClassificationDef(getFixedLocationClassification());
-        this.archiveBuilder.addClassificationDef(getSecureLocationClassification());
-        this.archiveBuilder.addClassificationDef(getCyberLocationClassification());
-    }
-
-
-    private EntityDef getLocationEntity()
-    {
-        final String guid            = "3e09cb2b-5f15-4fd2-b004-fe0146ad8628";
-        final String name            = "Location";
-        final String description     = "A physical place, digital location or area.";
-        final String descriptionGUID = null;
-
-        final String superTypeName = "Referenceable";
-
-        EntityDef entityDef = archiveHelper.getDefaultEntityDef(guid,
-                                                                name,
-                                                                this.archiveBuilder.getEntityDef(superTypeName),
-                                                                description,
-                                                                descriptionGUID);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "displayName";
-        final String attribute1Description     = "Consumable name for reports and user interfaces.";
-        final String attribute1DescriptionGUID = null;
-        final String attribute2Name            = "description";
-        final String attribute2Description     = "Description of the location.";
-        final String attribute2DescriptionGUID = null;
-
-        property = archiveHelper.getStringTypeDefAttribute(attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute2Name, attribute2Description, attribute2DescriptionGUID);
-        properties.add(property);
-
-        entityDef.setPropertiesDefinition(properties);
-
-        return entityDef;
-    }
-
-
-    private RelationshipDef getNestedLocationRelationship()
-    {
-        final String guid            = "f82a96c2-95a3-4223-88c0-9cbf2882b772";
-        final String name            = "NestedLocation";
-        final String description     = "Link between two locations to show one is nested inside another.";
-        final String descriptionGUID = null;
-
-        final RelationshipCategory          relationshipCategory          = RelationshipCategory.AGGREGATION;
-        final ClassificationPropagationRule classificationPropagationRule = ClassificationPropagationRule.NONE;
-
-        RelationshipDef relationshipDef = archiveHelper.getBasicRelationshipDef(guid,
-                                                                                name,
-                                                                                null,
-                                                                                description,
-                                                                                descriptionGUID,
-                                                                                relationshipCategory,
-                                                                                classificationPropagationRule);
-
-        RelationshipEndDef relationshipEndDef;
-
-        /*
-         * Set up end 1.
-         */
-        final String               end1EntityType               = "Location";
-        final String               end1AttributeName            = "groupingLocation";
-        final String               end1AttributeDescription     = "Location that is covering the broader area.";
-        final String               end1AttributeDescriptionGUID = null;
-        final AttributeCardinality end1Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end1EntityType),
-                                                                 end1AttributeName,
-                                                                 end1AttributeDescription,
-                                                                 end1AttributeDescriptionGUID,
-                                                                 end1Cardinality);
-        relationshipDef.setEndDef1(relationshipEndDef);
-
-
-        /*
-         * Set up end 2.
-         */
-        final String               end2EntityType               = "Location";
-        final String               end2AttributeName            = "nestedLocation";
-        final String               end2AttributeDescription     = "Location that is nested in this location.";
-        final String               end2AttributeDescriptionGUID = null;
-        final AttributeCardinality end2Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end2EntityType),
-                                                                 end2AttributeName,
-                                                                 end2AttributeDescription,
-                                                                 end2AttributeDescriptionGUID,
-                                                                 end2Cardinality);
-        relationshipDef.setEndDef2(relationshipEndDef);
-
-        return relationshipDef;
-    }
-
-
-    private RelationshipDef getAdjacentLocationRelationship()
-    {
-        final String guid            = "017d0518-fc25-4e5e-985e-491d91e61e17";
-        final String name            = "AdjacentLocation";
-        final String description     = "Link between two locations that are next to one another.";
-        final String descriptionGUID = null;
-
-        final RelationshipCategory          relationshipCategory          = RelationshipCategory.ASSOCIATION;
-        final ClassificationPropagationRule classificationPropagationRule = ClassificationPropagationRule.NONE;
-
-        RelationshipDef relationshipDef = archiveHelper.getBasicRelationshipDef(guid,
-                                                                                name,
-                                                                                null,
-                                                                                description,
-                                                                                descriptionGUID,
-                                                                                relationshipCategory,
-                                                                                classificationPropagationRule);
-
-        RelationshipEndDef relationshipEndDef;
-
-        /*
-         * Set up end 1.
-         */
-        final String               end1EntityType               = "Location";
-        final String               end1AttributeName            = "peerLocation";
-        final String               end1AttributeDescription     = "Location that is adjacent to this location.";
-        final String               end1AttributeDescriptionGUID = null;
-        final AttributeCardinality end1Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end1EntityType),
-                                                                 end1AttributeName,
-                                                                 end1AttributeDescription,
-                                                                 end1AttributeDescriptionGUID,
-                                                                 end1Cardinality);
-        relationshipDef.setEndDef1(relationshipEndDef);
-
-
-        /*
-         * Set up end 2.
-         */
-        final String               end2EntityType               = "Location";
-        final String               end2AttributeName            = "peerLocation";
-        final String               end2AttributeDescription     = "Location that is adjacent to this location.";
-        final String               end2AttributeDescriptionGUID = null;
-        final AttributeCardinality end2Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end2EntityType),
-                                                                 end2AttributeName,
-                                                                 end2AttributeDescription,
-                                                                 end2AttributeDescriptionGUID,
-                                                                 end2Cardinality);
-        relationshipDef.setEndDef2(relationshipEndDef);
-
-        return relationshipDef;
-    }
-
-
-    private RelationshipDef getAssetLocationRelationship()
-    {
-        final String guid            = "bc236b62-d0e6-4c5c-93a1-3a35c3dba7b1";
-        final String name            = "AssetLocation";
-        final String description     = "Location of an Asset.";
-        final String descriptionGUID = null;
-
-        final RelationshipCategory          relationshipCategory          = RelationshipCategory.ASSOCIATION;
-        final ClassificationPropagationRule classificationPropagationRule = ClassificationPropagationRule.NONE;
-
-        RelationshipDef relationshipDef = archiveHelper.getBasicRelationshipDef(guid,
-                                                                                name,
-                                                                                null,
-                                                                                description,
-                                                                                descriptionGUID,
-                                                                                relationshipCategory,
-                                                                                classificationPropagationRule);
-
-        RelationshipEndDef relationshipEndDef;
-
-        /*
-         * Set up end 1.
-         */
-        final String               end1EntityType               = "Location";
-        final String               end1AttributeName            = "knownLocations";
-        final String               end1AttributeDescription     = "Places where this asset is sited.";
-        final String               end1AttributeDescriptionGUID = null;
-        final AttributeCardinality end1Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end1EntityType),
-                                                                 end1AttributeName,
-                                                                 end1AttributeDescription,
-                                                                 end1AttributeDescriptionGUID,
-                                                                 end1Cardinality);
-        relationshipDef.setEndDef1(relationshipEndDef);
-
-
-        /*
-         * Set up end 2.
-         */
-        final String               end2EntityType               = "Location";
-        final String               end2AttributeName            = "localAssets";
-        final String               end2AttributeDescription     = "Assets sited at this location.";
-        final String               end2AttributeDescriptionGUID = null;
-        final AttributeCardinality end2Cardinality              = AttributeCardinality.ANY_NUMBER_UNORDERED;
-
-        relationshipEndDef = archiveHelper.getRelationshipEndDef(this.archiveBuilder.getEntityDef(end2EntityType),
-                                                                 end2AttributeName,
-                                                                 end2AttributeDescription,
-                                                                 end2AttributeDescriptionGUID,
-                                                                 end2Cardinality);
-        relationshipDef.setEndDef2(relationshipEndDef);
-
-        return relationshipDef;
-    }
-
-
-    private ClassificationDef getMobileAssetClassification()
-    {
-        final String guid            = "b25fb90d-8fa2-4aa9-b884-ff0a6351a697";
-        final String name            = "MobileAsset";
-        final String description     = "An asset not restricted to a single physical location.";
-        final String descriptionGUID = null;
-
-        final String linkedToEntity = "Asset";
-
-        return archiveHelper.getClassificationDef(guid,
-                                                  name,
-                                                  null,
-                                                  description,
-                                                  descriptionGUID,
-                                                  this.archiveBuilder.getEntityDef(linkedToEntity),
-                                                  false);
-    }
-
-
-    private ClassificationDef getFixedLocationClassification()
-    {
-        final String guid            = "bc111963-80c7-444f-9715-946c03142dd2";
-        final String name            = "FixedLocation";
-        final String description     = "A location linked to a physical place.";
-        final String descriptionGUID = null;
-
-        final String linkedToEntity = "Location";
-
-        ClassificationDef classificationDef = archiveHelper.getClassificationDef(guid,
-                                                                                 name,
-                                                                                 null,
-                                                                                 description,
-                                                                                 descriptionGUID,
-                                                                                 this.archiveBuilder.getEntityDef(linkedToEntity),
-                                                                                 false);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "coordinates";
-        final String attribute1Description     = "Geographical coordinates of this location.";
-        final String attribute1DescriptionGUID = null;
-        final String attribute2Name            = "address";
-        final String attribute2Description     = "Postal address of this location.";
-        final String attribute2DescriptionGUID = null;
-        final String attribute3Name            = "timezone";
-        final String attribute3Description     = "Timezone for the location.";
-        final String attribute3DescriptionGUID = null;
-
-        property = archiveHelper.getStringTypeDefAttribute(attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute2Name, attribute2Description, attribute2DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute3Name, attribute3Description, attribute3DescriptionGUID);
-        properties.add(property);
-
-        classificationDef.setPropertiesDefinition(properties);
-
-        return classificationDef;
-    }
-
-
-    private ClassificationDef getSecureLocationClassification()
-    {
-        final String guid            = "e7b563c0-fcdd-4ba7-a046-eecf5c4638b8";
-        final String name            = "SecureLocation";
-        final String description     = "A location that protects the assets in its care.";
-        final String descriptionGUID = null;
-
-        final String linkedToEntity = "Location";
-
-        ClassificationDef classificationDef = archiveHelper.getClassificationDef(guid,
-                                                                                 name,
-                                                                                 null,
-                                                                                 description,
-                                                                                 descriptionGUID,
-                                                                                 this.archiveBuilder.getEntityDef(linkedToEntity),
-                                                                                 false);
-
-        /*
-         * Build the attributes
-         */
-        ArrayList<TypeDefAttribute> properties = new ArrayList<>();
-        TypeDefAttribute            property;
-
-        final String attribute1Name            = "description";
-        final String attribute1Description     = "Description of the security at this location.";
-        final String attribute1DescriptionGUID = null;
-        final String attribute2Name            = "level";
-        final String attribute2Description     = "Level of security at this location.";
-        final String attribute2DescriptionGUID = null;
-
-        property = archiveHelper.getStringTypeDefAttribute(attribute1Name, attribute1Description, attribute1DescriptionGUID);
-        properties.add(property);
-        property = archiveHelper.getStringTypeDefAttribute(attribute2Name, attribute2Description, attribute2DescriptionGUID);
-        properties.add(property);
-
-        classificationDef.setPropertiesDefinition(properties);
-
-        return classificationDef;
-    }
-
-
-    private ClassificationDef getCyberLocationClassification()
-    {
-        final String guid            = "f9ec3633-8ac8-480b-aa6d-5e674b9e1b17";
-        final String name            = "CyberLocation";
-        final String description     = "A digital

<TRUNCATED>

[45/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedAssetProperties.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedAssetProperties.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedAssetProperties.java
deleted file mode 100644
index 2ed017e..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedAssetProperties.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-
-import org.apache.atlas.ocf.ffdc.PropertyServerException;
-
-
-/**
- * RelatedAssetProperties returns detailed information about an asset that is related to a connected asset.
- *
- * It is a generic interface for all types of open metadata assets.  However, it assumes the asset's metadata model
- * inherits from <b>Asset</b> (see model 0010 in Area 0).
- *
- * The RelatedAssetProperties returns metadata about the asset at three levels of detail:
- * <ul>
- *     <li><b>assetSummary</b> - used for displaying details of the asset in summary lists or hover text</li>
- *     <li><b>assetDetail</b> - used to display all of the information known about the asset with summaries
- *     of the relationships to other metadata entities</li>
- *     <li><b>assetUniverse</b> - used to define the broader context for the asset</li>
- * </ul>
- *
- * RelatedAssetProperties is a base class for the asset information that returns null,
- * for the asset's properties.  Metadata repository implementations extend this class to add their
- * implementation of the refresh() method that calls to the metadata repository to populate the metadata properties.
- */
-public abstract class RelatedAssetProperties extends PropertyBase
-{
-    /*
-     * AssetUniverse extends AssetDetails which extends AssetSummary.  The interaction with the metadata repository
-     * pulls the asset universe in one single network interaction and the caller can then explore the metadata
-     * property by property without incurring many network interactions (unless there are too many instances
-     * of a particular type of property and one of the iterators is forced to use paging).
-     *
-     * If null is returned, the caller is not linked to a metadata repository.
-     */
-    protected  AssetUniverse     assetProperties = null;
-    protected  AssetDescriptor   connectedAsset = null;
-    protected  RelatedAsset      relatedAsset = null;
-
-
-    /**
-     * Typical constructor.
-     *
-     * @param connectedAsset - original top-level asset
-     * @param relatedAsset - asset to extract the full set of properties.
-     */
-    public RelatedAssetProperties(AssetDescriptor  connectedAsset, RelatedAsset  relatedAsset)
-    {
-        /*
-         * Remember the parent asset and details of the related asset to be retrieved.
-         */
-        this.connectedAsset = connectedAsset;
-        this.relatedAsset = relatedAsset;
-    }
-
-
-    /**
-     * Copy/clone constructor*
-     *
-     * @param templateProperties - template to copy
-     */
-    public RelatedAssetProperties(RelatedAssetProperties templateProperties)
-    {
-        if (templateProperties != null)
-        {
-            AssetUniverse   templateAssetUniverse = templateProperties.getAssetUniverse();
-            if (templateAssetUniverse != null)
-            {
-                assetProperties = new AssetUniverse(templateAssetUniverse);
-                connectedAsset = templateProperties.connectedAsset;
-                relatedAsset = templateProperties.relatedAsset;
-            }
-        }
-    }
-
-
-    /**
-     * Returns the summary information organized in the assetSummary structure.
-     *
-     * @return AssetSummary - summary object
-     */
-    public AssetSummary getAssetSummary() { return assetProperties; }
-
-
-
-    /**
-     * Returns detailed information about the asset organized in the assetDetail structure.
-     *
-     * @return AssetDetail - detail object
-     */
-    public AssetDetail getAssetDetail() { return assetProperties; }
-
-
-    /**
-     * Returns all of the detail of the asset and information connected to it in organized in the assetUniverse
-     * structure.
-     *
-     * @return AssetUniverse - universe object
-     */
-    public AssetUniverse getAssetUniverse() { return assetProperties; }
-
-
-    /**
-     * Request the values in the RelatedAssetProperties are refreshed with the current values from the
-     * metadata repository.
-     *
-     * @throws PropertyServerException - there is a problem connecting to the server to retrieve metadata.
-     */
-    public abstract void refresh() throws PropertyServerException;
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "RelatedAssetProperties{" +
-                "assetProperties=" + assetProperties +
-                ", connectedAsset=" + connectedAsset +
-                ", relatedAsset=" + relatedAsset +
-                '}';
-    }
-}
-

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedAssets.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedAssets.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedAssets.java
deleted file mode 100644
index 82634bc..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedAssets.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * RelatedAssets supports an iterator over a list of related assets.  Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class RelatedAssets extends AssetPropertyIteratorBase implements Iterator<RelatedAsset>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public RelatedAssets(AssetDescriptor              parentAsset,
-                         int                          totalElementCount,
-                         int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public RelatedAssets(AssetDescriptor   parentAsset, RelatedAssets    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new RelatedAsset(parentAsset, (RelatedAsset)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract RelatedAssets  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return RelatedAsset - next element object that has been cloned.
-     */
-    @Override
-    public RelatedAsset next()
-    {
-        return (RelatedAsset)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "RelatedAssets{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaReference.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaReference.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaReference.java
deleted file mode 100644
index 8209ee0..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaReference.java
+++ /dev/null
@@ -1,240 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * RelatedMediaReference stores information about an link to an external media file that
- * is relevant to this asset.
- */
-public class RelatedMediaReference extends Referenceable
-{
-    /*
-     * Attributes of a related media reference
-     */
-    private String                       mediaId = null;
-    private String                       linkDescription = null;
-    private String                       displayName = null;
-    private String                       uri = null;
-    private String                       resourceDescription = null;
-    private String                       version = null;
-    private String                       organization = null;
-    private RelatedMediaType             mediaType = null;
-    private ArrayList<RelatedMediaUsage> mediaUsageList = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param mediaId the reference identifier for this asset's related media.
-     * @param linkDescription - description of the reference (with respect to this asset).
-     * @param displayName - consumable name
-     * @param uri - the URI used to retrieve the resource for this media reference.
-     * @param resourceDescription - the description of this external media.
-     * @param version - the version of the resource that this external reference represents.
-     * @param organization - the name of the organization that owns the resource that this external reference represents.
-     * @param mediaType - the type of media referenced
-     * @param mediaUsageList - List of ways the media may be used
-     */
-    public RelatedMediaReference(AssetDescriptor              parentAsset,
-                                 ElementType                  type,
-                                 String                       guid,
-                                 String                       url,
-                                 Classifications              classifications,
-                                 String                       qualifiedName,
-                                 AdditionalProperties         additionalProperties,
-                                 Meanings                     meanings,
-                                 String                       mediaId,
-                                 String                       linkDescription,
-                                 String                       displayName,
-                                 String                       uri,
-                                 String                       resourceDescription,
-                                 String                       version,
-                                 String                       organization,
-                                 RelatedMediaType             mediaType,
-                                 ArrayList<RelatedMediaUsage> mediaUsageList)
-    {
-        super(parentAsset, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-        this.mediaId = mediaId;
-        this.linkDescription = linkDescription;
-        this.displayName = displayName;
-        this.uri = uri;
-        this.resourceDescription = resourceDescription;
-        this.version = version;
-        this.organization = organization;
-        this.mediaType = mediaType;
-        this.mediaUsageList = mediaUsageList;
-    }
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateRelatedMediaReference - element to copy
-     */
-    public RelatedMediaReference(AssetDescriptor       parentAsset,
-                                 RelatedMediaReference templateRelatedMediaReference)
-    {
-        /*
-         * Initialize the super class.
-         */
-        super(parentAsset, templateRelatedMediaReference);
-
-        if (templateRelatedMediaReference != null)
-        {
-            /*
-             * Copy the values from the supplied template.
-             */
-            mediaId = templateRelatedMediaReference.getMediaId();
-            linkDescription = templateRelatedMediaReference.getLinkDescription();
-            displayName = templateRelatedMediaReference.getDisplayName();
-            uri = templateRelatedMediaReference.getURI();
-            resourceDescription = templateRelatedMediaReference.getResourceDescription();
-            version = templateRelatedMediaReference.getVersion();
-            organization = templateRelatedMediaReference.getOrganization();
-            mediaType = templateRelatedMediaReference.getMediaType();
-
-            List<RelatedMediaUsage> templateMediaUsageList = templateRelatedMediaReference.getMediaUsageList();
-            if (templateMediaUsageList != null)
-            {
-                mediaUsageList = new ArrayList<RelatedMediaUsage>(templateMediaUsageList);
-            }
-        }
-    }
-
-
-    /**
-     * Return the identifier given to this reference (with respect to this asset).
-     *
-     * @return String mediaId
-     */
-    public String getMediaId() { return mediaId; }
-
-
-    /**
-     * Return the description of the reference (with respect to this asset).
-     *
-     * @return String link description.
-     */
-    public String getLinkDescription() { return linkDescription; }
-
-
-    /**
-     * Return the display name of this media reference.
-     *
-     * @return String display name.
-     */
-    public String getDisplayName() { return displayName; }
-
-
-    /**
-     * Return the URI used to retrieve the resource for this media reference.
-     *
-     * @return String URI
-     */
-    public String getURI() { return uri; }
-
-
-    /**
-     * Return the description of this external media.
-     *
-     * @return String resource description
-     */
-    public String getResourceDescription() { return resourceDescription; }
-
-
-    /**
-     * Return the version of the resource that this media reference represents.
-     *
-     * @return String version
-     */
-    public String getVersion() { return version; }
-
-
-    /**
-     * Return the name of the organization that owns the resource that this external reference represents.
-     *
-     * @return String organization name
-     */
-    public String getOrganization() { return organization; }
-
-
-    /**
-     * Return the type of media referenced.
-     *
-     * @return RelatedMediaType
-     */
-    public RelatedMediaType getMediaType() { return mediaType; }
-
-
-    /**
-     * Return the list of recommended usage for the related media.  Null means no usage guidance is available.
-     *
-     * @return List of RelatedMediaUsage
-     */
-    public ArrayList<RelatedMediaUsage> getMediaUsageList()
-    {
-        if (mediaUsageList != null)
-        {
-            return mediaUsageList;
-        }
-        else
-        {
-            return new ArrayList<RelatedMediaUsage>(mediaUsageList);
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "RelatedMediaReference{" +
-                "mediaId='" + mediaId + '\'' +
-                ", linkDescription='" + linkDescription + '\'' +
-                ", displayName='" + displayName + '\'' +
-                ", uri='" + uri + '\'' +
-                ", resourceDescription='" + resourceDescription + '\'' +
-                ", version='" + version + '\'' +
-                ", organization='" + organization + '\'' +
-                ", mediaType=" + mediaType +
-                ", mediaUsageList=" + mediaUsageList +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaReferences.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaReferences.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaReferences.java
deleted file mode 100644
index b4e0d5a..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaReferences.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * RelatedMediaReferences supports an iterator over a list of related media references.  Callers can use it to step
- * through the list just once.  If they want to parse the list again, they could use the copy/clone constructor to
- * create a new iterator.
- */
-public abstract class RelatedMediaReferences extends AssetPropertyIteratorBase implements Iterator<RelatedMediaReference>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public RelatedMediaReferences(AssetDescriptor              parentAsset,
-                                  int                          totalElementCount,
-                                  int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public RelatedMediaReferences(AssetDescriptor   parentAsset, RelatedMediaReferences    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new RelatedMediaReference(parentAsset, (RelatedMediaReference)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract RelatedMediaReferences  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return RelatedMediaReference - next element object that has been cloned.
-     */
-    @Override
-    public RelatedMediaReference next()
-    {
-        return (RelatedMediaReference)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "RelatedMediaReferences{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaType.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaType.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaType.java
deleted file mode 100644
index 7140ff0..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaType.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The RelatedMediaType defines the type of resource referenced in a related media reference.
- * <ul>
- *     <li>Image - The media is an image.</li>
- *     <li>Audio - The media is an audio recording.</li>
- *     <li>Document - The media is a text document - probably rich text.</li>
- *     <li>Video - The media is a video recording.</li>
- *     <li>Other - The media type is not supported.</li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum RelatedMediaType implements Serializable
-{
-    IMAGE(0,    "Image",    "The media is an image."),
-    AUDIO(1,    "Audio",    "The media is an audio recording."),
-    DOCUMENT(2, "Document", "The media is a text document - probably rich text."),
-    VIDEO(3,    "Video",    "The media is a video recording."),
-    OTHER(99,   "Other",    "The media type is not supported.");
-
-    private static final long     serialVersionUID = 1L;
-
-    private int            mediaTypeCode;
-    private String         mediaTypeName;
-    private String         mediaTypeDescription;
-
-
-    /**
-     * Typical Constructor
-     */
-    RelatedMediaType(int     mediaTypeCode, String   mediaTypeName, String    mediaTypeDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.mediaTypeCode = mediaTypeCode;
-        this.mediaTypeName = mediaTypeName;
-        this.mediaTypeDescription = mediaTypeDescription;
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - media type code
-     */
-    public int getMediaUsageCode()
-    {
-        return mediaTypeCode;
-    }
-
-
-    /**
-     * Return the default name for this enum instance.
-     *
-     * @return String - default name
-     */
-    public String getMediaUsageName()
-    {
-        return mediaTypeName;
-    }
-
-
-    /**
-     * Return the default description for this enum instance.
-     *
-     * @return String - default description
-     */
-    public String getMediaTypeDescription()
-    {
-        return mediaTypeDescription;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaUsage.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaUsage.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaUsage.java
deleted file mode 100644
index 29c6e79..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/RelatedMediaUsage.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The RelatedMediaUsage defines how a related media reference can be used in conjunction with the asset properties.
- * These usage options are not mutually exclusive.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum RelatedMediaUsage implements Serializable
-{
-    ICON           (0, "Icon", "Provides a small image to represent the asset in tree views and graphs."),
-    THUMBNAIL      (1, "Thumbnail", "Provides a small image about the asset that can be used in lists."),
-    ILLUSTRATION   (2, "Illustration", "Illustrates how the asset works or what it contains. It is complementary to the asset's description."),
-    USAGE_GUIDANCE (3, "Usage Guidance", "Provides guidance to a person on how to use the asset."),
-    OTHER          (99, "Other", "Another usage.");
-
-    private static final long     serialVersionUID = 1L;
-
-    private int            mediaUsageCode;
-    private String         mediaUsageName;
-    private String         mediaUsageDescription;
-
-
-    /**
-     * Typical Constructor
-     */
-    RelatedMediaUsage(int     mediaUsageCode, String   mediaUsageName, String   mediaUsageDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.mediaUsageCode = mediaUsageCode;
-        this.mediaUsageName = mediaUsageName;
-        this.mediaUsageDescription = mediaUsageDescription;
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - media usage code
-     */
-    public int getMediaUsageCode()
-    {
-        return mediaUsageCode;
-    }
-
-
-    /**
-     * Return the default name for this enum instance.
-     *
-     * @return String - default name
-     */
-    public String getMediaUsageName()
-    {
-        return mediaUsageName;
-    }
-
-
-    /**
-     * Return the default description for the media usage pattern for this enum instance.
-     *
-     * @return String - default description
-     */
-    public String getMediaUsageDescription()
-    {
-        return mediaUsageDescription;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "RelatedMediaUsage{" +
-                "mediaUsageCode=" + mediaUsageCode +
-                ", mediaUsageName='" + mediaUsageName + '\'' +
-                ", mediaUsageDescription='" + mediaUsageDescription + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Schema.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Schema.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Schema.java
deleted file mode 100644
index 5904fd5..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Schema.java
+++ /dev/null
@@ -1,245 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * The Schema object provides information about how the asset structures the data it supports.  Schemas are typically
- * described as nested structures of linked schema elements.  Schemas can also be reused in other schemas.
- *
- * The schema object can be used to represent a Struct, Array, Set or Map.
- * <ul>
- *     <li>
- *         A Struct has an ordered list of attributes - the position of an attribute is set up as one of its properties.
- *     </li>
- *     <li>
- *         An Array has one schema attribute and a maximum size plus element count.
- *     </li>
- *     <li>
- *         A Set also has one schema attribute and a maximum size plus element count.
- *     </li>
- *     <li>
- *         A Map is a Set of MapSchemaElements
- *     </li>
- * </ul>
- */
-public class Schema extends SchemaElement
-{
-    /*
-     * Properties specific to a Schema
-     */
-    SchemaType                schemaType  = SchemaType.UNKNOWN;
-    SchemaAttributes          schemaAttributes = null;
-    int                       maximumElements = 0;
-    SchemaLinks               schemaLinks = null;
-
-
-    /**
-     * Typical constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param versionNumber - the version number of the schema element - null means no version number.
-     * @param author - the name of the author of the schema element. Null means the author is unknown.
-     * @param usage - the usage guidance for this schema element.  Null means no guidance available.
-     * @param encodingStandard - encoding standard used for this schema.  It may be XML, JSON, SQL DDL or something else.
-     *                           Null means the encoding standard is unknown or there are many choices.
-     * @param schemaType - Struct, Array or Set
-     * @param schemaAttributes - the list of schema attributes in this schema.
-     * @param maximumElements - the maximum elements that can be stored in this schema.  This is set up by the caller.
-     * Zero means not bounded.  For a STRUCT the max elements are the number of elements in
-     * the structure.
-     * @param schemaLinks - a list of any links that exist between the schema attributes of this schema (or others).
-     * These links are typically used for network type schemas such as a graph schema - or may be used to show
-     * linkage to an element in another schema.
-     */
-    public Schema(AssetDescriptor      parentAsset,
-                  ElementType          type,
-                  String               guid,
-                  String               url,
-                  Classifications      classifications,
-                  String               qualifiedName,
-                  AdditionalProperties additionalProperties,
-                  Meanings             meanings,
-                  String               versionNumber,
-                  String               author,
-                  String               usage,
-                  String               encodingStandard,
-                  SchemaType           schemaType,
-                  SchemaAttributes     schemaAttributes,
-                  int                  maximumElements,
-                  SchemaLinks          schemaLinks)
-    {
-        super(parentAsset,
-              type,
-              guid,
-              url,
-              classifications,
-              qualifiedName,
-              additionalProperties,
-              meanings,
-              versionNumber,
-              author,
-              usage,
-              encodingStandard);
-
-        this.schemaType = schemaType;
-        this.schemaAttributes = schemaAttributes;
-        this.maximumElements = maximumElements;
-        this.schemaLinks = schemaLinks;
-    }
-
-    /**
-     * Copy/clone Constructor - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the definitions clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param parentAsset - description of the asset that this schema is attached to.
-     * @param templateSchema - template object to copy.
-     */
-    public Schema(AssetDescriptor  parentAsset, Schema templateSchema)
-    {
-        super(parentAsset, templateSchema);
-
-        if (templateSchema != null)
-        {
-            SchemaAttributes          templateSchemaAttributes = templateSchema.getSchemaAttributes();
-
-            if (templateSchemaAttributes != null)
-            {
-                schemaAttributes = templateSchemaAttributes.cloneIterator(parentAsset);
-            }
-            schemaType  = templateSchema.getSchemaType();
-            maximumElements = templateSchema.getMaximumElements();
-
-            SchemaLinks              templateSchemaLinks = templateSchema.getSchemaLinks();
-
-            if (templateSchemaLinks != null)
-            {
-                schemaLinks = templateSchemaLinks.cloneIterator(parentAsset);
-            }
-        }
-    }
-
-
-    /**
-     * Return the type of the schema.
-     *
-     * @return SchemaType
-     */
-    public SchemaType getSchemaType() { return schemaType; }
-
-
-    /**
-     * Return the list of schema attributes in this schema.
-     *
-     * @return SchemaAttributes
-     */
-    public SchemaAttributes getSchemaAttributes()
-    {
-        if (schemaAttributes == null)
-        {
-            return schemaAttributes;
-        }
-        else
-        {
-            return schemaAttributes.cloneIterator(super.getParentAsset());
-        }
-    }
-
-
-    /**
-     * Return the maximum elements that can be stored in this schema.  This is set up by the caller.
-     * Zero means not bounded.  For a STRUCT the max elements are the number of elements in
-     * the structure.
-     *
-     * @return int maximum number of elements
-     */
-    public int getMaximumElements()
-    {
-        if (schemaType == SchemaType.STRUCT)
-        {
-            maximumElements = schemaAttributes.getElementCount();
-        }
-
-        return maximumElements;
-    }
-
-
-    /**
-     * Return a list of any links that exist between the schema attributes of this schema (or others).
-     * These links are typically used for network type schemas such as a grpah schema - or may be used to show
-     * linkage to an element in another schema.
-     *
-     * @return SchemaLinks - list of linked schema attributes
-     */
-    public SchemaLinks getSchemaLinks()
-    {
-        if (schemaLinks == null)
-        {
-            return schemaLinks;
-        }
-        else
-        {
-            return schemaLinks.cloneIterator(super.getParentAsset());
-        }
-    }
-
-
-    /**
-     * Returns a clone of this object as the abstract SchemaElement class.
-     *
-     * @param parentAsset - description of the asset that this schema element is attached to.
-     * @return a copy of this schema as a SchemaElement
-     */
-    @Override
-    public SchemaElement cloneSchemaElement(AssetDescriptor parentAsset)
-    {
-        return new Schema(parentAsset, this);
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Schema{" +
-                "schemaType=" + schemaType +
-                ", schemaAttributes=" + schemaAttributes +
-                ", maximumElements=" + maximumElements +
-                ", schemaLinks=" + schemaLinks +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaAttribute.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaAttribute.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaAttribute.java
deleted file mode 100644
index bdf234f..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaAttribute.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * <p>
- *     SchemaAttribute describes a single attribute within a schema.  The attribute has a name, order in the
- *     schema and cardinality.
- *     Its type is another SchemaElement (either Schema or PrimitiveSchemaElement).
- * </p>
- * <p>
- *     If it is a PrimitiveSchemaElement it may have an override for the default value within.
- * </p>
- */
-public class SchemaAttribute extends AssetPropertyBase
-{
-    String          attributeName = null;
-    int             elementPosition = 0;
-    String          cardinality = null;
-    String          defaultValueOverride = null;
-    SchemaElement   attributeType = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - description of the asset that this schema attribute is attached to.
-     * @param attributeName - the name of this attribute
-     * @param elementPosition -  position in schema - 0 means first
-     * @param cardinality -  cardinality defined for this schema attribute.
-     * @param defaultValueOverride - default value for this attribute that would override the default defined in the
-     * schema element for this attribute's type (note only used is type is primitive).
-     * @param attributeType - the SchemaElement that relates to the type of this attribute.
-     */
-    public SchemaAttribute(AssetDescriptor parentAsset,
-                           String          attributeName,
-                           int             elementPosition,
-                           String          cardinality,
-                           String          defaultValueOverride,
-                           SchemaElement   attributeType)
-    {
-        super(parentAsset);
-
-        this.attributeName = attributeName;
-        this.elementPosition = elementPosition;
-        this.cardinality = cardinality;
-        this.defaultValueOverride = defaultValueOverride;
-        this.attributeType = attributeType;
-    }
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - description of the asset that this schema attribute is attached to.
-     * @param template - template schema attribute to copy.
-     */
-    public SchemaAttribute(AssetDescriptor   parentAsset, SchemaAttribute   template)
-    {
-        super(parentAsset, template);
-
-        if (template != null)
-        {
-            attributeName = template.getAttributeName();
-            elementPosition = template.getElementPosition();
-            cardinality = template.getCardinality();
-            defaultValueOverride = template.getDefaultValueOverride();
-
-            SchemaElement  templateAttributeType = template.getAttributeType();
-            if (templateAttributeType != null)
-            {
-                /*
-                 * SchemaElement is an abstract class with a placeholder method to clone an object
-                 * of its sub-class.  When cloneSchemaElement() is called, the implementation in the
-                 * sub-class is called.
-                 */
-                attributeType = templateAttributeType.cloneSchemaElement(parentAsset);
-            }
-        }
-    }
-
-
-    /**
-     * Return the name of this schema attribute.
-     *
-     * @return String attribute name
-     */
-    public String getAttributeName() { return attributeName; }
-
-
-    /**
-     * Return the position of this schema attribute in its parent schema.
-     *
-     * @return int position in schema - 0 means first
-     */
-    public int getElementPosition() { return elementPosition; }
-
-
-    /**
-     * Return the cardinality defined for this schema attribute.
-     *
-     * @return String cardinality defined for this schema attribute.
-     */
-    public String getCardinality() { return cardinality; }
-
-
-    /**
-     * Return any default value for this attribute that would override the default defined in the
-     * schema element for this attribute's type (note only used is type is primitive).
-     *
-     * @return String default value override
-     */
-    public String getDefaultValueOverride() { return defaultValueOverride; }
-
-
-    /**
-     * Return the SchemaElement that relates to the type of this attribute.
-     *
-     * @return SchemaElement
-     */
-    public SchemaElement getAttributeType()
-    {
-        if (attributeType == null)
-        {
-            return attributeType;
-        }
-        else
-        {
-            return attributeType.cloneSchemaElement(super.getParentAsset());
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaAttributes.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaAttributes.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaAttributes.java
deleted file mode 100644
index a595427..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaAttributes.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * SchemaAttributes supports an iterator over a list of schema attribute elements that make up a schema.
- * Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class SchemaAttributes extends AssetPropertyIteratorBase implements Iterator<SchemaAttribute>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public SchemaAttributes(AssetDescriptor              parentAsset,
-                            int                          totalElementCount,
-                            int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public SchemaAttributes(AssetDescriptor   parentAsset, SchemaAttributes    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new SchemaAttribute(parentAsset, (SchemaAttribute)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract SchemaAttributes  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return SchemaAttribute - next element object that has been cloned.
-     */
-    @Override
-    public SchemaAttribute next()
-    {
-        return (SchemaAttribute)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "SchemaAttributes{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaElement.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaElement.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaElement.java
deleted file mode 100644
index 79d4dcc..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaElement.java
+++ /dev/null
@@ -1,173 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * <p>
- *     The SchemaElement object provides a base class for the pieces that make up a schema for a data asset.
- *     A schema provides information about how the data is structured in the asset.  Schemas are typically
- *     described as nested structures of linked schema elements.  Schemas can also be reused in other schemas.
- * </p>
- *     SchemaElement is an abstract class - used to enable the most accurate and precise mapping of the
- *     elements in a schema to the asset.
- *     <ul>
- *         <li>PrimitiveSchemaElement is for a leaf element in a schema.</li>
- *         <li>Schema is a complex structure of nested schema elements.</li>
- *         <li>MapSchemaElement is for an attribute of type Map</li>
- *     </ul>
- *     Most assets will be linked to a Schema.
- * <p>
- *     Schema elements can be linked to one another using SchemaLink.
- * </p>
- */
-public abstract class SchemaElement extends Referenceable
-{
-    private String              versionNumber = null;
-    private String              author = null;
-    private String              usage = null;
-    private String              encodingStandard = null;
-
-
-    /**
-     * Typical constructor
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object.
-     * @param meanings - list of glossary terms (summary)
-     * @param versionNumber - the version number of the schema element - null means no version number.
-     * @param author - the name of the author of the schema element. Null means the author is unknown.
-     * @param usage - the usage guidance for this schema element.  Null means no guidance available.
-     * @param encodingStandard - encoding standard used for this schema.  It may be XML, JSON, SQL DDL or something else.
-     *                           Null means the encoding standard is unknown or there are many choices.
-     */
-    public SchemaElement(AssetDescriptor      parentAsset,
-                         ElementType          type,
-                         String               guid,
-                         String               url,
-                         Classifications      classifications,
-                         String               qualifiedName,
-                         AdditionalProperties additionalProperties,
-                         Meanings             meanings,
-                         String               versionNumber,
-                         String               author,
-                         String               usage,
-                         String               encodingStandard)
-    {
-        super(parentAsset, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-
-        this.versionNumber = versionNumber;
-        this.author = author;
-        this.usage = usage;
-        this.encodingStandard = encodingStandard;
-    }
-
-
-    /**
-     * Copy/clone Constructor - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the definitions clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param parentAsset - description of the asset that this schema element is attached to.
-     * @param templateSchema - template object to copy.
-     */
-    public SchemaElement(AssetDescriptor  parentAsset, SchemaElement templateSchema)
-    {
-        super(parentAsset, templateSchema);
-
-        if (templateSchema != null)
-        {
-            versionNumber = templateSchema.getVersionNumber();
-            author = templateSchema.getAuthor();
-            usage = templateSchema.getUsage();
-            encodingStandard = templateSchema.getEncodingStandard();
-        }
-    }
-
-
-    /**
-     * Return a clone of this schema element.  This method is needed because schema element
-     * is abstract.
-     *
-     * @param parentAsset - description of the asset that this schema element is attached to.
-     * @return Either a Schema or a PrimitiveSchemaElement depending on the type of the template.
-     */
-    public abstract SchemaElement   cloneSchemaElement(AssetDescriptor  parentAsset);
-
-
-    /**
-     * Return the version number of the schema element - null means no version number.
-     *
-     * @return String version number
-     */
-    public String getVersionNumber() { return versionNumber; }
-
-
-    /**
-     * Return the name of the author of the schema element.  Null means the author is unknown.
-     *
-     * @return String author name
-     */
-    public String getAuthor() { return author; }
-
-
-    /**
-     * Return the usage guidance for this schema element. Null means no guidance available.
-     *
-     * @return String usage guidance
-     */
-    public String getUsage() { return usage; }
-
-
-    /**
-     * Return the format (encoding standard) used for this schema.  It may be XML, JSON, SQL DDL or something else.
-     * Null means the encoding standard is unknown or there are many choices.
-     *
-     * @return String encoding standard
-     */
-    public String getEncodingStandard() { return encodingStandard; }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "SchemaElement{" +
-                "versionNumber='" + versionNumber + '\'' +
-                ", author='" + author + '\'' +
-                ", usage='" + usage + '\'' +
-                ", encodingStandard='" + encodingStandard + '\'' +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaImplementationQueries.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaImplementationQueries.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaImplementationQueries.java
deleted file mode 100644
index 23ecd0f..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaImplementationQueries.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * SchemaImplementationQuery supports an iterator over a list of schema query elements that make up a
- * formula for a derived schema element.
- * Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class SchemaImplementationQueries extends AssetPropertyIteratorBase implements Iterator<SchemaImplementationQuery>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public SchemaImplementationQueries(AssetDescriptor              parentAsset,
-                                       int                          totalElementCount,
-                                       int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public SchemaImplementationQueries(AssetDescriptor   parentAsset, SchemaImplementationQueries    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new SchemaImplementationQuery(parentAsset, (SchemaImplementationQuery) template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract SchemaImplementationQueries  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return SchemaImplementationQuery - next element object that has been cloned.
-     */
-    @Override
-    public SchemaImplementationQuery next()
-    {
-        return (SchemaImplementationQuery)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "SchemaImplementationQueries{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaImplementationQuery.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaImplementationQuery.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaImplementationQuery.java
deleted file mode 100644
index fdfb4ce..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaImplementationQuery.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * SchemaImplementationQuery defines a query on a schema attribute that returns all or part of the value for a
- * derived field.
- */
-public class SchemaImplementationQuery extends AssetPropertyBase
-{
-    private   int              queryId = 0;
-    private   String           query = null;
-    private   String           queryType = null;
-    private   SchemaAttribute  queryTargetElement = null;
-
-
-    /**
-     * Typical Constructor - sets attributes to null.
-     *
-     * @param parentAsset - description of the asset that this schema query is attached to.
-     * @param queryId - int query identifier - this is used to identify where the results of this query should be plugged into
-     *                 the other queries or the formula for the parent derived schema element.
-     * @param query - query string for this element.  The query string may have placeholders for values returned
-     *                by queries that have a lower queryId than this element.
-     * @param queryType - the name of the query language used in the query.
-     * @param queryTargetElement - the SchemaAttribute that describes the type of the data source that
-     *                           will be queried to get the derived value.
-     */
-    public SchemaImplementationQuery(AssetDescriptor parentAsset, int queryId, String query, String queryType, SchemaAttribute queryTargetElement)
-    {
-        super(parentAsset);
-
-        this.queryId = queryId;
-        this.query = query;
-        this.queryType = queryType;
-        this.queryTargetElement = queryTargetElement;
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - description of the asset that this schema query is attached to.
-     * @param template - template schema query to copy.
-     */
-    public SchemaImplementationQuery(AssetDescriptor   parentAsset, SchemaImplementationQuery   template)
-    {
-        super(parentAsset, template);
-
-        if (template != null)
-        {
-            queryId = template.getQueryId();
-            query = template.getQuery();
-            queryType = template.getQueryType();
-
-            SchemaAttribute    templateQueryTargetElement = template.getQueryTargetElement();
-            if (templateQueryTargetElement != null)
-            {
-                queryTargetElement = new SchemaAttribute(super.getParentAsset(), templateQueryTargetElement);
-            }
-        }
-    }
-
-
-    /**
-     * Return the query id - this is used to identify where the results of this query should be plugged into
-     * the other queries or the formula for the parent derived schema element.
-     *
-     * @return int query identifier
-     */
-    public int getQueryId() { return queryId; }
-
-
-    /**
-     * Return the query string for this element.  The query string may have placeholders for values returned
-     * by queries that have a lower queryId than this element.
-     *
-     * @return String query
-     */
-    public String getQuery() { return query; }
-
-
-    /**
-     * Return the name of the query language used in the query.
-     *
-     * @return queryType String
-     */
-    public String getQueryType() { return queryType; }
-
-
-    /**
-     * Return the SchemaAttribute that describes the type of the data source that will be queried to get the
-     * derived value.
-     *
-     * @return SchemaAttribute
-     */
-    public SchemaAttribute getQueryTargetElement()
-    {
-        if (queryTargetElement == null)
-        {
-            return queryTargetElement;
-        }
-        else
-        {
-            return new SchemaAttribute(super.getParentAsset(), queryTargetElement);
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "SchemaImplementationQuery{" +
-                "queryId=" + queryId +
-                ", query='" + query + '\'' +
-                ", queryType='" + queryType + '\'' +
-                ", queryTargetElement=" + queryTargetElement +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaLink.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaLink.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaLink.java
deleted file mode 100644
index b182e63..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaLink.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-
-import java.util.ArrayList;
-
-/**
- * SchemaLink defines a relationship between 2 SchemaElements.  It is used in network type schemas such as a graph.
- */
-public class SchemaLink extends AssetPropertyBase
-{
-    /*
-     * Attributes from the relationship
-     */
-    private String               linkGUID = null;
-    private String               linkType = null;
-
-    /*
-     * Attributes specific to SchemaLink
-     */
-    private String               linkName             = null;
-    private AdditionalProperties linkProperties       = null;
-    private ArrayList<String>    linkedAttributeGUIDs = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param linkGUID - the identifier of the schema link.
-     * @param linkType - the type of the link - this is related to the type of the schema it is a part of.
-     * @param linkName - the name of the schema link.
-     * @param linkProperties - the list of properties associated with this schema link.
-     * @param linkedAttributeGUIDs - GUIDs for either end of the link - return as an iterator.
-     */
-    public SchemaLink(AssetDescriptor      parentAsset,
-                      String               linkGUID,
-                      String               linkType,
-                      String               linkName,
-                      AdditionalProperties linkProperties,
-                      ArrayList<String>    linkedAttributeGUIDs)
-    {
-        super(parentAsset);
-
-        this.linkGUID = linkGUID;
-        this.linkType = linkType;
-        this.linkName = linkName;
-        this.linkProperties = linkProperties;
-        this.linkedAttributeGUIDs = linkedAttributeGUIDs;
-    }
-
-
-    /**
-     * Copy/clone constructor - makes a copy of the supplied object.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - template object to copy
-     */
-    public SchemaLink(AssetDescriptor parentAsset, SchemaLink template)
-    {
-        super(parentAsset, template);
-
-        if (template != null)
-        {
-            linkGUID = template.getLinkGUID();
-            linkName = template.getLinkName();
-            linkType = template.getLinkType();
-
-            AdditionalProperties   templateLinkProperties = template.getLinkProperties();
-            if (templateLinkProperties != null)
-            {
-                linkProperties = new AdditionalProperties(super.getParentAsset(), templateLinkProperties);
-            }
-
-            linkedAttributeGUIDs = template.getLinkedAttributeGUIDs();
-        }
-    }
-
-
-    /**
-     * Return the identifier for the schema link.
-     *
-     * @return String guid
-     */
-    public String getLinkGUID() { return linkGUID; }
-
-
-    /**
-     * Return the type of the link - this is related to the type of the schema it is a part of.
-     *
-     * @return String link type
-     */
-    public String getLinkType() { return linkType; }
-
-
-    /**
-     * Return the name of this link
-     *
-     * @return String name
-     */
-    public String getLinkName() { return linkName; }
-
-
-    /**
-     * Return the list of properties associated with this schema link.
-     *
-     * @return AdditionalProperties
-     */
-    public AdditionalProperties getLinkProperties()
-    {
-        if (linkProperties == null)
-        {
-            return linkProperties;
-        }
-        else
-        {
-            return new AdditionalProperties(super.getParentAsset(), linkProperties);
-        }
-    }
-
-
-    /**
-     * Return the GUIDs of the schema attributes that this link connects together.
-     *
-     * @return SchemaAttributeGUIDs - GUIDs for either end of the link - return as a list.
-     */
-    public ArrayList<String> getLinkedAttributeGUIDs()
-    {
-        if (linkedAttributeGUIDs == null)
-        {
-            return linkedAttributeGUIDs;
-        }
-        else
-        {
-            return new ArrayList<>(linkedAttributeGUIDs);
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "SchemaLink{" +
-                "linkGUID='" + linkGUID + '\'' +
-                ", linkType='" + linkType + '\'' +
-                ", linkName='" + linkName + '\'' +
-                ", linkProperties=" + linkProperties +
-                ", linkedAttributeGUIDs=" + linkedAttributeGUIDs +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaLinks.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaLinks.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaLinks.java
deleted file mode 100644
index 68f9286..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaLinks.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * SchemaLinks supports an iterator over a list of schema attribute links for a schema.
- * Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class SchemaLinks extends AssetPropertyIteratorBase implements Iterator<SchemaLink>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public SchemaLinks(AssetDescriptor              parentAsset,
-                       int                          totalElementCount,
-                       int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public SchemaLinks(AssetDescriptor   parentAsset, SchemaLinks    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new SchemaLink(parentAsset, (SchemaLink)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract SchemaLinks  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return SchemaLink - next element object that has been cloned.
-     */
-    @Override
-    public SchemaLink next()
-    {
-        return (SchemaLink)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "SchemaLinks{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaType.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaType.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaType.java
deleted file mode 100644
index 5faf10d..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/SchemaType.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * SchemaType describes the type of schema element.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum SchemaType implements Serializable
-{
-    UNKNOWN (0, "<Unknown>", "The schema type is unknown."),
-    STRUCT  (1, "Struct"   , "The schema type is a structure containing a list of properties of potentially different types."),
-    ARRAY   (2, "Array"    , "The schema type is a structure containing an ordered list of properties all of the same type."),
-    SET     (3, "Set"      , "The schema type is a structure containing an unordered collection of properties, all of the same type.");
-
-    private int      schemaTypeCode;
-    private String   schemaTypeName;
-    private String   schemaTypeDescription;
-
-    private static final long     serialVersionUID = 1L;
-
-    /**
-     * Constructor to set up the instance of this enum.
-     *
-     * @param schemaTypeCode - code number
-     * @param schemaTypeName - default name
-     * @param schemaTypeDescription - default description
-     */
-    SchemaType(int schemaTypeCode, String schemaTypeName, String schemaTypeDescription)
-    {
-        this.schemaTypeCode = schemaTypeCode;
-        this.schemaTypeName = schemaTypeName;
-        this.schemaTypeDescription = schemaTypeDescription;
-    }
-
-
-    /**
-     * Return the code for this enum used for indexing based on the enum value.
-     *
-     * @return int code number
-     */
-    public int getSchemaTypeCode()
-    {
-        return schemaTypeCode;
-    }
-
-
-    /**
-     * Return the default name for this enum type.
-     *
-     * @return String name
-     */
-    public String getSchemaTypeName()
-    {
-        return schemaTypeName;
-    }
-
-
-    /**
-     * Return the default description for this enum.
-     *
-     * @return String description
-     */
-    public String getSchemaTypeDescription()
-    {
-        return schemaTypeDescription;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "SchemaType{" +
-                "schemaTypeCode=" + schemaTypeCode +
-                ", schemaTypeName='" + schemaTypeName + '\'' +
-                ", schemaTypeDescription='" + schemaTypeDescription + '\'' +
-                '}';
-    }
-}


[23/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditLog.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditLog.java b/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditLog.java
deleted file mode 100644
index 46ea3e3..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditLog.java
+++ /dev/null
@@ -1,228 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.auditlog;
-
-
-import org.apache.atlas.omrs.auditlog.store.OMRSAuditLogRecord;
-import org.apache.atlas.omrs.auditlog.store.OMRSAuditLogRecordOriginator;
-import org.apache.atlas.omrs.auditlog.store.OMRSAuditLogReportingComponent;
-import org.apache.atlas.omrs.auditlog.store.OMRSAuditLogStore;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * OMRSAuditLog is a class for managing the audit logging of activity for the OMRS components.  Each auditing component
- * will have their own instance of an OMRSAuditLog. OMRSAuditLog will ensure audit log records are written to
- * disk in the common OMRSAuditLog for this local server.
- *
- * There are different levels of log record to cover all of the activity of the OMRS.
- *
- * This audit log is critical to validate the behavior of the OMRS, particularly in the initial interaction of
- * a new metadata repository to the OMRS Cohort.
- */
-public class OMRSAuditLog
-{
-    static private final OMRSAuditLogRecordOriginator   originator         = new OMRSAuditLogRecordOriginator();
-    static private       ArrayList<OMRSAuditLogStore>   auditLogStores     = null;
-
-    private static final Logger log = LoggerFactory.getLogger(OMRSAuditLog.class);
-
-    private              OMRSAuditLogReportingComponent reportingComponent;   /* Initialized in the constructor */
-
-
-    /**
-     * Initialize the static values used in all log records.  These values help to pin-point the source of messages
-     * when audit log records from many servers are consolidated into centralized operational tooling.
-     *
-     * @param localServerName - name of the local server
-     * @param localServerType - type of the local server
-     * @param localOrganizationName - name of the organization that owns the local server
-     * @param auditLogStores - list of destinations for the audit log records
-     */
-    public static void  initialize(String                  localServerName,
-                                   String                  localServerType,
-                                   String                  localOrganizationName,
-                                   List<OMRSAuditLogStore> auditLogStores)
-    {
-        OMRSAuditLog.originator.setServerName(localServerName);
-        OMRSAuditLog.originator.setServerType(localServerType);
-        OMRSAuditLog.originator.setOrganizationName(localOrganizationName);
-
-        if (auditLogStores != null)
-        {
-            OMRSAuditLog.auditLogStores = new ArrayList<>(auditLogStores);
-        }
-    }
-
-
-    /**
-     * Set up the local metadata collection Id.  This is null if there is no local repository.
-     *
-     * @param localMetadataCollectionId - String unique identifier for the metadata collection
-     */
-    public static void setLocalMetadataCollectionId(String              localMetadataCollectionId)
-    {
-        OMRSAuditLog.originator.setMetadataCollectionId(localMetadataCollectionId);
-    }
-
-
-    /**
-     * Typical constructor - Each component using the Audit log will create their own OMRSAuditLog instance and
-     * will push log records to it.
-     *
-     * @param componentId - numerical identifier for the component.
-     * @param componentName - display name for the component.
-     * @param componentDescription - description of the component.
-     * @param componentWikiURL - link to more information.
-     */
-    public OMRSAuditLog(int    componentId,
-                        String componentName,
-                        String componentDescription,
-                        String componentWikiURL)
-    {
-        this.reportingComponent = new OMRSAuditLogReportingComponent(componentId,
-                                                                     componentName,
-                                                                     componentDescription,
-                                                                     componentWikiURL);
-    }
-
-
-    /**
-     * External constructor - used to create an audit log for a component outside of OMRS
-     *
-     * @param reportingComponent - information about the component that will use this instance of the audit log.
-     */
-    public OMRSAuditLog(OMRSAuditingComponent reportingComponent)
-    {
-        this.reportingComponent = new OMRSAuditLogReportingComponent(reportingComponent.getComponentId(),
-                                                                     reportingComponent.getComponentName(),
-                                                                     reportingComponent.getComponentDescription(),
-                                                                     reportingComponent.getComponentWikiURL());
-    }
-
-
-    /**
-     * Log an audit log record for an event, decision, error, or exception detected by the OMRS.
-     *
-     * @param actionDescription - description of the activity creating the audit log record
-     * @param logMessageId - id for the audit log record
-     * @param severity - is this an event, decision, error or exception?
-     * @param logMessage - description of the audit log record including specific resources involved
-     * @param additionalInformation - additional data to help resolve issues of verify behavior
-     * @param systemAction - the related action taken by the OMRS.
-     * @param userAction - details of any action that an administrator needs to take.
-     */
-    public void logRecord(String                      actionDescription,
-                          String                      logMessageId,
-                          OMRSAuditLogRecordSeverity  severity,
-                          String                      logMessage,
-                          String                      additionalInformation,
-                          String                      systemAction,
-                          String                      userAction)
-    {
-        if (severity != null)
-        {
-            if ((severity == OMRSAuditLogRecordSeverity.ERROR) || (severity == OMRSAuditLogRecordSeverity.EXCEPTION))
-            {
-                log.error(logMessageId + " " + logMessage, actionDescription, logMessageId, severity, logMessage, additionalInformation, systemAction, userAction);
-            }
-            else
-            {
-                log.info(logMessageId + " " + logMessage, actionDescription, logMessageId, severity, logMessage, additionalInformation, systemAction, userAction);
-            }
-        }
-        else
-        {
-            severity = OMRSAuditLogRecordSeverity.UNKNOWN;
-        }
-
-        if (auditLogStores != null)
-        {
-            for (OMRSAuditLogStore  auditLogStore : auditLogStores)
-            {
-                if (auditLogStore != null)
-                {
-                    List<String> additionalInformationArray = null;
-
-                    if (additionalInformation != null)
-                    {
-                        additionalInformationArray = new ArrayList<>();
-                        additionalInformationArray.add(additionalInformation);
-                    }
-
-                    OMRSAuditLogRecord logRecord = new OMRSAuditLogRecord(originator,
-                                                                          reportingComponent,
-                                                                          severity.getSeverityName(),
-                                                                          logMessageId,
-                                                                          logMessage,
-                                                                          additionalInformationArray,
-                                                                          systemAction,
-                                                                          userAction);
-                    try
-                    {
-                        auditLogStore.storeLogRecord(logRecord);
-                    }
-                    catch (Throwable error)
-                    {
-                        log.error("Error writing audit log: ", logRecord, error);
-                    }
-                }
-            }
-        }
-    }
-
-
-    /**
-     * Log details of an unexpected exception detected by the OMRS.  These exceptions typically mean that the local
-     * server is not configured correctly, or there is a logic error in the code.  When exceptions are logged, it is
-     * important that they are investigated and the cause corrected since the local repository is not able to operate
-     * as a proper peer in the metadata repository cluster whilst these conditions persist.
-     *
-     * @param actionDescription - description of the activity in progress when the error occurred
-     * @param logMessageId - id for the type of exception caught
-     * @param severity - severity of the error
-     * @param logMessage - description of the exception including specific resources involved
-     * @param additionalInformation - additional data to help resolve issues of verify behavior
-     * @param systemAction - the action taken by the OMRS in response to the error.
-     * @param userAction - details of any action that an administrator needs to take.
-     * @param caughtException - the original exception.
-     */
-    public void logException(String                      actionDescription,
-                             String                      logMessageId,
-                             OMRSAuditLogRecordSeverity  severity,
-                             String                      logMessage,
-                             String                      additionalInformation,
-                             String                      systemAction,
-                             String                      userAction,
-                             Throwable                   caughtException)
-    {
-        if (caughtException != null)
-        {
-            this.logRecord(actionDescription,
-                           logMessageId,
-                           severity,
-                           logMessage,
-                           additionalInformation + caughtException.toString(),
-                           systemAction,
-                           userAction);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditLogRecordSeverity.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditLogRecordSeverity.java b/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditLogRecordSeverity.java
deleted file mode 100644
index 61b1e16..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditLogRecordSeverity.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.auditlog;
-
-/**
- * OMRSAuditLogRecordSeverity defines the different levels of severity for log records stored in the OMRSAuditLogRecord.
- * <ul>
- *     <li>
- *         UNKNOWN - Uninitialized Severity - if this is seen then there is a logic error in the audit log processing.
- *     </li>
- *     <li>
- *         INFO - An activity occurred as part of the normal operation of the open metadata repository.
- *     </li>
- *     <li>
- *         EVENT - An OMRS Event was sent to or received from members of an open metadata repository cohort.
- *     </li>
- *     <li>
- *         DECISION - A decision has been made related to the interaction of the local metadata repository and the
- *         rest of the open metadata repository cohort.
- *     </li>
- *     <li>
- *         ACTION - A situation has been detected that requires administrator intervention.
- *     </li>
- *     <li>
- *         ERROR - An unexpected error occurred, possibly caused by an incompatibility between the local metadata repository
- *         and one of the remote repositories.  The local repository may restrict some of the metadata interchange
- *         functions as a result.
- *     </li>
- *     <li>
- *         EXCEPTION - Unexpected exception occurred.  This means that the local repository needs some administration
- *         attention to correct configuration or fix a logic error because it is not operating as a proper peer in the
- *         metadata repository cluster.
- *     </li>
- * </ul>
- */
-public enum OMRSAuditLogRecordSeverity
-{
-    UNKNOWN   (0, "<Unknown>",   "Uninitialized Severity."),
-    INFO      (1, "Information", "The server is providing information about its normal operation."),
-    EVENT     (2, "Event",       "An OMRSEvent was exchanged amongst members of the metadata repository cohort."),
-    DECISION  (3, "Decision",    "A decision has been made related to the interaction of the local metadata repository and the rest of the cohort."),
-    ACTION    (4, "Action",      "Action is required by the administrator.  " +
-                                 "At a minimum, the situation needs to be investigated and if necessary, corrective action taken."),
-    ERROR     (5, "Error",       "An error occurred, possibly caused by an incompatibility between the local metadata repository \n" +
-                                 "and one of the remote repositories.  " +
-                                 "The local repository may restrict some of the metadata interchange \n" +
-                                 "functions as a result."),
-    EXCEPTION (6, "Exception",   "Unexpected exception occurred.  This means that the local repository needs some administration\n" +
-                                 " attention to correct configuration or fix a logic error because it is not operating as a proper peer in the\n" +
-                                 " metadata repository cohort.");
-
-
-    private  int    severityCode;
-    private  String severityName;
-    private  String severityDescription;
-
-
-    /**
-     * Typical constructor sets up the selected enum value.
-     *
-     * @param severityCode - numeric of this enum.
-     * @param severityName - name of enum.
-     * @param severityDescription - default description of enum..
-     */
-    OMRSAuditLogRecordSeverity(int      severityCode,
-                               String   severityName,
-                               String   severityDescription)
-    {
-        this.severityCode = severityCode;
-        this.severityName = severityName;
-        this.severityDescription = severityDescription;
-    }
-
-    /**
-     * Return the code for this enum.
-     *
-     * @return int numeric for this enum
-     */
-    public int getSeverityCode()
-    {
-        return severityCode;
-    }
-
-
-    /**
-     * Return the name of this enum.
-     *
-     * @return String name
-     */
-    public String getSeverityName()
-    {
-        return severityName;
-    }
-
-
-    /**
-     * Return the default description of this enum.  This description is in English.  Natural language translations can be
-     * created using a Resource Bundle indexed by the severity code.  This description is a fall back when the resource
-     * bundle is not available.
-     *
-     * @return String default description
-     */
-    public String getSeverityDescription()
-    {
-        return severityDescription;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditingComponent.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditingComponent.java b/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditingComponent.java
deleted file mode 100644
index 5e1e33b..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditingComponent.java
+++ /dev/null
@@ -1,261 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.auditlog;
-
-import org.apache.atlas.omrs.admin.OMRSConfigurationFactory;
-import org.apache.atlas.omrs.admin.OMRSOperationalServices;
-import org.apache.atlas.omrs.archivemanager.OMRSArchiveManager;
-import org.apache.atlas.omrs.enterprise.connectormanager.OMRSEnterpriseConnectorManager;
-import org.apache.atlas.omrs.enterprise.repositoryconnector.EnterpriseOMRSRepositoryConnector;
-import org.apache.atlas.omrs.eventmanagement.OMRSRepositoryEventManager;
-import org.apache.atlas.omrs.localrepository.repositoryconnector.LocalOMRSInstanceEventProcessor;
-import org.apache.atlas.omrs.localrepository.repositoryconnector.LocalOMRSRepositoryConnector;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryContentManager;
-import org.apache.atlas.omrs.metadatahighway.OMRSMetadataHighwayManager;
-import org.apache.atlas.omrs.metadatahighway.cohortregistry.OMRSCohortRegistry;
-import org.apache.atlas.omrs.metadatahighway.cohortregistry.store.OMRSCohortRegistryStore;
-import org.apache.atlas.omrs.eventmanagement.OMRSEventListener;
-import org.apache.atlas.omrs.eventmanagement.OMRSEventPublisher;
-import org.apache.atlas.omrs.metadatahighway.OMRSCohortManager;
-import org.apache.atlas.omrs.rest.repositoryconnector.OMRSRESTRepositoryConnector;
-import org.apache.atlas.omrs.rest.server.OMRSRepositoryRESTServices;
-import org.apache.atlas.omrs.topicconnectors.OMRSTopicConnector;
-
-
-/**
- * OMRSAuditingComponent provides identifying and background information about the components writing log records
- * to the OMRS Audit log.  This is to help someone reading the OMRS Audit Log understand the records.
- */
-public enum OMRSAuditingComponent
-{
-    UNKNOWN (0,
-             "<Unknown>", "Uninitialized component name", null, null),
-
-    AUDIT_LOG (1,
-             "Audit Log",
-             "Reads and writes records to the Open Metadata Repository Services (OMRS) audit log.",
-             OMRSAuditLog.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Audit+Log"),
-
-    CONFIGURATION_FACTORY (2,
-             "Configuration Factory",
-             "Generates default values for the Open Metadata Repository Services (OMRS) configuration.",
-             OMRSConfigurationFactory.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Configuration+Factory"),
-
-    OPERATIONAL_SERVICES (3,
-             "Operational Services",
-             "Supports the administration services for the Open Metadata Repository Services (OMRS).",
-             OMRSOperationalServices.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Operational+Services"),
-
-    ARCHIVE_MANAGER (4,
-             "Archive Manager",
-             "Manages the loading of Open Metadata Archives into an open metadata repository.",
-             OMRSArchiveManager.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Archive+Manager"),
-
-    ENTERPRISE_CONNECTOR_MANAGER (5,
-             "Enterprise Connector Manager",
-             "Manages the list of open metadata repositories that the Enterprise OMRS Repository Connector " +
-                                          "should call to retrieve an enterprise view of the metadata collections " +
-                                          "supported by these repositories",
-             OMRSEnterpriseConnectorManager.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Enterprise+Connector+Manager"),
-
-    ENTERPRISE_REPOSITORY_CONNECTOR (6,
-             "Enterprise Repository Connector",
-             "Supports enterprise access to the list of open metadata repositories registered " +
-                                             "with the OMRS Enterprise Connector Manager.",
-             EnterpriseOMRSRepositoryConnector.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/Enterprise+OMRS+Repository+Connector"),
-
-    LOCAL_REPOSITORY_CONNECTOR (7,
-             "Local Repository Connector",
-             "Supports access to metadata stored in the local server's repository and ensures " +
-                                        "repository events are generated when metadata changes in the local repository",
-             LocalOMRSRepositoryConnector.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/Local+OMRS+Repository+Connector"),
-
-    TYPEDEF_MANAGER (8,
-             "Local TypeDef Manager",
-             "Supports an in-memory cache for open metadata type definitions (TypeDefs) used for " +
-                             "verifying TypeDefs in use in other open metadata repositories and for " +
-                             "constructing new metadata instances.",
-             OMRSRepositoryContentManager.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/Local+OMRS+TypeDef+Manager"),
-
-    INSTANCE_EVENT_PROCESSOR (8,
-             "Local Inbound Instance Event Processor",
-             "Supports the loading of reference metadata into the local repository that has come from other members of the local server's cohorts and open metadata archives.",
-             LocalOMRSInstanceEventProcessor.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/Local+OMRS+Instance+Event+Processor"),
-
-    REPOSITORY_EVENT_MANAGER (9,
-             "Repository Event Manager",
-             "Distribute repository events (TypeDefs, Entity and Instance events) between internal OMRS components within a server.",
-             OMRSRepositoryEventManager.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Repository+Event+Manager"),
-
-    REST_SERVICES (10,
-             "Repository REST Services",
-             "Provides the server-side support the the OMRS Repository Services REST API.",
-             OMRSRepositoryRESTServices.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Repository+REST+Services"),
-
-    REST_REPOSITORY_CONNECTOR (11,
-             "REST Repository Connector",
-             "Supports an OMRS Repository Connector for calling the OMRS Repository REST API in a remote " +
-                                       "open metadata repository.",
-             OMRSRESTRepositoryConnector.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+REST+Repository+Connector"),
-
-    METADATA_HIGHWAY_MANAGER (12,
-             "Metadata Highway Manager",
-             "Manages the initialization and shutdown of the components that connector to each of the cohorts that the local server is a member of.",
-             OMRSMetadataHighwayManager.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Metadata+Highway+Manager"),
-
-    COHORT_MANAGER  (13,
-             "Cohort Manager",
-             "Manages the initialization and shutdown of the server's connectivity to a cohort.",
-             OMRSCohortManager.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Cohort+Manager"),
-
-    COHORT_REGISTRY(14,
-             "Cohort Registry",
-             "Manages the registration requests send and received from this local repository.",
-             OMRSCohortRegistry.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Cohort+Registry"),
-
-    REGISTRY_STORE  (15,
-             "Registry Store",
-             "Stores information about the repositories registered in the open metadata repository cohort.",
-             OMRSCohortRegistryStore.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Cohort+Registry+Store"),
-
-    EVENT_PUBLISHER (16,
-             "Event Publisher",
-             "Manages the publishing of events that this repository sends to the OMRS topic.",
-             OMRSEventPublisher.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Event+Publisher"),
-
-    EVENT_LISTENER  (17,
-             "Event Listener",
-             "Manages the receipt of incoming OMRS events.",
-              OMRSEventListener.class.getName(),
-              "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Event+Listener"),
-
-    OMRS_TOPIC_CONNECTOR(18,
-             "OMRS Topic Connector",
-             "Provides access to the OMRS Topic that is used to exchange events between members of a cohort, " +
-                                 "or to notify Open Metadata Access Services (OMASs) of changes to " +
-                                 "metadata in the enterprise.",
-             OMRSTopicConnector.class.getName(),
-             "https://cwiki.apache.org/confluence/display/ATLAS/OMRS+Topic+Connector")
-    ;
-
-
-    private  int      componentId;
-    private  String   componentName;
-    private  String   componentDescription;
-    private  String   componentJavaClass;
-    private  String   componentWikiURL;
-
-
-    /**
-     * Set up the values of the enum.
-     *
-     * @param componentId - code number for the component.
-     * @param componentName - name of the component used in the audit log record.
-     * @param componentDescription - short description of the component.
-     * @param componentJavaClass - name of java class for the component - if logic errors need to be investigated.
-     * @param componentWikiURL - URL link to the description of the component.
-     */
-    OMRSAuditingComponent(int    componentId,
-                          String componentName,
-                          String componentDescription,
-                          String componentJavaClass,
-                          String componentWikiURL)
-    {
-        this.componentId = componentId;
-        this.componentName = componentName;
-        this.componentDescription = componentDescription;
-        this.componentJavaClass = componentJavaClass;
-        this.componentWikiURL = componentWikiURL;
-    }
-
-
-    /**
-     * Return the numerical code for this enum.
-     *
-     * @return int componentId
-     */
-    public int getComponentId()
-    {
-        return componentId;
-    }
-
-
-    /**
-     * Return the name of the component.  This is the name used in the audit log records.
-     *
-     * @return String component name
-     */
-    public String getComponentName()
-    {
-        return componentName;
-    }
-
-
-    /**
-     * Return the short description of the component. This is an English description.  Natural language support for
-     * these values can be added to UIs using a resource bundle indexed with the component Id.  This value is
-     * provided as a default if the resource bundle is not available.
-     *
-     * @return String description
-     */
-    public String getComponentDescription()
-    {
-        return componentDescription;
-    }
-
-
-    /**
-     * Name of the java class supporting this component.  This value is provided for debug and not normally make
-     * available on end user UIs for security reasons.
-     *
-     * @return String fully-qualified java class name
-     */
-    public String getComponentJavaClass()
-    {
-        return componentJavaClass;
-    }
-
-
-    /**
-     * URL link to the wiki page that describes this component.  This provides more information to the log reader
-     * on the operation of the component.
-     *
-     * @return String URL
-     */
-    public String getComponentWikiURL()
-    {
-        return componentWikiURL;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogRecord.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogRecord.java b/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogRecord.java
deleted file mode 100644
index 25ced7d..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogRecord.java
+++ /dev/null
@@ -1,383 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.auditlog.store;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.UUID;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OMRSAuditLogRecord provides a carrier for details about a single log record in the OMRS audit log.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OMRSAuditLogRecord
-{
-    private String                         guid                  = null;
-    private Date                           timeStamp             = new Date();
-    private OMRSAuditLogRecordOriginator   originator            = null;
-    private String                         severity              = null;
-    private OMRSAuditLogReportingComponent reportingComponent    = null;
-    private String                         messageId             = null;
-    private String                         messageText           = null;
-    private List<String>                   additionalInformation = null;
-    private String                         systemAction          = null;
-    private String                         userAction            = null;
-
-
-    /**
-     * Default constructor
-     */
-    public OMRSAuditLogRecord()
-    {
-    }
-
-
-    /**
-     * Audit log records are immutable so the only way to update the values is through the constructor.
-     *
-     * @param originator - details of the originating server
-     * @param reportingComponent - details of the component making the audit log entry.
-     * @param severity - OMRSAuditLogRecordSeverity enum that indicates the severity of log record.
-     * @param messageId - id of the message in the audit log record.
-     * @param messageText - description of the message for the audit log record.
-     * @param additionalInformation - additional properties that help to describe the situation.
-     * @param systemAction - action taken by the system.
-     * @param userAction - followup action that should be taken by the target end user (typically the server
-     *                   administrator).
-     */
-    public OMRSAuditLogRecord(OMRSAuditLogRecordOriginator   originator,
-                              OMRSAuditLogReportingComponent reportingComponent,
-                              String                         severity,
-                              String                         messageId,
-                              String                         messageText,
-                              List<String>                   additionalInformation,
-                              String                         systemAction,
-                              String                         userAction)
-    {
-        this.guid = UUID.randomUUID().toString();
-        this.originator = originator;
-        this.severity = severity;
-        this.reportingComponent = reportingComponent;
-        this.messageId = messageId;
-        this.messageText = messageText;
-        this.additionalInformation = additionalInformation;
-        this.systemAction = systemAction;
-        this.userAction = userAction;
-    }
-
-    /**
-     * Return the unique Id of the audit log record.
-     *
-     * @return String guid
-     */
-    public String getGUID()
-    {
-        return guid;
-    }
-
-
-    /**
-     * Set up the unique Id of the audit log record.
-     *
-     * @param guid - String guid
-     */
-    public void setGUID(String guid)
-    {
-        this.guid = guid;
-    }
-
-
-    /**
-     * Return the time stamp for when the audit log record was created.
-     *
-     * @return Date object
-     */
-    public Date getTimeStamp()
-    {
-        return timeStamp;
-    }
-
-
-    /**
-     * Set up the time stamp for when the audit log record was created.
-     *
-     * @param timeStamp Date object
-     */
-    public void setTimeStamp(Date timeStamp)
-    {
-        this.timeStamp = timeStamp;
-    }
-
-
-    /**
-     * Return details of the originator of the log record.
-     *
-     * @return OMRSAuditLogRecordOriginator object
-     */
-    public OMRSAuditLogRecordOriginator getOriginator()
-    {
-        return originator;
-    }
-
-
-    /**
-     * Set up details of the originator of the log record.
-     *
-     * @param originator
-     */
-    public void setOriginator(OMRSAuditLogRecordOriginator originator)
-    {
-        this.originator = originator;
-    }
-
-    /**
-     * Return the severity of the situation recorded in the log record.
-     *
-     * @return String severity
-     */
-    public String getSeverity()
-    {
-        return severity;
-    }
-
-
-    /**
-     * Set up the severity of the situation recorded in the log record.
-     *
-     * @param severity - String severity
-     */
-    public void setSeverity(String severity)
-    {
-        this.severity = severity;
-    }
-
-
-    /**
-     * Return the name of the component that reported the situation recorded in the log record.
-     *
-     * @return OMRSAuditLogReportingComponent object
-     */
-    public OMRSAuditLogReportingComponent getReportingComponent()
-    {
-        return reportingComponent;
-    }
-
-
-    /**
-     * Set up the name of the component that reported the situation recorded in the log record.
-     *
-     * @param reportingComponent - OMRSAuditLogReportingComponent object
-     */
-    public void setReportingComponent(OMRSAuditLogReportingComponent reportingComponent)
-    {
-        this.reportingComponent = reportingComponent;
-    }
-
-
-    /**
-     * Return the identifier of the message within the log record.
-     *
-     * @return String message id
-     */
-    public String getMessageId()
-    {
-        return messageId;
-    }
-
-
-    /**
-     * Set up  the identifier of the message within the log record.
-     *
-     * @param messageId - String message id
-     */
-    public void setMessageId(String messageId)
-    {
-        this.messageId = messageId;
-    }
-
-
-    /**
-     * Return the text of the message within the log record.
-     *
-     * @return String message text
-     */
-    public String getMessageText()
-    {
-        return messageText;
-    }
-
-
-    /**
-     * Set up the text of the message within the log record.
-     *
-     * @param messageText - String message text
-     */
-    public void setMessageText(String messageText)
-    {
-        this.messageText = messageText;
-    }
-
-
-    /**
-     * Return any additional information in the audit log record.
-     *
-     * @return List of String additional information
-     */
-    public List<String> getAdditionalInformation()
-    {
-        return additionalInformation;
-    }
-
-
-    /**
-     * Set up any additional information in the audit log record.
-     *
-     * @param additionalInformation - List of String additional information
-     */
-    public void setAdditionalInformation(List<String> additionalInformation)
-    {
-        this.additionalInformation = additionalInformation;
-    }
-
-
-    /**
-     * Return the description of the actions taken by the local server as a result of the reported situation.
-     *
-     * @return string description
-     */
-    public String getSystemAction()
-    {
-        return systemAction;
-    }
-
-
-    /**
-     * Set up the description of the actions taken by the local server as a result of the reported situation.
-     *
-     * @param systemAction - a description of the actions taken by the system as a result of the error.
-     */
-    public void setSystemAction(String systemAction)
-    {
-        this.systemAction = systemAction;
-    }
-
-
-    /**
-     * Return details of the actions (if any) that a user can take in response to the reported situation.
-     *
-     * @return String instructions
-     */
-    public String getUserAction()
-    {
-        return userAction;
-    }
-
-
-    /**
-     * Set up details of the actions (if any) that a user can take in response to the reported situation.
-     *
-     * @param userAction - String instructions
-     */
-    public void setUserAction(String userAction)
-    {
-        this.userAction = userAction;
-    }
-
-
-    @Override
-    public String toString()
-    {
-        String    originatorString = null;
-        if (this.originator != null)
-        {
-            originatorString = this.originator.toString();
-        }
-
-        String    reportingComponentString = null;
-        if (this.reportingComponent != null)
-        {
-            reportingComponentString = this.reportingComponent.toString();
-        }
-
-        String    additionalInformationString = null;
-        if (this.additionalInformation != null)
-        {
-            boolean    notFirst = false;
-
-            additionalInformationString = "[ ";
-
-            for (String nugget : additionalInformation)
-            {
-                if (notFirst)
-                {
-                    additionalInformationString = additionalInformationString + ", ";
-                    notFirst = true;
-                }
-
-                additionalInformationString = additionalInformationString + nugget;
-            }
-
-            additionalInformationString = additionalInformationString + " ]";
-        }
-
-        return  "AuditLogRecord { " +
-                    "timestamp : " + timeStamp.toString() + ", " +
-                    "guid : " + guid + ", " +
-                    "originator : " + originatorString + ", " +
-                    "severity : " + severity + ", " +
-                    "reportingComponent : " + reportingComponentString + ", " +
-                    "messageId : " + messageId + ", " +
-                    "messageText : " + messageText + ", " +
-                    "additionalInformation : " + additionalInformationString + ", " +
-                    "systemAction : " + systemAction + ", " +
-                    "userAction : " + userAction + " }";
-    }
-
-    @Override
-    public int hashCode()
-    {
-        return super.hashCode();
-    }
-
-    @Override
-    public boolean equals(Object object)
-    {
-        if (this == object)
-        {
-            return true;
-        }
-        if (object == null || getClass() != object.getClass())
-        {
-            return false;
-        }
-
-        OMRSAuditLogRecord that = (OMRSAuditLogRecord) object;
-
-        return guid.equals(that.guid);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogRecordOriginator.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogRecordOriginator.java b/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogRecordOriginator.java
deleted file mode 100644
index 42cffb7..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogRecordOriginator.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.auditlog.store;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OMRSAuditLogRecordOriginator describes the server that originated an audit log record.  This is useful if
- * an organization is aggregating messages from different servers together.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OMRSAuditLogRecordOriginator
-{
-    private String                   metadataCollectionId = null;
-    private String                   serverName           = null;
-    private String                   serverType           = null;
-    private String                   organizationName     = null;
-
-    /**
-     * Default constructor used by parsing engines and other consumers.
-     */
-    public OMRSAuditLogRecordOriginator()
-    {
-    }
-
-
-    /**
-     * Returns the unique identifier (guid) of the originating repository's metadata collection.
-     *
-     * @return String guid
-     */
-    public String getMetadataCollectionId()
-    {
-        return metadataCollectionId;
-    }
-
-
-    /**
-     * Sets up the unique identifier (guid) of the originating repository.
-     *
-     * @param metadataCollectionId - String guid
-     */
-    public void setMetadataCollectionId(String metadataCollectionId)
-    {
-        this.metadataCollectionId = metadataCollectionId;
-    }
-
-
-    /**
-     * Return the display name for the server that is used in events, messages and UIs to
-     * make it easier for people to understand the origin of metadata.
-     *
-     * @return String server name
-     */
-    public String getServerName()
-    {
-        return serverName;
-    }
-
-
-    /**
-     * Set up the display name for the server that is used in events, messages and UIs to
-     * make it easier for people to understand the origin of metadata.
-     *
-     * @param serverName - String server name
-     */
-    public void setServerName(String serverName)
-    {
-        this.serverName = serverName;
-    }
-
-
-    /**
-     * Return the descriptive string describing the type of the server.  This might be the
-     * name of the product, or similar identifier.
-     *
-     * @return String server type
-     */
-    public String getServerType()
-    {
-        return serverType;
-    }
-
-
-    /**
-     * Set up the descriptive string describing the type of the server.  This might be the
-     * name of the product, or similar identifier.
-     *
-     * @param serverType - String server type
-     */
-    public void setServerType(String serverType)
-    {
-        this.serverType = serverType;
-    }
-
-
-    /**
-     * Return the name of the organization that runs/owns the server.
-     *
-     * @return String organization name
-     */
-    public String getOrganizationName()
-    {
-        return organizationName;
-    }
-
-
-    /**
-     * Set up the name of the organization that runs/owns the server.
-     *
-     * @param organizationName - String organization name
-     */
-    public void setOrganizationName(String organizationName)
-    {
-        this.organizationName = organizationName;
-    }
-
-
-    @Override
-    public String toString()
-    {
-        return  "Originator { " +
-                "metadataCollectionId : " + this.metadataCollectionId + ", " +
-                "serverName : " + this.serverName + ", " +
-                "serverType : " + this.serverType + ", " +
-                "organizationName : " + this.organizationName + " }";
-    }
-
-    @Override
-    public boolean equals(Object o)
-    {
-        if (this == o)
-        {
-            return true;
-        }
-        if (o == null || getClass() != o.getClass())
-        {
-            return false;
-        }
-
-        OMRSAuditLogRecordOriginator that = (OMRSAuditLogRecordOriginator) o;
-
-        if (metadataCollectionId != null ? !metadataCollectionId.equals(that.metadataCollectionId) : that.metadataCollectionId != null)
-        {
-            return false;
-        }
-        if (serverName != null ? !serverName.equals(that.serverName) : that.serverName != null)
-        {
-            return false;
-        }
-        if (serverType != null ? !serverType.equals(that.serverType) : that.serverType != null)
-        {
-            return false;
-        }
-        return organizationName != null ? organizationName.equals(that.organizationName) : that.organizationName == null;
-    }
-
-    @Override
-    public int hashCode()
-    {
-        int result = metadataCollectionId != null ? metadataCollectionId.hashCode() : 0;
-        result = 31 * result + (serverName != null ? serverName.hashCode() : 0);
-        result = 31 * result + (serverType != null ? serverType.hashCode() : 0);
-        result = 31 * result + (organizationName != null ? organizationName.hashCode() : 0);
-        return result;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogReportingComponent.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogReportingComponent.java b/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogReportingComponent.java
deleted file mode 100644
index 47cc2cf..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogReportingComponent.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.auditlog.store;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OMRSAuditLogReportingComponent describes the component issuing the audit log record.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OMRSAuditLogReportingComponent
-{
-    private  int      componentId = 0;
-    private  String   componentName = null;
-    private  String   componentDescription = null;
-    private  String   componentWikiURL = null;
-
-
-    /**
-     * Construct the description of the reporting component.
-     *
-     * @param componentId - numerical identifier for the component.
-     * @param componentName - display name for the component.
-     * @param componentDescription - description of the component.
-     * @param componentWikiURL - link to more information.
-     */
-    public OMRSAuditLogReportingComponent(int componentId,
-                                          String componentName,
-                                          String componentDescription,
-                                          String componentWikiURL)
-    {
-        this.componentId = componentId;
-        this.componentName = componentName;
-        this.componentDescription = componentDescription;
-        this.componentWikiURL = componentWikiURL;
-    }
-
-    /**
-     * Return the numerical code for this enum.
-     *
-     * @return int componentId
-     */
-    public int getComponentId()
-    {
-        return componentId;
-    }
-
-
-    /**
-     * Return the name of the component.  This is the name used in the audit log records.
-     *
-     * @return String component name
-     */
-    public String getComponentName()
-    {
-        return componentName;
-    }
-
-
-    /**
-     * Return the short description of the component. This is an English description.  Natural language support for
-     * these values can be added to UIs using a resource bundle indexed with the component Id.  This value is
-     * provided as a default if the resource bundle is not available.
-     *
-     * @return String description
-     */
-    public String getComponentDescription()
-    {
-        return componentDescription;
-    }
-
-
-    /**
-     * URL link to the wiki page that describes this component.  This provides more information to the log reader
-     * on the operation of the component.
-     *
-     * @return String URL
-     */
-    public String getComponentWikiURL()
-    {
-        return componentWikiURL;
-    }
-
-
-    @Override
-    public String toString()
-    {
-        return  "ReportingComponent { " +
-                "id : " + this.componentId + ", " +
-                "name : " + this.componentName + ", " +
-                "description : " + this.componentDescription + ", " +
-                "url : " + this.componentWikiURL + " }";
-    }
-
-    @Override
-    public boolean equals(Object o)
-    {
-        if (this == o)
-        {
-            return true;
-        }
-        if (o == null || getClass() != o.getClass())
-        {
-            return false;
-        }
-
-        OMRSAuditLogReportingComponent that = (OMRSAuditLogReportingComponent) o;
-
-        if (componentId != that.componentId)
-        {
-            return false;
-        }
-        if (componentName != null ? !componentName.equals(that.componentName) : that.componentName != null)
-        {
-            return false;
-        }
-        if (componentDescription != null ? !componentDescription.equals(that.componentDescription) : that.componentDescription != null)
-        {
-            return false;
-        }
-        return componentWikiURL != null ? componentWikiURL.equals(that.componentWikiURL) : that.componentWikiURL == null;
-    }
-
-    @Override
-    public int hashCode()
-    {
-        int result = componentId;
-        result = 31 * result + (componentName != null ? componentName.hashCode() : 0);
-        result = 31 * result + (componentDescription != null ? componentDescription.hashCode() : 0);
-        result = 31 * result + (componentWikiURL != null ? componentWikiURL.hashCode() : 0);
-        return result;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogStore.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogStore.java b/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogStore.java
deleted file mode 100644
index 8c5e7d8..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogStore.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.auditlog.store;
-
-import org.apache.atlas.omrs.ffdc.exception.PagingErrorException;
-import org.apache.atlas.omrs.ffdc.exception.InvalidParameterException;
-
-import java.util.Date;
-import java.util.List;
-
-/**
- * OMRSAuditLogStore is the specialized data API for an Audit Log connector.
- */
-public interface OMRSAuditLogStore
-{
-    /**
-     * Store the audit log record in the audit log store.
-     *
-     * @param logRecord - log record to store
-     * @return unique identifier assigned to the log record
-     * @throws InvalidParameterException - indicates that the logRecord parameter is invalid.
-     */
-    String storeLogRecord(OMRSAuditLogRecord logRecord) throws InvalidParameterException;
-
-
-    /**
-     * Retrieve a specific audit log record.
-     *
-     * @param logRecordId - unique identifier for the log record
-     * @return requested audit log record
-     * @throws InvalidParameterException - indicates that the logRecordId parameter is invalid.
-     */
-    OMRSAuditLogRecord  getAuditLogRecord(String     logRecordId) throws InvalidParameterException;
-
-
-    /**
-     * Retrieve a list of log records written in a specified time period.  The offset and maximumRecords
-     * parameters support a paging
-     *
-     * @param startDate - start of time period
-     * @param endDate - end of time period
-     * @param offset - offset of full collection to begin the return results
-     * @param maximumRecords - maximum number of log records to return
-     * @return list of log records from the specified time period
-     * @throws InvalidParameterException - indicates that the start and/or end date parameters are invalid.
-     * @throws PagingErrorException - indicates that the offset or the maximumRecords parameters are invalid.
-     */
-    List<OMRSAuditLogRecord> getAuditLogRecordsByTimeStamp(Date    startDate,
-                                                           Date    endDate,
-                                                           int     offset,
-                                                           int     maximumRecords) throws InvalidParameterException,
-                                                                                          PagingErrorException;
-
-    /**
-     * Retrieve a list of log records that have specific severity.  The offset and maximumRecords
-     * parameters support a paging model.
-     *
-     * @param severity - the severity value of messages to return
-     * @param startDate - start of time period
-     * @param endDate - end of time period
-     * @param offset - offset of full collection to begin the return results
-     * @param maximumRecords - maximum number of log records to return
-     * @return list of log records from the specified time period
-     * @throws InvalidParameterException - indicates that the severity, start and/or end date parameters are invalid.
-     * @throws PagingErrorException - indicates that the offset or the maximumRecords parameters are invalid.
-     */
-    List<OMRSAuditLogRecord> getAuditLogRecordsBySeverity(String   severity,
-                                                          Date     startDate,
-                                                          Date     endDate,
-                                                          int      offset,
-                                                          int      maximumRecords) throws InvalidParameterException,
-                                                                                          PagingErrorException;
-
-    /**
-     * Retrieve a list of log records written by a specific component.  The offset and maximumRecords
-     * parameters support a paging model.
-     *
-     * @param component - name of the component to retrieve events from
-     * @param startDate - start of time period
-     * @param endDate - end of time period
-     * @param offset - offset of full collection to begin the return results
-     * @param maximumRecords - maximum number of log records to return
-     * @return list of log records from the specified time period
-     * @throws InvalidParameterException - indicates that the component, start and/or end date parameters are invalid.
-     * @throws PagingErrorException - indicates that the offset or the maximumRecords parameters are invalid.
-     */
-    List<OMRSAuditLogRecord> getAuditLogRecordsByComponent(String   component,
-                                                           Date     startDate,
-                                                           Date     endDate,
-                                                           int      offset,
-                                                           int      maximumRecords) throws InvalidParameterException,
-                                                                                           PagingErrorException;
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogStoreConnectorBase.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogStoreConnectorBase.java b/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogStoreConnectorBase.java
deleted file mode 100644
index eb95e57..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogStoreConnectorBase.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.auditlog.store;
-
-import org.apache.atlas.ocf.ConnectorBase;
-
-/**
- * OMRSAuditLogStoreConnectorBase is the base class for connectors that support the OMRSAuditLog
- */
-public abstract class OMRSAuditLogStoreConnectorBase extends ConnectorBase implements OMRSAuditLogStore
-{
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogStoreProviderBase.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogStoreProviderBase.java b/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogStoreProviderBase.java
deleted file mode 100644
index 4f27767..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/OMRSAuditLogStoreProviderBase.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.auditlog.store;
-
-import org.apache.atlas.ocf.ConnectorProviderBase;
-
-/**
- * The OMRSAuditLogStoreProviderBase provides a base class for the connector provider supporting OMRS
- * audit log stores.  It extends ConnectorProviderBase which does the creation of connector instances.
- * The subclasses of OMRSAuditLogStoreProviderBase must initialize ConnectorProviderBase with the Java class
- * name of the audit log connector implementation (by calling super.setConnectorClassName(className)).
- * Then the connector provider will work.
- */
-public abstract class OMRSAuditLogStoreProviderBase extends ConnectorProviderBase
-{
-    /**
-     * Default Constructor
-     */
-    public OMRSAuditLogStoreProviderBase()
-    {
-        /*
-         * Nothing to do
-         */
-    }
-}
-

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/file/FileBasedAuditLogStoreConnector.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/file/FileBasedAuditLogStoreConnector.java b/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/file/FileBasedAuditLogStoreConnector.java
deleted file mode 100644
index 1914f42..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/file/FileBasedAuditLogStoreConnector.java
+++ /dev/null
@@ -1,187 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.auditlog.store.file;
-
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.omrs.auditlog.store.OMRSAuditLogRecord;
-import org.apache.atlas.omrs.auditlog.store.OMRSAuditLogStoreConnectorBase;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.PagingErrorException;
-import org.apache.atlas.omrs.ffdc.exception.InvalidParameterException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-/**
- * FileBasedAuditLogStoreConnector provides a connector implementation for a file based audit log.
- * The audit log is stored in a directory and each audit log record is stored as a file with a filename build
- * from the record's unique identifier (guid).
- */
-public class FileBasedAuditLogStoreConnector extends OMRSAuditLogStoreConnectorBase
-{
-    private static final Logger log = LoggerFactory.getLogger(FileBasedAuditLogStoreConnector.class);
-
-
-    /**
-     * Default constructor used by the connector provider.
-     */
-    public FileBasedAuditLogStoreConnector()
-    {
-    }
-
-
-    /**
-     * Store the audit log record in the audit log store.
-     *
-     * @param logRecord - log record to store
-     * @return unique identifier assigned to the log record
-     * @throws InvalidParameterException - indicates that the logRecord parameter is invalid.
-     */
-    public String storeLogRecord(OMRSAuditLogRecord logRecord) throws InvalidParameterException
-    {
-        final String   methodName = "storeLogRecord";
-
-        if (logRecord == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_LOG_RECORD;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new InvalidParameterException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("AuditLogRecord: " + logRecord.toString());
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Retrieve a specific audit log record.
-     *
-     * @param logRecordId - unique identifier for the log record
-     * @return requested audit log record
-     * @throws InvalidParameterException - indicates that the logRecordId parameter is invalid.
-     */
-    public OMRSAuditLogRecord  getAuditLogRecord(String     logRecordId) throws InvalidParameterException
-    {
-
-        return null;
-    }
-
-
-    /**
-     * Retrieve a list of log records written in a specified time period.  The offset and maximumRecords
-     * parameters support a paging
-     *
-     * @param startDate - start of time period
-     * @param endDate - end of time period
-     * @param offset - offset of full collection to begin the return results
-     * @param maximumRecords - maximum number of log records to return
-     * @return list of log records from the specified time period
-     * @throws InvalidParameterException - indicates that the start and/or end date parameters are invalid.
-     * @throws PagingErrorException - indicates that the offset or the maximumRecords parameters are invalid.
-     */
-    public ArrayList<OMRSAuditLogRecord> getAuditLogRecordsByTimeStamp(Date    startDate,
-                                                                       Date    endDate,
-                                                                       int     offset,
-                                                                       int     maximumRecords) throws InvalidParameterException,
-                                                                                                      PagingErrorException
-    {
-        return null;
-    }
-
-    /**
-     * Retrieve a list of log records of a specific severity.  The offset and maximumRecords
-     * parameters support a paging model.
-     *
-     * @param severity - the severity value of messages to return
-     * @param startDate - start of time period
-     * @param endDate - end of time period
-     * @param offset - offset of full collection to begin the return results
-     * @param maximumRecords - maximum number of log records to return
-     * @return list of log records from the specified time period
-     * @throws InvalidParameterException - indicates that the severity, start and/or end date parameters are invalid.
-     * @throws PagingErrorException - indicates that the offset or the maximumRecords parameters are invalid.
-     */
-    public ArrayList<OMRSAuditLogRecord> getAuditLogRecordsBySeverity(String   severity,
-                                                                      Date     startDate,
-                                                                      Date     endDate,
-                                                                      int      offset,
-                                                                      int      maximumRecords) throws InvalidParameterException,
-                                                                                                      PagingErrorException
-    {
-        return null;
-    }
-
-
-    /**
-     * Retrieve a list of log records written by a specific component.  The offset and maximumRecords
-     * parameters support a paging model.
-     *
-     * @param component - name of the component to retrieve events from
-     * @param startDate - start of time period
-     * @param endDate - end of time period
-     * @param offset - offset of full collection to begin the return results
-     * @param maximumRecords - maximum number of log records to return
-     * @return list of log records from the specified time period
-     * @throws InvalidParameterException - indicates that the component, start and/or end date parameters are invalid.
-     * @throws PagingErrorException - indicates that the offset or the maximumRecords parameters are invalid.
-     */
-    public List<OMRSAuditLogRecord> getAuditLogRecordsByComponent(String component,
-                                                                  Date   startDate,
-                                                                  Date   endDate,
-                                                                  int    offset,
-                                                                  int    maximumRecords) throws InvalidParameterException,
-                                                                                                PagingErrorException
-    {
-        return null;
-    }
-
-
-    /**
-     * Indicates that the connector is completely configured and can begin processing.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public void start() throws ConnectorCheckedException
-    {
-        super.start();
-    }
-
-
-    /**
-     * Free up any resources held since the connector is no longer needed.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public  void disconnect() throws ConnectorCheckedException
-    {
-        super.disconnect();
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/file/FileBasedAuditLogStoreProvider.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/file/FileBasedAuditLogStoreProvider.java b/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/file/FileBasedAuditLogStoreProvider.java
deleted file mode 100644
index d49045d..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/store/file/FileBasedAuditLogStoreProvider.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.auditlog.store.file;
-
-import org.apache.atlas.omrs.auditlog.store.OMRSAuditLogStoreProviderBase;
-
-/**
- * FileBasedRegistryStoreProvider is the OCF connector provider for the file based cohort registry store.
- */
-public class FileBasedAuditLogStoreProvider extends OMRSAuditLogStoreProviderBase
-{
-    /**
-     * Constructor used to initialize the ConnectorProviderBase with the Java class name of the specific
-     * audit log store implementation.
-     */
-    public FileBasedAuditLogStoreProvider()
-    {
-        Class    connectorClass = FileBasedAuditLogStoreConnector.class;
-
-        super.setConnectorClassName(connectorClass.getName());
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSConnectionConsumer.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSConnectionConsumer.java b/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSConnectionConsumer.java
deleted file mode 100644
index 2a7e6e8..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSConnectionConsumer.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.enterprise.connectormanager;
-
-import org.apache.atlas.ocf.ffdc.ConnectionCheckedException;
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.ocf.properties.Connection;
-
-/**
- * OMRSConnectionConsumer provides the interfaces for a connection consumer.  This is a component that needs to
- * maintain a current list of connections to all of the repositories in the open metadata repository cohort.
- */
-public interface OMRSConnectionConsumer
-{
-    /**
-     * Pass details of the connection for one of the remote repositories registered in a connected
-     * open metadata repository cohort.
-     *
-     * @param cohortName - name of the cohort adding the remote connection.
-     * @param remoteServerName - name of the remote server for this connection.
-     * @param remoteServerType - type of the remote server.
-     * @param owningOrganizationName - name of the organization the owns the remote server.
-     * @param metadataCollectionId - Unique identifier for the metadata collection
-     * @param remoteConnection - Connection object providing properties necessary to create an
-     *                         OMRSRepositoryConnector for the remote repository.
-     * @throws ConnectionCheckedException - there are invalid properties in the Connection
-     * @throws ConnectorCheckedException - there is a problem initializing the Connector
-     */
-    void addRemoteConnection(String         cohortName,
-                             String         remoteServerName,
-                             String         remoteServerType,
-                             String         owningOrganizationName,
-                             String         metadataCollectionId,
-                             Connection     remoteConnection) throws ConnectionCheckedException, ConnectorCheckedException;
-
-
-    /**
-     * Pass details of the connection for the repository that has left one of the open metadata repository cohorts.
-     *
-     * @param cohortName - name of the cohort removing the remote connection.
-     * @param metadataCollectionId - Unique identifier for the metadata collection.
-     */
-    void removeRemoteConnection(String         cohortName,
-                                String         metadataCollectionId);
-
-
-    /**
-     * Remove all of the remote connections for the requested open metadata repository cohort.
-     *
-     * @param cohortName - name of the cohort
-     */
-    void removeCohort(String   cohortName);
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSConnectorConsumer.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSConnectorConsumer.java b/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSConnectorConsumer.java
deleted file mode 100644
index 9ee6246..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSConnectorConsumer.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.enterprise.connectormanager;
-
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-/**
- * OMRSConnectConsumer provides the interfaces for a connector consumer.  This is a component that needs to
- * maintain a current list of connectors to all of the remote repositories in the open metadata repository cohorts that
- * the local server is a member of.
- */
-public interface OMRSConnectorConsumer
-{
-    /**
-     * Pass the connector for the local repository to the connector consumer.
-     *
-     * @param metadataCollectionId - Unique identifier for the metadata collection
-     * @param localConnector - OMRSRepositoryConnector object for the local repository.
-     */
-    void setLocalConnector(String                  metadataCollectionId,
-                           OMRSRepositoryConnector localConnector);
-
-
-    /**
-     * Pass the connector to one of the remote repositories in the metadata repository cohort.
-     *
-     * @param metadataCollectionId - Unique identifier for the metadata collection
-     * @param remoteConnector - OMRSRepositoryConnector object providing access to the remote repository.
-     */
-    void addRemoteConnector(String                  metadataCollectionId,
-                            OMRSRepositoryConnector remoteConnector);
-
-
-    /**
-     * Pass the metadata collection id for a repository that has just left the metadata repository cohort.
-     *
-     * @param metadataCollectionId - identifier of the metadata collection that is no longer available.
-     */
-    void removeRemoteConnector(String  metadataCollectionId);
-
-
-    /**
-     * Call disconnect on all registered connectors and stop calling them.  The OMRS is about to shutdown.
-     */
-    void disconnectAllConnectors();
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSConnectorManager.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSConnectorManager.java b/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSConnectorManager.java
deleted file mode 100644
index 0a767d7..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/enterprise/connectormanager/OMRSConnectorManager.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.enterprise.connectormanager;
-
-
-/**
- * OMRSConnectorManager provides the methods for connector consumers to register with the connector manager.
- */
-public interface OMRSConnectorManager
-{
-    /**
-     * Register the supplied connector consumer with the connector manager.  During the registration
-     * request, the connector manager will pass the connector to the local repository and
-     * the connectors to all currently registered remote repositories.  Once successfully registered
-     * the connector manager will call the connector consumer each time the repositories in the
-     * metadata repository cluster changes.
-     *
-     * @param connectorConsumer OMRSConnectorConsumer interested in details of the connectors to
-     *                           all repositories registered in the metadata repository cluster.
-     * @return String identifier for the connectorConsumer - used for the unregister call.
-     */
-    String registerConnectorConsumer(OMRSConnectorConsumer    connectorConsumer);
-
-
-    /**
-     * Unregister a connector consumer from the connector manager so it is no longer informed of
-     * changes to the metadata repository cluster.
-     *
-     * @param connectorConsumerId String identifier of the connector consumer returned on the
-     *                             registerConnectorConsumer.
-     */
-    void unregisterConnectorConsumer(String   connectorConsumerId);
-}


[11/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RepositoryErrorException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RepositoryErrorException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RepositoryErrorException.java
deleted file mode 100644
index 85d8821..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/RepositoryErrorException.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * RepositoryErrorException provides a checked exception for reporting situations where the metadata
- * repository hosting a metadata collection is unable to perform a request.
- * The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class RepositoryErrorException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating a RepositoryErrorException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public RepositoryErrorException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * RepositoryErrorException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public RepositoryErrorException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/StatusNotSupportedException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/StatusNotSupportedException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/StatusNotSupportedException.java
deleted file mode 100644
index 916edf1..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/StatusNotSupportedException.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * StatusNotSupportedException provides a checked exception for reporting that the metadata repository hosting
- * a metadata collection is not able to support the requested status.
- * The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class StatusNotSupportedException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating an StatusNotSupportedException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public StatusNotSupportedException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in an
-     * StatusNotSupportedException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public StatusNotSupportedException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefConflictException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefConflictException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefConflictException.java
deleted file mode 100644
index 5831538..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefConflictException.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * TypeDefConflictException provides a checked exception for reporting that a typedef can not be added because
- * it conflicts with a TypeDef already stored.  The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class TypeDefConflictException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating a TypeDefConflictException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public TypeDefConflictException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * TypeDefConflictException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public TypeDefConflictException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefInUseException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefInUseException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefInUseException.java
deleted file mode 100644
index 9f9019e..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefInUseException.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * TypeDefInUseException provides a checked exception for reporting that a typedef can not be deleted because there are
- * instances currently using it.  The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class TypeDefInUseException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating an TypeDefInUseException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public TypeDefInUseException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * TypeDefInUseException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public TypeDefInUseException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefKnownException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefKnownException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefKnownException.java
deleted file mode 100644
index 96f2374..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefKnownException.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * TypeDefKnownException provides a checked exception for reporting that a type definition (TypeDef) can not be added because
- * it is already known to the repository.  The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class TypeDefKnownException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating an TypeDefKnownException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public TypeDefKnownException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * TypeDefKnownException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public TypeDefKnownException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefNotKnownException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefNotKnownException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefNotKnownException.java
deleted file mode 100644
index 063dfdc..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefNotKnownException.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * TypeDefNotKnownException provides a checked exception for reporting that a requested typedef can not be found.
- * The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class TypeDefNotKnownException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating a TypeDefNotKnownException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public TypeDefNotKnownException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * TypeDefNotKnownException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public TypeDefNotKnownException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefNotSupportedException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefNotSupportedException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefNotSupportedException.java
deleted file mode 100644
index 46bf124..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeDefNotSupportedException.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * TypeDefNotSupportedException provides a checked exception for reporting that a typedef can not be added because
- * the local repository can not support it.  The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class TypeDefNotSupportedException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating a TypeDefNotSupportedException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public TypeDefNotSupportedException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * TypeDefNotSupportedException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public TypeDefNotSupportedException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeErrorException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeErrorException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeErrorException.java
deleted file mode 100644
index e56f824..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/TypeErrorException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * The TypeErrorException is thrown by an OMRS Connector when the requested type for an instance is not represented by
- * a known TypeDef.
- */
-public class TypeErrorException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a TypeErrorException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public TypeErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a TypeErrorException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public TypeErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/UserNotAuthorizedException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/UserNotAuthorizedException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/UserNotAuthorizedException.java
deleted file mode 100644
index 3404056..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/UserNotAuthorizedException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * The UserNotAuthorizedException is thrown by an OMRS Connector when the supplied UserId is not permitted to
- * perform a specific operation on the metadata collection.
- */
-public class UserNotAuthorizedException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a UserNotAuthorizedException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public UserNotAuthorizedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a UserNotAuthorizedException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public UserNotAuthorizedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/OMRSLocalRepository.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/OMRSLocalRepository.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/OMRSLocalRepository.java
deleted file mode 100644
index 53553f9..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/OMRSLocalRepository.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository;
-
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSInstanceEventProcessor;
-import org.apache.atlas.omrs.eventmanagement.OMRSRepositoryEventManager;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSTypeDefEventProcessor;
-
-
-/**
- * OMRSLocalRepository is an interface used by the OMRS components to retrieve information about the local
- * repository, to register listeners and to get access to the connector for the local repository.
- */
-public interface OMRSLocalRepository
-{
-    /**
-     * Returns the unique identifier (guid) of the local repository's metadata collection.
-     *
-     * @return String guid
-     */
-    String getMetadataCollectionId();
-
-
-    /**
-     * Returns the Connection to the local repository that can be used by remote servers to create
-     * an OMRS repository connector to call this server in order to access the local repository.
-     *
-     * @return Connection object
-     */
-    Connection getLocalRepositoryRemoteConnection();
-
-
-    /**
-     * Return the event manager that the local repository uses to
-     *
-     * @return outbound repository event manager
-     */
-    OMRSRepositoryEventManager getOutboundRepositoryEventManager();
-
-
-    /**
-     * Return the TypeDef event processor that should be passed all incoming TypeDef events received
-     * from the cohorts that this server is a member of.
-     *
-     * @return OMRSTypeDefEventProcessor for the local repository.
-     */
-    OMRSTypeDefEventProcessor getIncomingTypeDefEventProcessor();
-
-
-    /**
-     * Return the instance event processor that should be passed all incoming instance events received
-     * from the cohorts that this server is a member of.
-     *
-     * @return OMRSInstanceEventProcessor for the local repository.
-     */
-    OMRSInstanceEventProcessor getIncomingInstanceEventProcessor();
-
-
-    /**
-     * Return the local server name - used for outbound events.
-     *
-     * @return String name
-     */
-    String getLocalServerName();
-
-
-    /**
-     * Return the local server type - used for outbound events.
-     *
-     * @return String name
-     */
-    String getLocalServerType();
-
-
-    /**
-     * Return the name of the organization that owns this local repository.
-     *
-     * @return String name
-     */
-    String getOrganizationName();
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSConnectorProvider.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSConnectorProvider.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSConnectorProvider.java
deleted file mode 100644
index 4d3ddb4..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSConnectorProvider.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository.repositoryconnector;
-
-import org.apache.atlas.ocf.Connector;
-import org.apache.atlas.ocf.ConnectorBroker;
-import org.apache.atlas.ocf.ConnectorProvider;
-import org.apache.atlas.ocf.ffdc.ConnectionCheckedException;
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.ocf.properties.Connection;
-import org.apache.atlas.omrs.eventmanagement.OMRSRepositoryEventExchangeRule;
-import org.apache.atlas.omrs.eventmanagement.OMRSRepositoryEventManager;
-import org.apache.atlas.omrs.eventmanagement.repositoryeventmapper.OMRSRepositoryEventMapper;
-import org.apache.atlas.omrs.eventmanagement.repositoryeventmapper.OMRSRepositoryEventMapperConnector;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryContentManager;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-import java.util.UUID;
-
-
-/**
- * LocalOMRSConnectorProvider implements the connector provider for LocalOMRSRepositoryConnector.   Since a server only
- * has one LocalOMRSRepositoryConnector, this connector provider returns the singleton connector for the local repository.
- */
-public class LocalOMRSConnectorProvider extends ConnectorProvider
-{
-    private String                             localMetadataCollectionId       = null;
-    private Connection                         localRepositoryRemoteConnection = null;
-    private OMRSRepositoryEventMapperConnector realEventMapper                 = null;
-    private OMRSRepositoryEventManager         outboundRepositoryEventManager  = null;
-    private OMRSRepositoryContentManager       repositoryContentManager        = null;
-    private OMRSRepositoryEventExchangeRule    saveExchangeRule                = null;
-    private LocalOMRSRepositoryConnector       localRepositoryConnector        = null;
-
-
-
-    /**
-     * Constructor used by OMRSOperationalServices during server start-up - it
-     * provides the configuration information about the local server that is used to set up the
-     * local repository connector.
-     *
-     * @param localMetadataCollectionId - metadata collection Id for the local repository
-     * @param localRepositoryRemoteConnection - connection object for creating a remote connector to this repository.
-     * @param realEventMapper - optional event mapper for local repository
-     * @param outboundRepositoryEventManager - event manager to call for outbound events.
-     * @param repositoryContentManager - repositoryContentManager for supporting OMRS in managing TypeDefs.
-     * @param saveExchangeRule - rule to determine what events to save to the local repository.
-     */
-    public LocalOMRSConnectorProvider(String                             localMetadataCollectionId,
-                                      Connection                         localRepositoryRemoteConnection,
-                                      OMRSRepositoryEventMapperConnector realEventMapper,
-                                      OMRSRepositoryEventManager         outboundRepositoryEventManager,
-                                      OMRSRepositoryContentManager       repositoryContentManager,
-                                      OMRSRepositoryEventExchangeRule    saveExchangeRule)
-    {
-        this.localMetadataCollectionId = localMetadataCollectionId;
-        this.localRepositoryRemoteConnection = localRepositoryRemoteConnection;
-        this.realEventMapper = realEventMapper;
-        this.outboundRepositoryEventManager = outboundRepositoryEventManager;
-        this.repositoryContentManager = repositoryContentManager;
-        this.saveExchangeRule = saveExchangeRule;
-    }
-
-
-    /**
-     * Constructor used by the OCF ConnectorBroker.  This approach will result in an exception
-     * when getConnector is called because there is no localMetadataCollectionId (amongst other things).
-     */
-    public LocalOMRSConnectorProvider()
-    {
-    }
-
-
-    /**
-     * Creates a new instance of a connector based on the information in the supplied connection.
-     *
-     * @param realLocalConnection - connection that should have all of the properties needed by the Connector Provider
-     *                              to create a connector instance.
-     * @return Connector - instance of the LocalOMRSRepositoryConnector wrapping the real local connector.
-     * @throws ConnectionCheckedException - if there are missing or invalid properties in the connection
-     * @throws ConnectorCheckedException - if there are issues instantiating or initializing the connector
-     */
-    public synchronized Connector getConnector(Connection realLocalConnection) throws ConnectionCheckedException,
-                                                                                      ConnectorCheckedException
-    {
-        String methodName = "getConnector()";
-
-        if (localMetadataCollectionId == null)
-        {
-            /*
-             * Throw checked exception to indicate that the local repository is not available.  This
-             * is likely to be a configuration error.
-             */
-            OMRSErrorCode errorCode = OMRSErrorCode.LOCAL_REPOSITORY_CONFIGURATION_ERROR;
-            String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage();
-
-            throw new ConnectorCheckedException(errorCode.getHTTPErrorCode(),
-                                                this.getClass().getName(),
-                                                methodName,
-                                                errorMessage,
-                                                errorCode.getSystemAction(),
-                                                errorCode.getUserAction());
-        }
-
-        /*
-         * Only create one instance of the connector
-         */
-        if (localRepositoryConnector == null)
-        {
-            OMRSRepositoryConnector realLocalConnector;
-
-            /*
-             * Any problems creating the connector to the local repository are passed to the caller as exceptions.
-             */
-            ConnectorBroker connectorBroker = new ConnectorBroker();
-            Connector       connector       = connectorBroker.getConnector(realLocalConnection);
-
-            /*
-             * Try casting the returned connector to a repository connector.  This should work unless the connection
-             * passed is for a different type of connector.
-             */
-            try
-            {
-                realLocalConnector = (OMRSRepositoryConnector) connector;
-            }
-            catch (Throwable error)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.BAD_LOCAL_REPOSITORY_CONNECTION;
-                String errorMessage = errorCode.getErrorMessageId()
-                                     + errorCode.getFormattedErrorMessage();
-
-                throw new ConnectionCheckedException(errorCode.getHTTPErrorCode(),
-                                                    this.getClass().getName(),
-                                                    methodName,
-                                                    errorMessage,
-                                                    errorCode.getSystemAction(),
-                                                    errorCode.getUserAction(),
-                                                    error);
-            }
-
-            /*
-             * With the connection to the real local repository established it is possible to create the wrapper
-             * for the local repository.  This wrapper is seen by most OMRS Components as the local repository
-             * connector.  The exceptions are the inbound event processors that work with the real local connector.
-             */
-            localRepositoryConnector = new LocalOMRSRepositoryConnector(realLocalConnector,
-                                                                        realEventMapper,
-                                                                        outboundRepositoryEventManager,
-                                                                        repositoryContentManager,
-                                                                        saveExchangeRule);
-            localRepositoryConnector.initialize(this.getNewConnectorGUID(), localRepositoryRemoteConnection);
-        }
-
-        return localRepositoryConnector;
-    }
-
-
-    /**
-     * Each connector has a guid to make it easier to correlate log messages from the various components that
-     * serve it.  It uses a type 4 (pseudo randomly generated) UUID.
-     * The UUID is generated using a cryptographically strong pseudo random number generator.
-     *
-     * @return guid for a new connector instance
-     */
-    private String  getNewConnectorGUID()
-    {
-        UUID newUUID = UUID.randomUUID();
-
-        return newUUID.toString();
-    }
-}


[24/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchive.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchive.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchive.java
deleted file mode 100644
index 35e3a85..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchive.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.archivemanager.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OpenMetadataArchive defines the structure of the properties inside of an open metadata archive.
- * There are 3 sections:
- * <ul>
- *     <li>
- *         ArchiveProperties - provides details of the source and contents of the archive.
- *     </li>
- *     <li>
- *         TypeStore - a list of new TypeDefs and patches to existing TypeDefs.
- *     </li>
- *     <li>
- *         InstanceStore - a list of new metadata instances (Entities and Relationships).
- *     </li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OpenMetadataArchive
-{
-    private OpenMetadataArchiveProperties    archiveProperties    = null;
-    private OpenMetadataArchiveTypeStore     archiveTypeStore     = null;
-    private OpenMetadataArchiveInstanceStore archiveInstanceStore = null;
-
-
-    /**
-     * Default constructor relies on the initialization of variables in their type declaration.
-     */
-    public OpenMetadataArchive()
-    {
-    }
-
-
-    /**
-     * Return details of the archive.
-     *
-     * @return OpenMetadataArchiveProperties object
-     */
-    public OpenMetadataArchiveProperties getArchiveProperties()
-    {
-        return archiveProperties;
-    }
-
-
-    /**
-     * Set the archive properties for a new archive.
-     *
-     * @param archiveProperties - the descriptive properties of the archive
-     */
-    public void setArchiveProperties(OpenMetadataArchiveProperties archiveProperties)
-    {
-        this.archiveProperties = archiveProperties;
-    }
-
-
-    /**
-     * Return the TypeStore for this archive.  The TypeStore contains TypeDefs and TypeDef patches.
-     *
-     * @return OpenMetadataArchiveTypeStore object
-     */
-    public OpenMetadataArchiveTypeStore getArchiveTypeStore()
-    {
-        return archiveTypeStore;
-    }
-
-
-    /**
-     * Set up the TypeStore for this archive.  The TypeStore contains TypeDefs and TypeDef patches.
-     *
-     * @param archiveTypeStore - OpenMetadataArchiveTypeStore object
-     */
-    public void setArchiveTypeStore(OpenMetadataArchiveTypeStore archiveTypeStore)
-    {
-        this.archiveTypeStore = archiveTypeStore;
-    }
-
-
-    /**
-     * Return the InstanceStore for this archive. The InstanceStore contains entity and relationship metadata
-     * instances.
-     *
-     * @return OpenMetadataArchiveInstanceStore object
-     */
-    public OpenMetadataArchiveInstanceStore getArchiveInstanceStore()
-    {
-        return archiveInstanceStore;
-    }
-
-
-    /**
-     * Set up the InstanceStore for this archive. The InstanceStore contains entity and relationship metadata
-     * instances.
-     *
-     * @param archiveInstanceStore - OpenMetadataArchiveInstanceStore object
-     */
-    public void setArchiveInstanceStore(OpenMetadataArchiveInstanceStore archiveInstanceStore)
-    {
-        this.archiveInstanceStore = archiveInstanceStore;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveInstanceStore.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveInstanceStore.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveInstanceStore.java
deleted file mode 100644
index 0283fb4..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveInstanceStore.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.archivemanager.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityDetail;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.Relationship;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OpenMetadataArchiveInstanceStore defines the contents of the InstanceStore in an open metadata archive.  It
- * consists of a list of entities and a list of relationships.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OpenMetadataArchiveInstanceStore
-{
-    private ArrayList<EntityDetail> entities      = null;
-    private ArrayList<Relationship> relationships = null;
-
-
-    /**
-     * Default constructor relying on the initialization of variables in their declaration.
-     */
-    public OpenMetadataArchiveInstanceStore()
-    {
-    }
-
-
-    /**
-     * Return the list of entities defined in the open metadata archive.
-     *
-     * @return list of entities
-     */
-    public List<EntityDetail> getEntities()
-    {
-        if (entities == null)
-        {
-            return null;
-        }
-        else
-        {
-            return new ArrayList<>(entities);
-        }
-    }
-
-
-    /**
-     * Set up the list of entities defined in the open metadata archive.
-     *
-     * @param entities - list of entities
-     */
-    public void setEntities(List<EntityDetail> entities)
-    {
-        if (entities == null)
-        {
-            this.entities = null;
-        }
-        else
-        {
-            this.entities = new ArrayList<>(entities);
-        }
-    }
-
-
-    /**
-     * Return the list of relationships defined in this open metadata archive.
-     *
-     * @return list of relationships
-     */
-    public List<Relationship> getRelationships()
-    {
-        if (relationships == null)
-        {
-            return null;
-        }
-        else
-        {
-            return new ArrayList<>(relationships);
-        }
-    }
-
-
-    /**
-     * Set up the list of relationships defined in this open metadata archive.
-     *
-     * @param relationships - list of relationship objects
-     */
-    public void setRelationships(List<Relationship> relationships)
-    {
-        if (relationships == null)
-        {
-            this.relationships = null;
-        }
-        else
-        {
-            this.relationships = new ArrayList<>(relationships);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveProperties.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveProperties.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveProperties.java
deleted file mode 100644
index e8a8fab..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveProperties.java
+++ /dev/null
@@ -1,271 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.archivemanager.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OpenMetadataArchiveProperties defines the properties of an open metadata archive.  This includes the following
- * properties:
- * <ul>
- *     <li>
- *         Unique identifier (GUID) of the archive.
- *     </li>
- *     <li>
- *         Archive name.
- *     </li>
- *     <li>
- *         Archive description.
- *     </li>
- *     <li>
- *         Archive Type (CONTENT_PACK or METADATA_EXPORT).
- *     </li>
- *     <li>
- *         Originator name (organization or person).
- *     </li>
- *     <li>
- *         Creation date
- *     </li>
- *     <li>
- *         GUIDs for archives that this archive depends on.
- *     </li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OpenMetadataArchiveProperties
-{
-    private String                  archiveGUID            = null;
-    private String                  archiveName            = null;
-    private String                  archiveDescription     = null;
-    private OpenMetadataArchiveType archiveType            = null;
-    private String                  originatorName         = null;
-    private String                  originatorOrganization = null;
-    private Date                    creationDate           = null;
-    private ArrayList<String>       dependsOnArchives      = null;
-
-
-    /**
-     * Default constructor that relies on initialization of variables in their declaration.
-     */
-    public OpenMetadataArchiveProperties()
-    {
-    }
-
-
-    /**
-     * Return the unique identifier for this archive.
-     *
-     * @return String guid
-     */
-    public String getArchiveGUID()
-    {
-        return archiveGUID;
-    }
-
-
-    /**
-     * Set up the unique identifier for this open metadata archive.
-     *
-     * @param archiveGUID - String guid
-     */
-    public void setArchiveGUID(String archiveGUID)
-    {
-        this.archiveGUID = archiveGUID;
-    }
-
-
-    /**
-     * Return the descriptive name for this open metadata archive.
-     *
-     * @return String name
-     */
-    public String getArchiveName()
-    {
-        return archiveName;
-    }
-
-
-    /**
-     * Set up the descriptive name for this open metadata archive.
-     *
-     * @param archiveName - String name
-     */
-    public void setArchiveName(String archiveName)
-    {
-        this.archiveName = archiveName;
-    }
-
-
-    /**
-     * Return the description for this open metadata archive.
-     *
-     * @return String description
-     */
-    public String getArchiveDescription()
-    {
-        return archiveDescription;
-    }
-
-
-    /**
-     * Set up the description for this open metadata archive.
-     *
-     * @param archiveDescription - String description
-     */
-    public void setArchiveDescription(String archiveDescription)
-    {
-        this.archiveDescription = archiveDescription;
-    }
-
-
-    /**
-     * Return the type of this open metadata archive.
-     *
-     * @return OpenMetadataArchiveType enum
-     */
-    public OpenMetadataArchiveType getArchiveType()
-    {
-        return archiveType;
-    }
-
-
-    /**
-     * Set up the type of this open metadata archive.
-     *
-     * @param archiveType - OpenMetadataArchiveType enum
-     */
-    public void setArchiveType(OpenMetadataArchiveType archiveType)
-    {
-        this.archiveType = archiveType;
-    }
-
-
-    /**
-     * Return the name of the originator of this open metadata archive This will be used as the name of the
-     * creator for each element in the archive.
-     *
-     * @return String name
-     */
-    public String getOriginatorName()
-    {
-        return originatorName;
-    }
-
-
-    /**
-     * Set up the name of the originator of this open metadata archive.  This will be used as the name of the
-     * creator for each element in the archive.
-     *
-     * @param originatorName - String name
-     */
-    public void setOriginatorName(String originatorName)
-    {
-        this.originatorName = originatorName;
-    }
-
-
-    /**
-     * Return the name of the organization that provided this archive.
-     *
-     * @return String organization name
-     */
-    public String getOriginatorOrganization()
-    {
-        return originatorOrganization;
-    }
-
-    /**
-     * Set up the name of the organization that provided this archive.
-     *
-     * @param originatorOrganization - String name
-     */
-    public void setOriginatorOrganization(String originatorOrganization)
-    {
-        this.originatorOrganization = originatorOrganization;
-    }
-
-
-    /**
-     * Return the date that this open metadata archive was created.
-     *
-     * @return Date object
-     */
-    public Date getCreationDate()
-    {
-        return creationDate;
-    }
-
-
-    /**
-     * Set up the date that this open metadata archive was created.
-     *
-     * @param creationDate - Date object
-     */
-    public void setCreationDate(Date creationDate)
-    {
-        this.creationDate = creationDate;
-    }
-
-
-    /**
-     * Return the list of GUIDs for open metadata archives that need to be loaded before this one.
-     *
-     * @return list of guids
-     */
-    public List<String> getDependsOnArchives()
-    {
-        if (dependsOnArchives == null)
-        {
-            return null;
-        }
-        else
-        {
-            return new ArrayList<>(dependsOnArchives);
-        }
-    }
-
-
-    /**
-     * Set up the list of GUIDs for open metadata archives that need to be loaded before this one.
-     *
-     * @param dependsOnArchives - list of guids
-     */
-    public void setDependsOnArchives(List<String> dependsOnArchives)
-    {
-        if (dependsOnArchives == null)
-        {
-            this.dependsOnArchives = null;
-        }
-        else
-        {
-            this.dependsOnArchives = new ArrayList<>(dependsOnArchives);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveType.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveType.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveType.java
deleted file mode 100644
index abe7358..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveType.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.archivemanager.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OpenMetadataArchiveType defines the origin of the open metadata archive.  Content pack means tha the archive contains
- * pre-defined types and instances for a particular use case.  Metadata export is a collection of types and instances
- * from a particular metadata server.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum OpenMetadataArchiveType
-{
-    CONTENT_PACK    (1, "ContentPack",
-                        "A collection of metadata elements that define a standard or support a specific use case."),
-    METADATA_EXPORT (2, "MetadataExport",
-                        "A collection of metadata elements that have been extracted from a specific open metadata repository.");
-
-
-    private int    archiveTypeCode;
-    private String archiveTypeName;
-    private String archiveTypeDescription;
-
-
-    /**
-     * Constructor fo an enum instance.
-     *
-     * @param archiveTypeCode - code number for the archive type
-     * @param archiveTypeName - name for the archive type
-     * @param archiveTypeDescription - default description ofr the archive type
-     */
-    OpenMetadataArchiveType(int archiveTypeCode, String archiveTypeName, String archiveTypeDescription)
-    {
-        this.archiveTypeCode = archiveTypeCode;
-        this.archiveTypeName = archiveTypeName;
-        this.archiveTypeDescription = archiveTypeDescription;
-    }
-
-
-    /**
-     * Return the code number for the archive type.
-     *
-     * @return int code number
-     */
-    public int getArchiveTypeCode()
-    {
-        return archiveTypeCode;
-    }
-
-
-    /**
-     * Return the printable name for the archive type.
-     *
-     * @return String archive type name
-     */
-    public String getArchiveTypeName()
-    {
-        return archiveTypeName;
-    }
-
-
-    /**
-     * Return the default description of the archive type.
-     *
-     * @return String archive description
-     */
-    public String getArchiveTypeDescription()
-    {
-        return archiveTypeDescription;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveTypeStore.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveTypeStore.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveTypeStore.java
deleted file mode 100644
index f46677c..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/properties/OpenMetadataArchiveTypeStore.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.archivemanager.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.AttributeTypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDef;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefPatch;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-
-/**
- * OpenMetadataArchiveTypeStore defines the contents of the TypeStore in an open metadata archive.  The TypeStore
- * contains a list of types used for attributes, a list of type definition (TypeDef) patches to update existing types
- * and a list of TypeDefs for new types of classifications, entities and relationships.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OpenMetadataArchiveTypeStore
-{
-    private ArrayList<AttributeTypeDef> attributeTypeDefs = null;
-    private ArrayList<TypeDefPatch>     typeDefPatches    = null;
-    private ArrayList<TypeDef>          newTypeDefs       = null;
-
-
-    /**
-     * Default constructor for OpenMetadataArchiveTypeStore relies on variables being initialized in their declaration.
-     */
-    public OpenMetadataArchiveTypeStore()
-    {
-    }
-
-
-    /**
-     * Return the list of attribute types used in this archive.
-     *
-     * @return list of AttributeTypeDef objects
-     */
-    public List<AttributeTypeDef> getAttributeTypeDefs()
-    {
-        if (attributeTypeDefs == null)
-        {
-            return null;
-        }
-        else
-        {
-            return new ArrayList<>(attributeTypeDefs);
-        }
-    }
-
-
-    /**
-     * Set up the list of attribute types used in this archive.
-     *
-     * @param attributeTypeDefs - list of AttributeTypeDef objects
-     */
-    public void setAttributeTypeDefs(List<AttributeTypeDef> attributeTypeDefs)
-    {
-        if (attributeTypeDefs == null)
-        {
-            this.attributeTypeDefs = null;
-        }
-        else
-        {
-            this.attributeTypeDefs = new ArrayList<>(attributeTypeDefs);
-        }
-    }
-
-
-    /**
-     * Return the list of TypeDef patches from this archive.
-     *
-     * @return list of TypeDef objects
-     */
-    public List<TypeDefPatch> getTypeDefPatches()
-    {
-        if (typeDefPatches == null)
-        {
-            return null;
-        }
-        else
-        {
-            return new ArrayList<>(typeDefPatches);
-        }
-    }
-
-
-    /**
-     * Set up the list of TypeDef patches from this archive.
-     *
-     * @param typeDefPatches - list of TypeDef objects
-     */
-    public void setTypeDefPatches(List<TypeDefPatch> typeDefPatches)
-    {
-        if (typeDefPatches == null)
-        {
-            this.typeDefPatches =  null;
-        }
-        else
-        {
-            this.typeDefPatches =  new ArrayList<>(typeDefPatches);
-        }
-    }
-
-
-    /**
-     * Return the list of new TypeDefs in this open metadata archive.
-     *
-     * @return list of TypeDef objects
-     */
-    public List<TypeDef> getNewTypeDefs()
-    {
-        if (newTypeDefs == null)
-        {
-            return null;
-        }
-        else
-        {
-            return new ArrayList<>(newTypeDefs);
-        }
-    }
-
-
-    /**
-     * Set up the list of new TypeDefs in this open metadata archive.
-     *
-     * @param newTypeDefs - list of TypeDef objects
-     */
-    public void setNewTypeDefs(List<TypeDef> newTypeDefs)
-    {
-        if (newTypeDefs == null)
-        {
-            this.newTypeDefs = null;
-        }
-        else
-        {
-            this.newTypeDefs = new ArrayList<>(newTypeDefs);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/OpenMetadataArchiveStore.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/OpenMetadataArchiveStore.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/OpenMetadataArchiveStore.java
deleted file mode 100644
index 510fd70..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/OpenMetadataArchiveStore.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.archivemanager.store;
-
-
-import org.apache.atlas.omrs.archivemanager.properties.OpenMetadataArchive;
-
-/**
- * <p>
- * OpenMetadataArchiveStore is the interface for a connector to an open metadata archive.  The open metadata archive
- * is a collection of type definitions (TypeDefs) and metadata instances (Entities and Relationships) that can be
- * loaded into an open metadata repository.
- * </p>
- * <p>
- *     An open metadata archive has 3 sections:
- * </p>
- * <ul>
- *     <li>
- *         Archive properties
- *     </li>
- *     <li>
- *         Type store - ordered list of types
- *     </li>
- *     <li>
- *         Instance store - list of entities and relationships
- *     </li>
- * </ul>
- */
-public interface OpenMetadataArchiveStore
-{
-    /**
-     * Return the contents of the archive.
-     *
-     * @return OpenMetadataArchive object
-     */
-    OpenMetadataArchive getArchiveContents();
-
-
-    /**
-     * Set new contents into the archive.  This overrides any content previously stored.
-     *
-     * @param archiveContents - OpenMetadataArchive object
-     */
-    void setArchiveContents(OpenMetadataArchive   archiveContents);
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/OpenMetadataArchiveStoreConnector.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/OpenMetadataArchiveStoreConnector.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/OpenMetadataArchiveStoreConnector.java
deleted file mode 100644
index 0de3e33..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/OpenMetadataArchiveStoreConnector.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.archivemanager.store;
-
-import org.apache.atlas.ocf.ConnectorBase;
-
-/**
- * OpenMetadataArchiveStoreConnector is the base class for connectors that support the OpenMetadataArchiveStore
- */
-public abstract class OpenMetadataArchiveStoreConnector extends ConnectorBase implements OpenMetadataArchiveStore
-{
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/OpenMetadataArchiveStoreProviderBase.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/OpenMetadataArchiveStoreProviderBase.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/OpenMetadataArchiveStoreProviderBase.java
deleted file mode 100644
index 463dd10..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/OpenMetadataArchiveStoreProviderBase.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.archivemanager.store;
-
-import org.apache.atlas.ocf.ConnectorProviderBase;
-
-/**
- * The OpenMetadataArchiveProviderStoreBase provides a base class for the connector provider supporting OMRS
- * open metadata archive stores.  It extends ConnectorProviderBase which does the creation of connector instances.
- * The subclasses of OpenMetadataArchiveStoreProviderBase must initialize ConnectorProviderBase with the Java class
- * name of the audit log connector implementation (by calling super.setConnectorClassName(className)).
- * Then the connector provider will work.
- */
-public abstract class OpenMetadataArchiveStoreProviderBase extends ConnectorProviderBase
-{
-    /**
-     * Default Constructor
-     */
-    public OpenMetadataArchiveStoreProviderBase()
-    {
-        /*
-         * Nothing to do
-         */
-    }
-}
-

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/file/FileBasedOpenMetadataArchiveStoreConnector.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/file/FileBasedOpenMetadataArchiveStoreConnector.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/file/FileBasedOpenMetadataArchiveStoreConnector.java
deleted file mode 100644
index e4828f3..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/file/FileBasedOpenMetadataArchiveStoreConnector.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.archivemanager.store.file;
-
-import com.fasterxml.jackson.databind.ObjectMapper;
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.ocf.properties.Connection;
-import org.apache.atlas.ocf.properties.Endpoint;
-import org.apache.atlas.omrs.archivemanager.properties.OpenMetadataArchive;
-import org.apache.atlas.omrs.archivemanager.store.OpenMetadataArchiveStoreConnector;
-import org.apache.commons.io.FileUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-import java.io.IOException;
-
-public class FileBasedOpenMetadataArchiveStoreConnector extends OpenMetadataArchiveStoreConnector
-{
-    /*
-     * This is the default name of the open metadata archive file that is used if there is no file name in the connection.
-     */
-    private static final String defaultFilename = "open.metadata.archive";
-
-    /*
-     * Variables used in writing to the file.
-     */
-    private String archiveStoreName = null;
-
-    /*
-     * Variables used for logging and debug.
-     */
-    private static final Logger log = LoggerFactory.getLogger(FileBasedOpenMetadataArchiveStoreConnector.class);
-
-
-    /**
-     * Default constructor
-     */
-    public FileBasedOpenMetadataArchiveStoreConnector()
-    {
-    }
-
-
-    @Override
-    public void initialize(String connectorInstanceId, Connection connection)
-    {
-        super.initialize(connectorInstanceId, connection);
-
-        Endpoint endpoint = connection.getEndpoint();
-
-        if (endpoint != null)
-        {
-            archiveStoreName = endpoint.getAddress();
-        }
-
-        if (archiveStoreName == null)
-        {
-            archiveStoreName = defaultFilename;
-        }
-    }
-
-
-    /**
-     * Return the contents of the archive.
-     *
-     * @return OpenMetadataArchive object
-     */
-    public OpenMetadataArchive getArchiveContents()
-    {
-        File                archiveStoreFile     = new File(archiveStoreName);
-        OpenMetadataArchive newOpenMetadataArchive;
-
-        try
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Retrieving server configuration properties");
-            }
-
-            String configStoreFileContents = FileUtils.readFileToString(archiveStoreFile, "UTF-8");
-
-            ObjectMapper objectMapper = new ObjectMapper();
-
-            newOpenMetadataArchive = objectMapper.readValue(configStoreFileContents, OpenMetadataArchive.class);
-        }
-        catch (IOException ioException)
-        {
-            /*
-             * The config file is not found, create a new one ...
-             */
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("New server config Store", ioException);
-            }
-
-            newOpenMetadataArchive = new OpenMetadataArchive();
-        }
-
-        return newOpenMetadataArchive;
-    }
-
-
-    /**
-     * Set new contents into the archive.  This overrides any content previously stored.
-     *
-     * @param archiveContents - OpenMetadataArchive object
-     */
-    public void setArchiveContents(OpenMetadataArchive   archiveContents)
-    {
-        File    archiveStoreFile = new File(archiveStoreName);
-
-        try
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Writing open metadata archive store properties: " + archiveContents);
-            }
-
-            if (archiveContents == null)
-            {
-                archiveStoreFile.delete();
-            }
-            else
-            {
-                ObjectMapper objectMapper = new ObjectMapper();
-
-                String archiveStoreFileContents = objectMapper.writeValueAsString(archiveContents);
-
-                FileUtils.writeStringToFile(archiveStoreFile, archiveStoreFileContents, false);
-            }
-        }
-        catch (IOException   ioException)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Unusable Server config Store :(", ioException);
-            }
-        }
-    }
-
-
-    /**
-     * Indicates that the connector is completely configured and can begin processing.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public void start() throws ConnectorCheckedException
-    {
-        super.start();
-    }
-
-
-    /**
-     * Free up any resources held since the connector is no longer needed.
-     *
-     * @throws ConnectorCheckedException - there is a problem within the connector.
-     */
-    public  void disconnect() throws ConnectorCheckedException
-    {
-        super.disconnect();
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Closing Config Store.");
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/file/FileBasedOpenMetadataArchiveStoreProvider.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/file/FileBasedOpenMetadataArchiveStoreProvider.java b/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/file/FileBasedOpenMetadataArchiveStoreProvider.java
deleted file mode 100644
index c7eb414..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/archivemanager/store/file/FileBasedOpenMetadataArchiveStoreProvider.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.archivemanager.store.file;
-
-import org.apache.atlas.omrs.archivemanager.store.OpenMetadataArchiveStoreProviderBase;
-
-/**
- * FileBasedOpenMetadataArchiveStoreProvider is the OCF connector provider for the file based server configuration store.
- */
-public class FileBasedOpenMetadataArchiveStoreProvider extends OpenMetadataArchiveStoreProviderBase
-{
-    /**
-     * Constructor used to initialize the ConnectorProviderBase with the Java class name of the specific
-     * configuration store implementation.
-     */
-    public FileBasedOpenMetadataArchiveStoreProvider()
-    {
-        Class    connectorClass = FileBasedOpenMetadataArchiveStoreConnector.class;
-
-        super.setConnectorClassName(connectorClass.getName());
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditCode.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditCode.java b/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditCode.java
deleted file mode 100644
index 1316f33..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/auditlog/OMRSAuditCode.java
+++ /dev/null
@@ -1,624 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.auditlog;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.text.MessageFormat;
-import java.util.Arrays;
-
-/**
- * The OMRSAuditCode is used to define the message content for the OMRS Audit Log.
- *
- * The 5 fields in the enum are:
- * <ul>
- *     <li>Log Message Id - to uniquely identify the message</li>
- *     <li>Severity - is this an event, decision, action, error or exception</li>
- *     <li>Log Message Text - includes placeholder to allow additional values to be captured</li>
- *     <li>Additional Information - further parameters and data relating to the audit message (optional)</li>
- *     <li>SystemAction - describes the result of the situation</li>
- *     <li>UserAction - describes how a user should correct the situation</li>
- * </ul>
- */
-public enum OMRSAuditCode
-{
-    OMRS_INITIALIZING("OMRS-AUDIT-0001",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The Open Metadata Repository Services (OMRS) is initializing",
-                      "The local server has started up the OMRS.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    ENTERPRISE_ACCESS_INITIALIZING("OMRS-AUDIT-0002",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "Enterprise access through the Enterprise Repository Services is initializing",
-                      "The local server has started the enterprise access support provided by the " +
-                                           "enterprise repository services.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    LOCAL_REPOSITORY_INITIALIZING("OMRS-AUDIT-0003",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The local repository is initializing with metadata collection id {0}",
-                      "The local server has started to initialize the local repository.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    METADATA_HIGHWAY_INITIALIZING("OMRS-AUDIT-0004",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "Connecting to the metadata highway",
-                      "The local server has started to initialize the communication with the open metadata " +
-                                          "repository cohorts.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    COHORT_INITIALIZING("OMRS-AUDIT-0005",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "Connecting to cohort {0}",
-                      "The local server has started to initialize the communication with the named " +
-                                "open metadata repository cohort.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    COHORT_CONFIG_ERROR("OMRS-AUDIT-0006",
-                      OMRSAuditLogRecordSeverity.EXCEPTION,
-                      "Configuration error detected while connecting to cohort {0}, error message was: {2}",
-                      "The local server has started to initialize the communication with the named " +
-                                "open metadata repository cohort and a configuration error was detected.",
-                      "Review the exception and resolve the issue it documents. " +
-                                "Then disconnect and reconnect this server to the cohort."),
-
-    OMRS_INITIALIZED("OMRS-AUDIT-0007",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The Open Metadata Repository Services (OMRS) has initialized",
-                      "The local server has completed the initialization of the OMRS.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    COHORT_DISCONNECTING("OMRS-AUDIT-0008",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "Disconnecting from cohort {0}",
-                      "The local server has started to shutdown the communication with the named " +
-                                 "open metadata repository cohort.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    COHORT_PERMANENTLY_DISCONNECTING("OMRS-AUDIT-0009",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "Unregistering from cohort {0}",
-                      "The local server has started to unregister from all future communication with the named " +
-                                 "open metadata repository cohort.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    OMRS_DISCONNECTING("OMRS-AUDIT-0010",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The Open Metadata Repository Services (OMRS) is disconnecting the open metadata repositories",
-                      "The local server has completed the initialization of the OMRS.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    OMRS_DISCONNECTED("OMRS-AUDIT-0011",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The Open Metadata Repository Services (OMRS) has disconnected from the open metadata repositories",
-                      "The local server has completed the disconnection of the OMRS.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    NO_LOCAL_REPOSITORY("OMRS-AUDIT-0012",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "No events will be sent to the open metadata repository cohort {0} because the local metadata collection id is null",
-                      "The local server will not send outbound events because there is no local metadata repository.",
-                      "Validate that the server is configured without a local metadata repository.  " +
-                                "If there should be a metadata repository then, verify the server configuration is" +
-                                "correct and look for errors that have occurred during server start up." +
-                                "If necessary, correct the configuration and restart the server."),
-
-    LOCAL_REPOSITORY_FAILED_TO_START("OMRS-AUDIT-0013",
-                      OMRSAuditLogRecordSeverity.EXCEPTION,
-                      "Unable to start processing in the local repository due to error {0}",
-                      "The local server will not process events.",
-                      "Review previous error messages to determine the precise error in the " +
-                                 "start up configuration. " +
-                                 "Correct the configuration and restart the server. "),
-
-    LOCAL_REPOSITORY_FAILED_TO_DISCONNECT("OMRS-AUDIT-0014",
-                      OMRSAuditLogRecordSeverity.EXCEPTION,
-                      "Unable to disconnect processing in the local repository due to error {0}",
-                      "The local server may not shutdown cleanly.",
-                      "Review previous error messages to determine the precise error. Correct the cause and restart the server. "),
-
-    OMRS_TOPIC_LISTENER_START("OMRS-AUDIT-0015",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The listener thread for an OMRS Topic Connector for topic {0} has started",
-                      "The listener thread will process inbound events",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    OMRS_TOPIC_LISTENER_SHUTDOWN("OMRS-AUDIT-0016",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The listener thread for the OMRS Topic Connector for topic {0} has shutdown",
-                      "The listener thread will process inbound events",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    NULL_TOPIC_CONNECTOR("OMRS-AUDIT-0017",
-                      OMRSAuditLogRecordSeverity.EXCEPTION,
-                      "Unable to send or receive events for cohort {0} because the connector to the OMRS Topic failed to initialize",
-                      "The local server will not connect to the cohort.",
-                      "The connection to the connector is configured in the server configuration.  " +
-                                 "Review previous error messages to determine the precise error in the " +
-                                 "start up configuration. " +
-                                 "Correct the configuration and reconnect the server to the cohort. "),
-
-    NEW_ENTERPRISE_CONNECTOR("OMRS-AUDIT-0018",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "An enterprise OMRS Connector has been created for the {0} open metadata access service",
-                      "The connector will support access to the connected open metadata repositories.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    STARTING_ENTERPRISE_CONNECTOR("OMRS-AUDIT-0019",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The enterprise OMRS Connector for the {0} open metadata access service has started",
-                      "The connector will support access to the connected open metadata repositories.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    DISCONNECTING_ENTERPRISE_CONNECTOR("OMRS-AUDIT-0020",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The enterprise OMRS Connector for the {0} open metadata access service has shutdown",
-                      "The connector will support access to the connected open metadata repositories.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    ENTERPRISE_CONNECTOR_FAILED("OMRS-AUDIT-0019",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The create of an enterprise OMRS Connector for the {0} open metadata access service failed with this error message: {1}",
-                      "The connector will support access to the connected open metadata repositories.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    PROCESSING_ARCHIVE("OMRS-AUDIT-0050",
-                       OMRSAuditLogRecordSeverity.INFO,
-                       "The Open Metadata Repository Services (OMRS) is about to process open metadata archive {0}",
-                       "The local server is about to local types and instances from an open metadata archive.",
-                       "No action is required.  This is part of the normal operation of the server."),
-
-    EMPTY_ARCHIVE("OMRS-AUDIT-0051",
-                       OMRSAuditLogRecordSeverity.ERROR,
-                       "The Open Metadata Repository Services (OMRS) is unable to process an open metadata archive because it is empty",
-                       "The local server is skipping an open metadata archive because it is empty.",
-                       "Review the list of archives for the server and determine which archive is in error.  " +
-                          "Request a new version of the archive or remove it from the server's archive list."),
-
-    NULL_PROPERTIES_IN_ARCHIVE("OMRS-AUDIT-0052",
-                        OMRSAuditLogRecordSeverity.ERROR,
-                        "The Open Metadata Repository Services (OMRS) is unable to process an open metadata archive because it is empty",
-                        "The local server is skipping an open metadata archive because it is empty.",
-                        "Review the list of archives for the server and determine which archive is in error. " +
-                           "Request a new version of the archive or remove it from the server's archive list."),
-
-    COMPLETED_ARCHIVE("OMRS-AUDIT-0053",
-                       OMRSAuditLogRecordSeverity.INFO,
-                       "The Open Metadata Repository Services (OMRS) has loaded {0} types and {1} instances from open metadata archive {2}",
-                       "The local server has completed the processing of the open metadata archive.",
-                       "No action is required.  This is part of the normal operation of the server."),
-
-    EVENT_PROCESSING_ERROR("OMRS-AUDIT-0100",
-                      OMRSAuditLogRecordSeverity.EXCEPTION,
-                      "Unable process an incoming event {0} due to exception {1}",
-                      "The information in the event is not available to the server.",
-                      "Review the exception to determine the source of the error and correct it. "),
-
-    REGISTERED_WITH_COHORT("OMRS-AUDIT-0101",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "Registering with open metadata repository cohort {0} using metadata collection id {1}",
-                      "The local server has sent a registration event to the other members of the cohort.",
-                           "No action is required.  This is part of the normal operation of the server."),
-
-    RE_REGISTERED_WITH_COHORT("OMRS-AUDIT-0102",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "Refreshing registration information from open metadata repository cohort {0}",
-                      "The local server has sent a registration refresh request to the other members of the cohort as " +
-                                      "part of its routine to re-connect with the open metadata repository cohort.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    UNREGISTERING_FROM_COHORT("OMRS-AUDIT-0103",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "Unregistering with open metadata repository cohort {0} using metadata collection id {1}",
-                      "The local server has sent a unregistration event to the other members of the cohort as " +
-                                      "part of its routine to permanently disconnect with the open metadata repository cohort.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    SEND_REGISTRY_EVENT_ERROR("OMRS-AUDIT-0104",
-                      OMRSAuditLogRecordSeverity.EXCEPTION,
-                      "Unable to send a registry event for cohort {0} due to an error in the OMRS Topic Connector",
-                      "The local server is unable to properly manage registration events for the metadata " +
-                                      "repository cohort. The cause of the error is recorded in the accompanying exception.",
-                      "Review the exception and resolve the issue it documents.  " +
-                                      "Then disconnect and reconnect this server to the cohort."),
-
-    REFRESHING_REGISTRATION_WITH_COHORT("OMRS-AUDIT-0105",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "Refreshing registration with open metadata repository cohort {0} using " +
-                                                "metadata collection id {1} at the request of server {2}",
-                      "The local server has sent a re-registration event to the other members of the cohort in " +
-                                                "response to a registration refresh event from another member of the cohort.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    INCOMING_CONFLICTING_LOCAL_METADATA_COLLECTION_ID("OMRS-AUDIT-0106",
-                      OMRSAuditLogRecordSeverity.ACTION,
-                      "Registration request for this server in cohort {0} was rejected by server {1} that " +
-                                                        "hosts metadata collection {2} because the local metadata " +
-                                                        "collection id {3} is not unique for this cohort",
-                      "The local server will not receive metadata from the open metadata repository " +
-                                                        "with the same metadata collection id. " +
-                                                        "There is a chance of metadata integrity issues since " +
-                                                        "a metadata instance can be updated in two places.",
-                      "It is necessary to update the local metadata collection Id to remove the conflict."),
-
-    INCOMING_CONFLICTING_METADATA_COLLECTION_ID("OMRS-AUDIT-0107",
-                      OMRSAuditLogRecordSeverity.ACTION,
-                      "Two servers in cohort {0} are using the same metadata collection identifier {1}",
-                      "The local server will not be able to distinguish ownership of metadata " +
-                                                        "from these open metadata repositories" +
-                                                        "with the same metadata collection id. " +
-                                                        "There is a chance of metadata integrity issues since " +
-                                                        "a metadata instance can be updated in two places.",
-                      "It is necessary to update the local metadata collection Id to remove the conflict."),
-
-    INCOMING_BAD_CONNECTION("OMRS-AUDIT-0108",
-                      OMRSAuditLogRecordSeverity.ACTION,
-                      "Registration error occurred in cohort {0} because remote server {1} that hosts " +
-                                    "metadata collection {2} is unable to use connection {3} to create a " +
-                                    "connector to this local server",
-                      "The remote server will not be able to query metadata from this local server.",
-                      "This error may be caused because the connection is incorrectly " +
-                                    "configured, or that the jar file for the connector is not available in the remote server."),
-
-    NEW_MEMBER_IN_COHORT("OMRS-AUDIT-0109",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "A new registration request has been received for cohort {0} from server {1} that " +
-                                 "hosts metadata collection {2}",
-                      "The local server will process the registration request and if the parameters are correct, " +
-                                 "it will accept the new member.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    MEMBER_LEFT_COHORT("OMRS-AUDIT-0110",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "Server {0} hosting metadata collection {1} has left cohort {2}",
-                      "The local server will process the incoming unregistration request and if the parameters are correct, " +
-                               "it will remove the former member from its cohort registry store.",
-                      "No action is required.  This is part of the normal operation of the server. " +
-                               "Any metadata from this remote repository that is stored in the local repository will no longer be updated.  " +
-                               "It may be kept in the local repository for reference or removed by calling the administration REST API."),
-
-    REFRESHED_MEMBER_IN_COHORT("OMRS-AUDIT-0111",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "A re-registration request has been received for cohort {0} from server {1} that " +
-                                       "hosts metadata collection {2}",
-                      "The local server will process the registration request and if the parameters are correct, " +
-                                       "it will accept the latest registration values for this member.",
-                      "No action is required.  This is part of the normal operation of the server."),
-
-    OUTGOING_CONFLICTING_METADATA_COLLECTION_ID("OMRS-AUDIT-0112",
-                      OMRSAuditLogRecordSeverity.ACTION,
-                      "Registration request received from cohort {0} was rejected by the " +
-                                                        "local server because the remote server {1} is using a metadata " +
-                                                        "collection Id {2} that is not unique in the cohort",
-                      "The remote server will not exchange metadata with this local server.",
-                      "It is necessary to update the TypeDef to remove the conflict " +
-                                                        "before the remote server will exchange metadata with this server."),
-
-    OUTGOING_BAD_CONNECTION("OMRS-AUDIT-0113",
-                      OMRSAuditLogRecordSeverity.ACTION,
-                      "Registration error occurred in cohort {0} because the local server is not able to use " +
-                                    "the remote connection {1} supplied by server {2} that hosts metadata " +
-                                    "collection {3} to create a connector to its metadata repository",
-                      "The local server is not able to query metadata from the remote server.",
-                      "This error may be caused because the connection is incorrectly " +
-                                    "configured, or that the jar file for the connector is not available in the " +
-                                    "local server."),
-
-    CREATE_REGISTRY_FILE("OMRS-AUDIT-0114",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "Creating new cohort registry store {0}",
-                      "The local server is creating a new cohort registry store. " +
-                                 "The local server should continue to operate correctly.",
-                      "Verify that the local server is connecting to the open metadata repository cohort for" +
-                                 "the first time."),
-
-    UNUSABLE_REGISTRY_FILE("OMRS-AUDIT-0115",
-                      OMRSAuditLogRecordSeverity.EXCEPTION,
-                      "Unable to write to cohort registry store {0}",
-                      "The local server can not write to the cohort registry store. " +
-                                   "This is a serious issue because the local server is not able to record its " +
-                                   "interaction with other servers in the cohort.",
-                      "Shutdown the local server and resolve the issue with the repository store."),
-
-    NULL_MEMBER_REGISTRATION("OMRS-AUDIT-0116",
-                      OMRSAuditLogRecordSeverity.ERROR,
-                      "Unable to read or write to cohort registry store {0} because registration information is null",
-                      "The local server can not manage a member registration in the cohort registry store because " +
-                                     "the registration information is null. " +
-                                     "This is a serious issue because the local server is not able to record its " +
-                                     "interaction with other servers in the cohort.",
-                      "Shutdown the local server and resolve the issue with the cohort registry."),
-
-    MISSING_MEMBER_REGISTRATION("OMRS-AUDIT-0117",
-                      OMRSAuditLogRecordSeverity.ERROR,
-                      "Unable to process the remote registration for {0} from cohort registry store {1} " +
-                                        "because registration information is not stored",
-                      "The local server can not process a member registration event from the cohort registry store " +
-                                        "because the registration information is not stored. " +
-                                        "This may simply be a timing issue. " +
-                                        "However, it may be the result of an earlier issue with the " +
-                                        "local cohort registry store.",
-                      "Verify that there are no issues with writing to the cohort registry store."),
-
-    INCOMING_CONFLICTING_TYPEDEFS("OMRS-AUDIT-0201",
-                      OMRSAuditLogRecordSeverity.ACTION,
-                      "Server {1} in cohort {0} that hosts metadata collection {2} has detected that " +
-                                          "TypeDef {3} ({4}) in the local " +
-                                          "server conflicts with TypeDef {5} ({6}) in the remote server",
-                      "The remote server may not be able to exchange metadata with this local server.",
-                      "It is necessary to update the TypeDef to remove the conflict before the " +
-                                          "remote server will exchange metadata with this server."),
-
-    INCOMING_TYPEDEF_PATCH_MISMATCH("OMRS-AUDIT-0202",
-                      OMRSAuditLogRecordSeverity.ACTION,
-                      "Registration request for this server in cohort {0} was rejected by server {1} that " +
-                                            "hosts metadata collection {2} because TypeDef {3} ({4}) in the local " +
-                                            "server is at version {5} which is different from this TypeDef in the " +
-                                            "remote server which is at version {6}",
-                      "The remote server may not be able to exchange metadata with this local server.",
-                      "It is necessary to update the TypeDef to remove the conflict to ensure that the remote server " +
-                                            "can exchange metadata with this server."),
-
-    OUTGOING_CONFLICTING_TYPEDEFS("OMRS-AUDIT-0203",
-                      OMRSAuditLogRecordSeverity.ACTION,
-                      "The local server has detected a conflict in cohort {0} in the registration request " +
-                                          "from server {1} that hosts metadata collection {2}. TypeDef " +
-                                          "{3} ({4}) in the local server conflicts with TypeDef {5} ({6}) in the remote server",
-                      "The local server will not exchange metadata with this remote server.",
-                      "It is necessary to update the TypeDef to remove the conflict before the local " +
-                                          "server will exchange metadata with this server."),
-
-    OUTGOING_TYPEDEF_PATCH_MISMATCH("OMRS-AUDIT-0204",
-                      OMRSAuditLogRecordSeverity.ACTION,
-                      "The local server in cohort {0} has rejected a TypeDef update from server {1} that hosts metadata " +
-                                            "collection {2} because the version of TypeDef {3} ({4}) in the local server " +
-                                            "is at version {5} is different from this TypeDef in the remote server " +
-                                            "which is at version {6}",
-                      "The local server will not exchange metadata with this remote server.",
-                      "It is necessary to update the TypeDef to remove the conflict before the local server will " +
-                                            "exchange metadata with the remote server."),
-
-    OUTGOING_TYPE_MISMATCH("OMRS-AUDIT-0205",
-                      OMRSAuditLogRecordSeverity.ACTION,
-                      "The local server in cohort {0} has rejected a TypeDef update from server {1} that hosts " +
-                                   "metadata collection {2} because the version of TypeDef {3} ({4}) in the local " +
-                                   "server is at version {5} is different from this TypeDef in the remote server " +
-                                   "which is at version {6}",
-                      "The local server will not exchange metadata with this remote server.",
-                      "It is necessary to update the TypeDef to remove the conflict before the local server will " +
-                                   "exchange metadata with the remote server."),
-
-    NEW_TYPE_ADDED("OMRS-AUDIT-0301",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The local server has added a new type called {0} with a unique identifier of {1} and a version number of {2} from {3}",
-                      "The local server will be able to manage metadata instances of this type.",
-                      "No action required.  This message is for information only."),
-
-    NEW_TYPE_NOT_SUPPORTED("OMRS-AUDIT-0302",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The local server is unable to add a new type called {0} with a unique identifier of {1} and a version number of {2} because the server does not support this feature",
-                      "The local server will be able to manage metadata instances of this type.",
-                      "No action required.  This message is for information only."),
-
-    TYPE_UPDATED("OMRS-AUDIT-0303",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The local server has updated an existing type called {0} with a unique identifier of {1} to version number of {2} from {3}",
-                      "The local server will be able to manage metadata instances of this latest version of the type.",
-                      "No action required.  This message is for information only."),
-
-    TYPE_REMOVED("OMRS-AUDIT-0304",
-                      OMRSAuditLogRecordSeverity.INFO,
-                      "The local server has removed an existing type called {0} with a unique identifier of {1} to version number of {2}",
-                      "The local server will be no longer be able to manage metadata instances of this type.",
-                      "No action required.  This message is for information only."),
-
-    TYPE_IDENTIFIER_MISMATCH("OMRS-AUDIT-0305",
-                      OMRSAuditLogRecordSeverity.ERROR,
-                      "The local server has detected a conflict with an existing type called {0} with a unique identifier of {1}. This does not match the type name {2} and unique identifier {3} passed to it on a request",
-                      "The local server will be no longer be able to manage metadata instances of this type.",
-                      "This is a serious error since it may cause metadata to be corrupted.  " +
-                                     "First check the caller to ensure it is operating properly.  " +
-                                     "Then investigate the source of the type and any other errors."),
-
-    PROCESS_UNKNOWN_EVENT("OMRS-AUDIT-8001",
-                      OMRSAuditLogRecordSeverity.EVENT,
-                      "Received unknown event: {0}",
-                      "The local server has received an unknown event from another member of the metadata repository " +
-                                  "cohort and is unable to process it. " +
-                                  "This is possible if a server in the cohort is at a higher level than this server and " +
-                                  "is using a more advanced version of the protocol. " +
-                                  "The local server should continue to operate correctly.",
-                      "Verify that the event is a new event type introduced after this server was written."),
-
-    NULL_OMRS_EVENT_RECEIVED("OMRS-AUDIT-9002",
-                      OMRSAuditLogRecordSeverity.EXCEPTION,
-                      "Unable to process a received event because its content is null",
-                      "The system is unable to process an incoming event.",
-                      "This may be caused by an internal logic error or the receipt of an incompatible OMRSEvent"),
-
-    SEND_TYPEDEF_EVENT_ERROR("OMRS-AUDIT-9003",
-                      OMRSAuditLogRecordSeverity.EXCEPTION,
-                      "Unable to send a TypeDef event for cohort {0} due to an error in the OMRS Topic Connector",
-                      "The local server is unable to properly manage TypeDef events for the metadata " +
-                                      "repository cohort. The cause of the error is recorded in the accompanying exception.",
-                      "Review the exception and resolve the issue it documents.  " +
-                                      "Then disconnect and reconnect this server to the cohort."),
-
-    SEND_INSTANCE_EVENT_ERROR("OMRS-AUDIT-9005",
-                        OMRSAuditLogRecordSeverity.EXCEPTION,
-                        "Unable to send or receive a metadata instance event for cohort {0} due to an error in the OMRS Topic Connector",
-                        "The local server is unable to properly manage the replication of metadata instances for " +
-                                "the metadata repository cohort. The cause of the error is recorded in the accompanying exception.",
-                        "Review the exception and resolve the issue it documents. " +
-                                      "Then disconnect and reconnect this server to the cohort."),
-
-    NULL_REGISTRY_PROCESSOR("OMRS-AUDIT-9006",
-                        OMRSAuditLogRecordSeverity.EXCEPTION,
-                        "Unable to send or receive a registry event because the event processor is null",
-                        "The local server is unable to properly manage registration events for the metadata " +
-                                "repository cohort.",
-                        "This is an internal logic error.  Raise a JIRA, including the audit log, to get this fixed."),
-
-    NULL_TYPEDEF_PROCESSOR("OMRS-AUDIT-9007",
-                       OMRSAuditLogRecordSeverity.EXCEPTION,
-                       "Unable to send or receive a TypeDef event because the event processor is null",
-                       "The local server is unable to properly manage the exchange of TypeDefs for the metadata " +
-                               "repository cohort.",
-                       "This is an internal logic error.  Raise a JIRA, including the audit log, to get this fixed."),
-
-    NULL_INSTANCE_PROCESSOR("OMRS-AUDIT-9008",
-                        OMRSAuditLogRecordSeverity.EXCEPTION,
-                        "Unable to send or receive a metadata instance event because the event processor is null",
-                        "The local server is unable to properly manage the replication of metadata instances for " +
-                                "the metadata repository cohort.",
-                        "This is an internal logic error.  Raise a JIRA, including the audit log, to get this fixed."),
-
-    NULL_OMRS_CONFIG("OMRS-AUDIT-9009",
-                        OMRSAuditLogRecordSeverity.EXCEPTION,
-                            "Unable to initialize part of the Open Metadata Repository Service (OMRS) because the configuration is null",
-                            "The local server is unable to properly manage the replication of metadata instances for " +
-                                    "the metadata repository cohort.",
-                            "This is an internal logic error.  Raise a JIRA, including the audit log, to get this fixed."),
-
-    SENT_UNKNOWN_EVENT("OMRS-AUDIT-9010",
-                        OMRSAuditLogRecordSeverity.EXCEPTION,
-                        "Unable to send an event because the event is of an unknown type",
-                        "The local server may not be communicating properly with other servers in " +
-                                "the metadata repository cohort.",
-                        "This is an internal logic error.  Raise a JIRA, including the audit log, to get this fixed."),
-    UNEXPECTED_EXCEPTION_FROM_EVENT("OMRS-AUDIT-9011",
-                       OMRSAuditLogRecordSeverity.EXCEPTION,
-                       "An incoming event of type {0} from {1} ({2}) generated an exception with message {3}",
-                       "The contents of the event were not accepted by the local repository.",
-                       "Review the exception and resolve the issue it documents."),
-    ENTERPRISE_TOPIC_DISCONNECT_ERROR("OMRS-AUDIT-9012",
-                       OMRSAuditLogRecordSeverity.EXCEPTION,
-                       "Disconnecting from the enterprise topic connector generated an exception with message {0}",
-                       "The server may not have disconnected from the topic cleanly.",
-                       "Review the exception and resolve the issue it documents.")
-
-    ;
-
-    private String                     logMessageId;
-    private OMRSAuditLogRecordSeverity severity;
-    private String                     logMessage;
-    private String                     systemAction;
-    private String                     userAction;
-
-    private static final Logger log = LoggerFactory.getLogger(OMRSAuditCode.class);
-
-
-    /**
-     * The constructor for OMRSAuditCode expects to be passed one of the enumeration rows defined in
-     * OMRSAuditCode above.   For example:
-     *
-     *     OMRSAuditCode   auditCode = OMRSAuditCode.SERVER_NOT_AVAILABLE;
-     *
-     * This will expand out to the 4 parameters shown below.
-     *
-     * @param messageId - unique Id for the message
-     * @param severity - severity of the message
-     * @param message - text for the message
-     * @param systemAction - description of the action taken by the system when the condition happened
-     * @param userAction - instructions for resolving the situation, if any
-     */
-    OMRSAuditCode(String                     messageId,
-                  OMRSAuditLogRecordSeverity severity,
-                  String                     message,
-                  String                     systemAction,
-                  String                     userAction)
-    {
-        this.logMessageId = messageId;
-        this.severity = severity;
-        this.logMessage = message;
-        this.systemAction = systemAction;
-        this.userAction = userAction;
-    }
-
-
-    /**
-     * Returns the unique identifier for the error message.
-     *
-     * @return logMessageId
-     */
-    public String getLogMessageId()
-    {
-        return logMessageId;
-    }
-
-
-    /**
-     * Return the severity of the audit log record.
-     *
-     * @return OMRSAuditLogRecordSeverity enum
-     */
-    public OMRSAuditLogRecordSeverity getSeverity()
-    {
-        return severity;
-    }
-
-    /**
-     * Returns the log message with the placeholders filled out with the supplied parameters.
-     *
-     * @param params - strings that plug into the placeholders in the logMessage
-     * @return logMessage (formatted with supplied parameters)
-     */
-    public String getFormattedLogMessage(String... params)
-    {
-        if (log.isDebugEnabled())
-        {
-            log.debug(String.format("<== OMRS Audit Code.getMessage(%s)", Arrays.toString(params)));
-        }
-
-        MessageFormat mf = new MessageFormat(logMessage);
-        String result = mf.format(params);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(String.format("==> OMRS Audit Code.getMessage(%s): %s", Arrays.toString(params), result));
-        }
-
-        return result;
-    }
-
-
-
-    /**
-     * Returns a description of the action taken by the system when the condition that caused this exception was
-     * detected.
-     *
-     * @return systemAction String
-     */
-    public String getSystemAction()
-    {
-        return systemAction;
-    }
-
-
-    /**
-     * Returns instructions of how to resolve the issue reported in this exception.
-     *
-     * @return userAction String
-     */
-    public String getUserAction()
-    {
-        return userAction;
-    }
-}


[41/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGInvalidParameterException.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGInvalidParameterException.java b/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGInvalidParameterException.java
deleted file mode 100644
index ecaec18..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGInvalidParameterException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omag.ffdc.exception;
-
-/**
- * OMAGInvalidParameterException is used when invalid parameters are passed on an OMAG call.
- */
-public class OMAGInvalidParameterException extends OMAGCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a OMAGInvalidParameterException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public OMAGInvalidParameterException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a OMAGInvalidParameterException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public OMAGInvalidParameterException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGNotAuthorizedException.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGNotAuthorizedException.java b/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGNotAuthorizedException.java
deleted file mode 100644
index 2400f0c..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGNotAuthorizedException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omag.ffdc.exception;
-
-/**
- * OMAGNotAuthorizedException is used when invalid parameters are passed on an OMAG call.
- */
-public class OMAGNotAuthorizedException extends OMAGCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a OMAGNotAuthorizedException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public OMAGNotAuthorizedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a OMAGNotAuthorizedException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public OMAGNotAuthorizedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-server/README.md
----------------------------------------------------------------------
diff --git a/omag-server/README.md b/omag-server/README.md
deleted file mode 100644
index f47466e..0000000
--- a/omag-server/README.md
+++ /dev/null
@@ -1,24 +0,0 @@
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
- # Open Metadata And Governance Server
-
-See https://cwiki.apache.org/confluence/display/ATLAS/OMAG+Server+Package for more information about the OMAG Server Package
-
-**Launching the standalone server**
-
-    java -jar ./omag-server-1.0.0-SNAPSHOT.jar

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-server/pom.xml
----------------------------------------------------------------------
diff --git a/omag-server/pom.xml b/omag-server/pom.xml
deleted file mode 100644
index a4a8a05..0000000
--- a/omag-server/pom.xml
+++ /dev/null
@@ -1,137 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-
-    <parent>
-        <artifactId>apache-atlas</artifactId>
-        <groupId>org.apache.atlas</groupId>
-        <version>1.0.0</version>
-    </parent>
-
-    <artifactId>omag-server</artifactId>
-
-    <name>Open Metadata and Governance (OMAG) Server</name>
-    <description>
-        Open Metadata and Governance (OMAG) server for running open metadata function outside of the Apache Atlas server.
-    </description>
-
-    <packaging>jar</packaging>
-
-    <dependencies>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter</artifactId>
-            <version>1.5.7.RELEASE</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-web</artifactId>
-            <version>1.5.7.RELEASE</version>
-        </dependency>
-
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>commons-io</groupId>
-            <artifactId>commons-io</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>com.fasterxml.jackson.jaxrs</groupId>
-            <artifactId>jackson-jaxrs-base</artifactId>
-            <version>${jackson.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>com.fasterxml.jackson.jaxrs</groupId>
-            <artifactId>jackson-jaxrs-json-provider</artifactId>
-            <version>${jackson.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>javax.inject</groupId>
-            <artifactId>javax.inject</artifactId>
-            <version>${javax-inject.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.testng</groupId>
-            <artifactId>testng</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>om-fwk-ocf</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>omrs</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>omas-connectedasset</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>omas-assetconsumer</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>omag-api</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-maven-plugin</artifactId>
-                <version>1.5.10.RELEASE</version>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>repackage</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-</project>

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-server/src/main/java/org/apache/atlas/omag/application/OMAGApplication.java
----------------------------------------------------------------------
diff --git a/omag-server/src/main/java/org/apache/atlas/omag/application/OMAGApplication.java b/omag-server/src/main/java/org/apache/atlas/omag/application/OMAGApplication.java
deleted file mode 100644
index 88397de..0000000
--- a/omag-server/src/main/java/org/apache/atlas/omag/application/OMAGApplication.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.application;
-
-import org.apache.log4j.BasicConfigurator;
-import org.apache.log4j.Logger;
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.context.annotation.ComponentScan;
-import org.springframework.context.annotation.Configuration;
-
-@SpringBootApplication
-@ComponentScan({"org.apache.atlas.omag.admin.server",
-                "org.apache.atlas.omrs.rest.server",
-                "org.apache.atlas.omas.*"})
-@Configuration
-
-public class OMAGApplication
-{
-    public static void main(String[] args)
-    {
-        BasicConfigurator.configure();
-
-        SpringApplication.run(OMAGApplication.class, args);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/README.md
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/README.md b/omas-assetconsumer/README.md
deleted file mode 100644
index dc641d1..0000000
--- a/omas-assetconsumer/README.md
+++ /dev/null
@@ -1,38 +0,0 @@
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-# AssetConsumer Open Metadata Access Service (OMAS)
-
-The AssetConsumer OMAS provides services for an application
-accessing assets such as data stores, APIs or functions such as analytical services.
-
-The AssetConsumer REST API supports the retrieval of connection metadata, the
-adding of feedback to specific assets and an audit log for the asset.
-
-The AssetConsumer Java client supports all of the operations of the REST API.
-It adds the capability to act as a factory for connectors to assets.
-The Java client takes the name or id of a connection, looks up the properties
-of the connection and, using the Open Connector Framework (OCF), it creates a new
-connector instance and returns it to the caller.
-
-In addition it can add and remove feedback (tags, ratings, comments, likes) from
-the asset description.
-
-The caller can use the connector to access metadata about the
-asset it is accessing.   This service is provided by the ConnectedAsset OMAS.
-

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/pom.xml
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/pom.xml b/omas-assetconsumer/pom.xml
deleted file mode 100644
index a10a3b3..0000000
--- a/omas-assetconsumer/pom.xml
+++ /dev/null
@@ -1,107 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-
-    <parent>
-        <artifactId>apache-atlas</artifactId>
-        <groupId>org.apache.atlas</groupId>
-        <version>1.0.0</version>
-    </parent>
-
-    <artifactId>omas-assetconsumer</artifactId>
-
-    <name>Asset Consumer Open Metadata Access Service (OMAS)</name>
-    <description>APIs for tools and applications wishing to access data assets through Open Connector Framework (OCF) connectors.</description>
-
-    <packaging>jar</packaging>
-
-    <dependencies>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter</artifactId>
-            <version>1.5.7.RELEASE</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-web</artifactId>
-            <version>1.5.7.RELEASE</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>om-fwk-ocf</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>omrs</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>omag-api</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.atlas</groupId>
-            <artifactId>omas-connectedasset</artifactId>
-            <version>1.0.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-            <version>3.2.2</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.testng</groupId>
-            <artifactId>testng</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-jar-plugin</artifactId>
-                <version>2.4</version>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>test-jar</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-</project>

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/AssetConsumerInterface.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/AssetConsumerInterface.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/AssetConsumerInterface.java
deleted file mode 100644
index 2118568..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/AssetConsumerInterface.java
+++ /dev/null
@@ -1,388 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer;
-
-
-import org.apache.atlas.ocf.Connector;
-import org.apache.atlas.ocf.ffdc.ConnectionCheckedException;
-import org.apache.atlas.ocf.ffdc.ConnectorCheckedException;
-import org.apache.atlas.ocf.properties.CommentType;
-import org.apache.atlas.omas.connectedasset.properties.AssetUniverse;
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.ocf.properties.StarRating;
-import org.apache.atlas.omas.assetconsumer.ffdc.exceptions.*;
-
-/**
- * The AssetConsumer Open Metadata Access Service (OMAS) is used by applications and tools as a factory for Open
- * Connector Framework (OCF) connectors.  The configuration for the connectors is managed as open metadata in
- * a Connection definition.  The caller to the AssetConsumer OMAS passes either the name, GUID or URL for the
- * connection to the appropriate method to retrieve a connector.  The AssetConsumer OMAS retrieves the connection
- * from the metadata repository and creates an appropriate connector as described the connection and
- * returns it to the caller.
- *
- * Each connection has a unique guid and a name.  An application can request a connector instance
- * from the OCF's Connector Broker using the guid, name or URL of a connection, or by passing a fully
- * populated connection object.  If the connection guid, name or URL is used, AssetConsumer OMAS
- * looks up the connection properties in the metadata repository before calling the OCF ConnectorBroker to create the
- * connector
- *
- * In addition it is possible to maintain feedback for the asset through the AssetConsumer OMAS.
- * This is in terms of tags, star ratings, likes and comments.  There is also the ability to add audit log records
- * related to the use of the asset through the AssetConsumerInterface OMAS.
- */
-public interface AssetConsumerInterface
-{
-    /**
-     * Returns the connector corresponding to the supplied connection name.
-     *
-     * @param userId - String - userId of user making request.
-     * @param connectionName - this may be the qualifiedName or displayName of the connection.
-     *
-     * @return Connector - connector instance.
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws UnrecognizedConnectionNameException - there is no connection defined for this name.
-     * @throws AmbiguousConnectionNameException - there is more than one connection defined for this name.
-     * @throws ConnectionCheckedException - there are errors in the configuration of the connection which is preventing
-     *                                      the creation of a connector.
-     * @throws ConnectorCheckedException - there are errors in the initialization of the connector.
-     * @throws PropertyServerException - there is a problem retrieving information from the property (metadata) server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    Connector getConnectorByName(String   userId,
-                                 String   connectionName) throws InvalidParameterException,
-                                                                 UnrecognizedConnectionNameException,
-                                                                 AmbiguousConnectionNameException,
-                                                                 ConnectionCheckedException,
-                                                                 ConnectorCheckedException,
-                                                                 PropertyServerException,
-                                                                 UserNotAuthorizedException;
-
-
-    /**
-     * Returns the connector corresponding to the supplied connection GUID.
-     *
-     * @param userId - String - userId of user making request.
-     * @param connectionGUID - the unique id for the connection within the metadata repository.
-     *
-     * @return Connector - connector instance.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws UnrecognizedConnectionGUIDException - the supplied GUID is not recognized by the property server.
-     * @throws ConnectionCheckedException - there are errors in the configuration of the connection which is preventing
-     *                                      the creation of a connector.
-     * @throws ConnectorCheckedException - there are errors in the initialization of the connector.
-     * @throws PropertyServerException - there is a problem retrieving information from the property (metadata) server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    Connector getConnectorByGUID(String     userId,
-                                 String     connectionGUID) throws InvalidParameterException,
-                                                                   UnrecognizedConnectionGUIDException,
-                                                                   ConnectionCheckedException,
-                                                                   ConnectorCheckedException,
-                                                                   PropertyServerException,
-                                                                   UserNotAuthorizedException;
-
-
-    /**
-     * Returns the connector corresponding to the supplied connection.
-     *
-     * @param userId - String - userId of user making request.
-     * @param connection - the connection object that contains the properties needed to create the connection.
-     *
-     * @return Connector - connector instance
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws ConnectionCheckedException - there are errors in the configuration of the connection which is preventing
-     *                                      the creation of a connector.
-     * @throws ConnectorCheckedException - there are errors in the initialization of the connector.
-     * @throws PropertyServerException - there is a problem retrieving information from the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    Connector  getConnectorByConnection(String        userId,
-                                        Connection    connection) throws InvalidParameterException,
-                                                                         ConnectionCheckedException,
-                                                                         ConnectorCheckedException,
-                                                                         PropertyServerException,
-                                                                         UserNotAuthorizedException;
-
-
-    /**
-     * Returns a comprehensive collection of properties about the requested asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for asset.
-     *
-     * @return AssetUniverse - a comprehensive collection of properties about the asset.
-
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem retrieving the asset properties from
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    AssetUniverse getAssetProperties(String   userId,
-                                     String   assetGUID) throws InvalidParameterException,
-                                                                PropertyServerException,
-                                                                UserNotAuthorizedException;
-
-
-    /**
-     * Creates an Audit log record for the asset.  This log record is stored in the Asset's Audit Log.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for the asset.
-     * @param connectorInstanceId - String - (optional) id of connector in use (if any).
-     * @param connectionName - String - (optional) name of the connection (extracted from the connector).
-     * @param connectorType - String - (optional) type of connector in use (if any).
-     * @param contextId - String - (optional) function name, or processId of the activity that the caller is performing.
-     * @param message - log record content.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    void  addLogMessageToAsset(String      userId,
-                               String      assetGUID,
-                               String      connectorInstanceId,
-                               String      connectionName,
-                               String      connectorType,
-                               String      contextId,
-                               String      message) throws InvalidParameterException,
-                                                           PropertyServerException,
-                                                           UserNotAuthorizedException;
-
-
-
-    /**
-     * Adds a new public tag to the asset's properties.
-     *
-     * @param userId         - String - userId of user making request.
-     * @param assetGUID      - String - unique id for the asset.
-     * @param tagName        - String - name of the tag.
-     * @param tagDescription - String - (optional) description of the tag.  Setting a description, particularly in
-     *                       a public tag makes the tag more valuable to other users and can act as an embryonic
-     *                       glossary term.
-     * @return String - GUID for new tag.
-     * @throws InvalidParameterException  - one of the parameters is null or invalid.
-     * @throws PropertyServerException    - There is a problem adding the asset properties to
-     *                                    the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    String addTagToAsset(String userId,
-                         String assetGUID,
-                         String tagName,
-                         String tagDescription) throws InvalidParameterException,
-                                                       PropertyServerException,
-                                                       UserNotAuthorizedException;
-
-
-    /**
-     * Adds a new private tag to the asset's properties.
-     *
-     * @param userId         - String - userId of user making request.
-     * @param assetGUID      - String - unique id for the asset.
-     * @param tagName        - String - name of the tag.
-     * @param tagDescription - String - (optional) description of the tag.  Setting a description, particularly in
-     *                       a public tag makes the tag more valuable to other users and can act as an embryonic
-     *                       glossary term.
-     * @return String - GUID for new tag.
-     * @throws InvalidParameterException  - one of the parameters is null or invalid.
-     * @throws PropertyServerException    - There is a problem adding the asset properties to
-     *                                    the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    String addPrivateTagToAsset(String userId,
-                                String assetGUID,
-                                String tagName,
-                                String tagDescription) throws InvalidParameterException,
-                                                              PropertyServerException,
-                                                              UserNotAuthorizedException;
-
-
-
-    /**
-     * Adds a rating to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for the asset.
-     * @param starRating - StarRating  - enumeration for none, one to five stars.
-     * @param review - String - user review of asset.
-     *
-     * @return guid of new rating object.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    String addRatingToAsset(String     userId,
-                            String     assetGUID,
-                            StarRating starRating,
-                            String     review) throws InvalidParameterException,
-                                                      PropertyServerException,
-                                                      UserNotAuthorizedException;
-
-    /**
-     * Adds a "Like" to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for the asset
-     *
-     * @return guid of new like object.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    String addLikeToAsset(String       userId,
-                          String       assetGUID) throws InvalidParameterException,
-                                                         PropertyServerException,
-                                                         UserNotAuthorizedException;
-
-
-    /**
-     * Adds a comment to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for the asset.
-     * @param commentType - type of comment enum.
-     * @param commentText - String - the text of the comment.
-     *
-     * @return guid of new comment.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    String addCommentToAsset(String      userId,
-                             String      assetGUID,
-                             CommentType commentType,
-                             String      commentText) throws InvalidParameterException,
-                                                             PropertyServerException,
-                                                             UserNotAuthorizedException;
-
-
-    /**
-     * Adds a comment to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param commentGUID - String - unique id for an existing comment.  Used to add a reply to a comment.
-     * @param commentType - type of comment enum.
-     * @param commentText - String - the text of the comment.
-     *
-     * @return guid of new comment.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    String addCommentReply(String      userId,
-                           String      commentGUID,
-                           CommentType commentType,
-                           String      commentText) throws InvalidParameterException,
-                                                           PropertyServerException,
-                                                           UserNotAuthorizedException;
-
-
-    /**
-     * Removes a tag from the asset that was added by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param tagGUID - String - unique id for the tag.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    void   removeTag(String     userId,
-                     String     tagGUID) throws InvalidParameterException,
-                                                PropertyServerException,
-                                                UserNotAuthorizedException;
-
-
-    /**
-     * Removes a tag from the asset that was added by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param tagGUID - String - unique id for the tag.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    void   removePrivateTag(String     userId,
-                            String     tagGUID) throws InvalidParameterException,
-                                                       PropertyServerException,
-                                                       UserNotAuthorizedException;
-
-
-    /**
-     * Removes of a star rating that was added to the asset by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param ratingGUID - String - unique id for the rating object
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    void   removeRating(String     userId,
-                        String     ratingGUID) throws InvalidParameterException,
-                                                      PropertyServerException,
-                                                      UserNotAuthorizedException;
-
-
-    /**
-     * Removes a "Like" added to the asset by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param likeGUID - String - unique id for the like object
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    void   removeLike(String     userId,
-                      String     likeGUID) throws InvalidParameterException,
-                                                  PropertyServerException,
-                                                  UserNotAuthorizedException;
-
-
-    /**
-     * Removes a comment added to the asset by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param commentGUID - String - unique id for the comment object
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem updating the asset properties in
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the user does not have permission to perform this request.
-     */
-    void   removeComment(String     userId,
-                         String     commentGUID) throws InvalidParameterException,
-                                                        PropertyServerException,
-                                                        UserNotAuthorizedException;
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/admin/AssetConsumerAdmin.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/admin/AssetConsumerAdmin.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/admin/AssetConsumerAdmin.java
deleted file mode 100644
index c3d4b75..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/admin/AssetConsumerAdmin.java
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.admin;
-
-import org.apache.atlas.omag.configuration.properties.AccessServiceConfig;
-import org.apache.atlas.omag.configuration.registration.AccessServiceAdmin;
-import org.apache.atlas.omag.ffdc.exception.OMAGConfigurationErrorException;
-import org.apache.atlas.omas.assetconsumer.auditlog.AssetConsumerAuditCode;
-import org.apache.atlas.omas.assetconsumer.listener.AssetConsumerOMRSTopicListener;
-import org.apache.atlas.omas.assetconsumer.server.AssetConsumerRESTServices;
-import org.apache.atlas.omrs.auditlog.OMRSAuditLog;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-import org.apache.atlas.omrs.topicconnectors.OMRSTopicConnector;
-
-public class AssetConsumerAdmin implements AccessServiceAdmin
-{
-    private OMRSRepositoryConnector repositoryConnector = null;
-    private OMRSTopicConnector      omrsTopicConnector  = null;
-    private AccessServiceConfig     accessServiceConfig = null;
-    private OMRSAuditLog            auditLog            = null;
-    private String                  serverUserName      = null;
-
-    private AssetConsumerOMRSTopicListener  omrsTopicListener = null;
-
-    /**
-     * Default constructor
-     */
-    public AssetConsumerAdmin()
-    {
-    }
-
-
-    /**
-     * Initialize the access service.
-     *
-     * @param accessServiceConfigurationProperties - specific configuration properties for this access service.
-     * @param enterpriseOMRSTopicConnector - connector for receiving OMRS Events from the cohorts
-     * @param enterpriseOMRSRepositoryConnector - connector for querying the cohort repositories
-     * @param auditLog - audit log component for logging messages.
-     * @param serverUserName - user id to use on OMRS calls where there is no end user.
-     * @throws OMAGConfigurationErrorException - invalid parameters in the configuration properties.
-     */
-    public void initialize(AccessServiceConfig     accessServiceConfigurationProperties,
-                           OMRSTopicConnector      enterpriseOMRSTopicConnector,
-                           OMRSRepositoryConnector enterpriseOMRSRepositoryConnector,
-                           OMRSAuditLog            auditLog,
-                           String                  serverUserName) throws OMAGConfigurationErrorException
-    {
-        final String            actionDescription = "initialize";
-        AssetConsumerAuditCode  auditCode;
-
-        auditCode = AssetConsumerAuditCode.SERVICE_INITIALIZING;
-        auditLog.logRecord(actionDescription,
-                           auditCode.getLogMessageId(),
-                           auditCode.getSeverity(),
-                           auditCode.getFormattedLogMessage(),
-                           null,
-                           auditCode.getSystemAction(),
-                           auditCode.getUserAction());
-
-        this.repositoryConnector = enterpriseOMRSRepositoryConnector;
-        AssetConsumerRESTServices.setRepositoryConnector(accessServiceConfigurationProperties.getAccessServiceName(),
-                                                         repositoryConnector);
-
-        this.accessServiceConfig = accessServiceConfigurationProperties;
-        this.omrsTopicConnector = enterpriseOMRSTopicConnector;
-
-        if (omrsTopicConnector != null)
-        {
-            auditCode = AssetConsumerAuditCode.SERVICE_REGISTERED_WITH_TOPIC;
-            auditLog.logRecord(actionDescription,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-
-            omrsTopicListener = new AssetConsumerOMRSTopicListener(accessServiceConfig.getAccessServiceOutTopic(),
-                                                                   repositoryConnector.getRepositoryHelper(),
-                                                                   repositoryConnector.getRepositoryValidator(),
-                                                                   accessServiceConfig.getAccessServiceName());
-
-            omrsTopicConnector.registerListener(omrsTopicListener);
-        }
-
-        this.auditLog = auditLog;
-        this.serverUserName = serverUserName;
-
-        auditCode = AssetConsumerAuditCode.SERVICE_INITIALIZED;
-        auditLog.logRecord(actionDescription,
-                           auditCode.getLogMessageId(),
-                           auditCode.getSeverity(),
-                           auditCode.getFormattedLogMessage(),
-                           null,
-                           auditCode.getSystemAction(),
-                           auditCode.getUserAction());
-    }
-
-
-    /**
-     * Shutdown the access service.
-     */
-    public void shutdown()
-    {
-        final String            actionDescription = "shutdown";
-        AssetConsumerAuditCode  auditCode;
-
-        auditCode = AssetConsumerAuditCode.SERVICE_SHUTDOWN;
-        auditLog.logRecord(actionDescription,
-                           auditCode.getLogMessageId(),
-                           auditCode.getSeverity(),
-                           auditCode.getFormattedLogMessage(),
-                           null,
-                           auditCode.getSystemAction(),
-                           auditCode.getUserAction());
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/auditlog/AssetConsumerAuditCode.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/auditlog/AssetConsumerAuditCode.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/auditlog/AssetConsumerAuditCode.java
deleted file mode 100644
index 1d76880..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/auditlog/AssetConsumerAuditCode.java
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.auditlog;
-
-import org.apache.atlas.omrs.auditlog.OMRSAuditLogRecordSeverity;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.text.MessageFormat;
-import java.util.Arrays;
-
-/**
- * The AssetConsumerAuditCode is used to define the message content for the OMRS Audit Log.
- *
- * The 5 fields in the enum are:
- * <ul>
- *     <li>Log Message Id - to uniquely identify the message</li>
- *     <li>Severity - is this an event, decision, action, error or exception</li>
- *     <li>Log Message Text - includes placeholder to allow additional values to be captured</li>
- *     <li>Additional Information - further parameters and data relating to the audit message (optional)</li>
- *     <li>SystemAction - describes the result of the situation</li>
- *     <li>UserAction - describes how a user should correct the situation</li>
- * </ul>
- */
-public enum AssetConsumerAuditCode
-{
-    SERVICE_INITIALIZING("OMAS-ASSET-CONSUMER-0001",
-              OMRSAuditLogRecordSeverity.INFO,
-              "The Asset Consumer Open Metadata Access Service (OMAS) is initializing",
-              "The local server has started up the Asset Consumer OMAS.",
-              "No action is required.  This is part of the normal operation of the server."),
-
-    SERVICE_REGISTERED_WITH_TOPIC("OMAS-ASSET-CONSUMER-0002",
-              OMRSAuditLogRecordSeverity.INFO,
-              "The Asset Consumer Open Metadata Access Service (OMAS) is registering a listener with the OMRS Topic",
-              "The Asset Consumer OMAS is registering to receive events from the connected open metadata repositories.",
-              "No action is required.  This is part of the normal operation of the server."),
-
-    SERVICE_INITIALIZED("OMAS-ASSET-CONSUMER-0003",
-              OMRSAuditLogRecordSeverity.INFO,
-              "The Asset Consumer Open Metadata Access Service (OMAS) is initialized",
-              "The Asset Consumer OMAS has completed initialization.",
-              "No action is required.  This is part of the normal operation of the server."),
-
-    SERVICE_SHUTDOWN("OMAS-ASSET-CONSUMER-0004",
-              OMRSAuditLogRecordSeverity.INFO,
-              "The Asset Consumer Open Metadata Access Service (OMAS) is shutting down",
-              "The local server has requested shut down of the Asset Consumer OMAS.",
-              "No action is required.  This is part of the normal operation of the server."),
-
-
-    ;
-
-    private String                     logMessageId;
-    private OMRSAuditLogRecordSeverity severity;
-    private String                     logMessage;
-    private String                     systemAction;
-    private String                     userAction;
-
-    private static final Logger log = LoggerFactory.getLogger(AssetConsumerAuditCode.class);
-
-
-    /**
-     * The constructor for OMRSAuditCode expects to be passed one of the enumeration rows defined in
-     * OMRSAuditCode above.   For example:
-     *
-     *     OMRSAuditCode   auditCode = OMRSAuditCode.SERVER_NOT_AVAILABLE;
-     *
-     * This will expand out to the 4 parameters shown below.
-     *
-     * @param messageId - unique Id for the message
-     * @param severity - severity of the message
-     * @param message - text for the message
-     * @param systemAction - description of the action taken by the system when the condition happened
-     * @param userAction - instructions for resolving the situation, if any
-     */
-    AssetConsumerAuditCode(String                     messageId,
-                           OMRSAuditLogRecordSeverity severity,
-                           String                     message,
-                           String                     systemAction,
-                           String                     userAction)
-    {
-        this.logMessageId = messageId;
-        this.severity = severity;
-        this.logMessage = message;
-        this.systemAction = systemAction;
-        this.userAction = userAction;
-    }
-
-
-    /**
-     * Returns the unique identifier for the error message.
-     *
-     * @return logMessageId
-     */
-    public String getLogMessageId()
-    {
-        return logMessageId;
-    }
-
-
-    /**
-     * Return the severity of the audit log record.
-     *
-     * @return OMRSAuditLogRecordSeverity enum
-     */
-    public OMRSAuditLogRecordSeverity getSeverity()
-    {
-        return severity;
-    }
-
-    /**
-     * Returns the log message with the placeholders filled out with the supplied parameters.
-     *
-     * @param params - strings that plug into the placeholders in the logMessage
-     * @return logMessage (formatted with supplied parameters)
-     */
-    public String getFormattedLogMessage(String... params)
-    {
-        if (log.isDebugEnabled())
-        {
-            log.debug(String.format("<== OMRS Audit Code.getMessage(%s)", Arrays.toString(params)));
-        }
-
-        MessageFormat mf = new MessageFormat(logMessage);
-        String result = mf.format(params);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(String.format("==> OMRS Audit Code.getMessage(%s): %s", Arrays.toString(params), result));
-        }
-
-        return result;
-    }
-
-
-
-    /**
-     * Returns a description of the action taken by the system when the condition that caused this exception was
-     * detected.
-     *
-     * @return systemAction String
-     */
-    public String getSystemAction()
-    {
-        return systemAction;
-    }
-
-
-    /**
-     * Returns instructions of how to resolve the issue reported in this exception.
-     *
-     * @return userAction String
-     */
-    public String getUserAction()
-    {
-        return userAction;
-    }
-}


[13/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/OMRSErrorCode.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/OMRSErrorCode.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/OMRSErrorCode.java
deleted file mode 100644
index 9d84f36..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/OMRSErrorCode.java
+++ /dev/null
@@ -1,780 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.text.MessageFormat;
-import java.util.Arrays;
-
-/**
- * The OMRSErrorCode is used to define first failure data capture (FFDC) for errors that occur within the OMRS
- * It is used in conjunction with all OMRS Exceptions, both Checked and Runtime (unchecked).
- *
- * The 5 fields in the enum are:
- * <ul>
- *     <li>HTTP Error Code - for translating between REST and JAVA - Typically the numbers used are:</li>
- *     <li><ul>
- *         <li>500 - internal error</li>
- *         <li>501 - not implemented </li>
- *         <li>503 - Service not available</li>
- *         <li>400 - invalid parameters</li>
- *         <li>401 - unauthorized</li>
- *         <li>404 - not found</li>
- *         <li>405 - method not allowed</li>
- *         <li>409 - data conflict errors - eg item already defined</li>
- *     </ul></li>
- *     <li>Error Message Id - to uniquely identify the message</li>
- *     <li>Error Message Text - includes placeholder to allow additional values to be captured</li>
- *     <li>SystemAction - describes the result of the error</li>
- *     <li>UserAction - describes how a user should correct the error</li>
- * </ul>
- */
-public enum OMRSErrorCode
-{
-    TYPEDEF_IN_USE(400, "OMRS-REPOSITORY-400-001 ",
-            "Unable to delete the TypeDef \"{0}\" (guid = {1}) since it is still in use in the open metadata repository {2}",
-            "The system is unable to delete the TypeDef because there are still instances in the metadata repository that are using it.",
-            "Remove the existing instances from the open metadata repositories and try the delete again."),
-    ATTRIBUTE_TYPEDEF_IN_USE(400, "OMRS-REPOSITORY-400-002 ",
-            "Unable to delete the AttributeTypeDef \"{0}\" (guid = {1}) since it is still in use in the open metadata repository {2}",
-            "The system is unable to delete the AttributeTypeDef because there are still instances in the metadata repository that are using it.",
-            "Remove the existing instances from the open metadata repositories and try the delete again."),
-    TYPEDEF_ALREADY_DEFINED(400, "OMRS-REPOSITORY-400-003 ",
-            "Unable to add the TypeDef \"{0}\" (guid = {1}) since it is already defined in the open metadata repository {2}",
-            "The system is unable to add the TypeDef to its repository because it is already defined.",
-            "Validate that the existing definition is as required.  It is possible to patch the TypeDef, or delete it and re-define it."),
-    ATTRIBUTE_TYPEDEF_ALREADY_DEFINED(400, "OMRS-REPOSITORY-400-004 ",
-            "Unable to add the AttributeTypeDef \"{0}\" (guid = {1}) since it is already defined in the open metadata repository {2}",
-            "The system is unable to delete the AttributeTypeDef because there are still instances in the metadata repository that are using it.",
-            "Validate that the existing definition is as required.  It is possible to patch the TypeDef, or delete it and re-define it."),
-    UNKNOWN_CLASSIFICATION(400, "OMRS-REPOSITORY-400-005 ",
-            "Classification \"{0}\" is not a recognized classification type by open metadata repository {1}",
-            "The system is unable to create a new classification for an entity because the open metadata repository does not recognize the classification type.",
-            "Create a ClassificationDef for the classification and retry the request."),
-    INVALID_CLASSIFICATION_FOR_ENTITY(400, "OMRS-REPOSITORY-400-006 ",
-            "Open metadata repository {0} is unable to assign a classification of type \"{0}\" to an entity of type \"{1}\" because the classification type is not valid for this type of entity",
-            "The system is unable to classify an entity because the ClassificationDef for the classification does not list this entity type, or one of its super-types.",
-            "Update the ClassificationDef to include the entity's type and rerun the request. Alternatively use a different classification."),
-    NO_TYPEDEF_NAME(400, "OMRS-REPOSITORY-400-007 ",
-            "A null TypeDef name has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the TypeDef name is needed.",
-            "Correct the caller's code and retry the request."),
-    NO_ATTRIBUTE_TYPEDEF_NAME(400, "OMRS-REPOSITORY-400-008 ",
-            "A null AttributeTypeDef name has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the AttributeTypeDef name is needed.",
-            "Correct the caller's code and retry the request."),
-    NO_TYPEDEF_CATEGORY(400, "OMRS-REPOSITORY-400-009 ",
-            "A null TypeDef category has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the TypeDef category is needed.",
-            "Correct the caller's code and retry the request."),
-    NO_ATTRIBUTE_TYPEDEF_CATEGORY(400, "OMRS-REPOSITORY-400-010 ",
-            "A null AttributeTypeDef category has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the AttributeTypeDef category is needed.",
-            "Correct the caller's code and retry the request."),
-    NO_MATCH_CRITERIA(400, "OMRS-REPOSITORY-400-011 ",
-            "A null list of match criteria properties has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the match criteria is needed.",
-            "Correct the caller's code and retry the request."),
-    NO_EXTERNAL_ID(400, "OMRS-REPOSITORY-400-012 ",
-            "Null values for all of the parameters describing an external id for a standard has been passed on a {0} request to open metadata repository {1}",
-            "The system is unable to perform the request because at least one of the values are needed.",
-            "Correct the caller's code and retry the request."),
-    NO_SEARCH_CRITERIA(400, "OMRS-REPOSITORY-400-013 ",
-            "A null search criteria has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the search criteria is needed.",
-            "Correct the caller's code and retry the request."),
-    NO_GUID(400, "OMRS-REPOSITORY-400-014 ",
-            "A null unique identifier (guid) has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the unique identifier is needed.",
-            "Correct the caller's code and retry the request."),
-    NO_TYPEDEF(400, "OMRS-REPOSITORY-400-015 ",
-            "A null TypeDef has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the TypeDef is needed.",
-            "Correct the caller's code and retry the request."),
-    NO_ATTRIBUTE_TYPEDEF(400, "OMRS-REPOSITORY-400-016 ",
-            "A null AttributeTypeDef has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the AttributeTypeDef is needed.",
-            "Correct the caller's code and retry the request."),
-    INVALID_TYPEDEF(400, "OMRS-REPOSITORY-400-017 ",
-            "An invalid TypeDef {0} (guid={1}) has been passed as the {2} parameter on a {3} request to open metadata repository {4}. Full TypeDef is {5}",
-            "The system is unable to perform the request because the TypeDef is needed.",
-            "Correct the caller's code and retry the request."),
-    INVALID_ATTRIBUTE_TYPEDEF(400, "OMRS-REPOSITORY-400-018 ",
-            "An invalid AttributeTypeDef {0} (guid={1}) has been passed as the {2} parameter on a {3} request to open metadata repository {4}. Full AttributeTypeDef is {5}",
-            "The system is unable to perform the request because the AttributeTypeDef is needed.",
-            "Correct the caller's code and retry the request."),
-    NULL_TYPEDEF(400, "OMRS-REPOSITORY-400-019 ",
-            "A null TypeDef has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the TypeDef is needed to perform the operation.",
-            "Correct the caller's code and retry the request."),
-    NULL_ATTRIBUTE_TYPEDEF(400, "OMRS-REPOSITORY-400-020 ",
-            "A null AttributeTypeDef has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the AttributeTypeDef is needed to perform the operation.",
-            "Correct the caller's code and retry the request."),
-    NULL_TYPEDEF_GALLERY(400, "OMRS-REPOSITORY-400-021 ",
-            "A null TypeDefGalleryResponse object has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the TypeDefGalleryResponse should contain the information to process.",
-            "Correct the caller's code and retry the request."),
-    NULL_TYPEDEF_IDENTIFIER(400, "OMRS-REPOSITORY-400-022 ",
-            "A null unique identifier (guid) for a TypeDef object has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the identifier for the TypeDef is needed to proceed.",
-            "Correct the caller's code and retry the request."),
-    NULL_TYPEDEF_NAME(400, "OMRS-REPOSITORY-400-023 ",
-            "A null unique name for a TypeDef object has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the identifier for the TypeDef is needed to proceed.",
-            "Correct the caller's code and retry the request."),
-    NULL_ATTRIBUTE_TYPEDEF_IDENTIFIER(400, "OMRS-REPOSITORY-400-024 ",
-            "A null unique identifier (guid) for a AttributeTypeDef object has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the identifier for the AttributeTypeDef is needed to proceed.",
-            "Correct the caller's code and retry the request."),
-    NULL_METADATA_COLLECTION(400, "OMRS-REPOSITORY-400-025 ",
-            "Open metadata repository for server {0} has not initialized correctly because it has a null metadata collection.",
-            "The system is unable to process requests for this repository.",
-            "Verify that the repository connector is correctly configured in the OMAG server."),
-    NULL_CLASSIFICATION_NAME(400, "OMRS-REPOSITORY-400-026 ",
-            "A null classification name has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to access the local metadata repository.",
-            "The classification name is supplied by the caller to the API. This call needs to be corrected before the server can operate correctly."),
-    NULL_USER_ID(400, "OMRS-REPOSITORY-400-027 ",
-            "A null user name has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to access the local metadata repository.",
-            "The user name is supplied by the caller to the API. This call needs to be corrected before the server can operate correctly."),
-    BAD_PROPERTY_FOR_TYPE(400, "OMRS-REPOSITORY-400-028 ",
-            "A property called {0} has been proposed for a new metadata instance of category {1} and type {2}; it is not supported for this type in open metadata repository {3}",
-            "The system is unable to store the metadata instance in the metadata repository because the properties listed do not match the supplied type definition.",
-            "Verify that the property name is spelt correctly and the correct type has been used. Correct the call to the metadata repository and retry."),
-    NO_PROPERTIES_FOR_TYPE(400, "OMRS-REPOSITORY-400-029 ",
-            "Properties have been proposed for a new metadata instance of category {0} and type {1}; properties not supported for this type in open metadata repository {2}",
-            "The system is unable to store the metadata instance in the metadata repository because the properties listed do not match the supplied type definition.",
-            "Verify that the property name is spelt correctly and the correct type has been used. Correct the call to the metadata repository and retry."),
-    BAD_PROPERTY_TYPE(400, "OMRS-REPOSITORY-400-030 ",
-            "A property called {0} of type {1} has been proposed for a new metadata instance of category {2} and type {3}; this property should be of type {4} in open metadata repository {5}",
-            "The system is unable to store the metadata instance in the metadata repository because the properties listed do not match the supplied type definition.",
-            "Verify that the property name is spelt correctly and the correct type has been used. Correct the call to the metadata repository and retry."),
-    NULL_PROPERTY_NAME_FOR_INSTANCE(400, "OMRS-REPOSITORY-400-031 ",
-            "A null property name has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to process the metadata instance.",
-            "The property name is supplied by the caller to the API. This call needs to be corrected before the server can operate correctly."),
-    NULL_PROPERTY_VALUE_FOR_INSTANCE(400, "OMRS-REPOSITORY-400-032 ",
-            "A null property value has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to process the metadata instance.",
-            "The property value is supplied by the caller to the API. This call needs to be corrected before the server can operate correctly."),
-    NULL_PROPERTY_TYPE_FOR_INSTANCE(400, "OMRS-REPOSITORY-400-033 ",
-            "A null property type has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to process the metadata instance.",
-            "The property type is supplied by the caller to the API. This call needs to be corrected before the server can operate correctly."),
-    BAD_TYPEDEF_ID_FOR_INSTANCE(400, "OMRS-REPOSITORY-400-034 ",
-            "A invalid TypeDef unique identifier (guid) has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to perform the request because the unique identifier is needed.",
-            "Correct the caller's code and retry the request."),
-    BAD_INSTANCE_STATUS(400, "OMRS-REPOSITORY-400-035 ",
-            "An instance status of {0} has been passed as the {1} parameter on a {2} request to open metadata repository {3} but this status is not valid for an instance of type {4}",
-            "The system is unable to process the request.",
-            "The instance status is supplied by the caller to the API. This call needs to be corrected before the server can complete this operation successfully."),
-    NULL_INSTANCE_STATUS(400, "OMRS-REPOSITORY-400-036 ",
-            "A null instance status has been passed as the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to process the metadata instance request.",
-            "The instance status is supplied by the caller to the API. This call needs to be corrected before the server can operate correctly."),
-    NO_NEW_PROPERTIES(400, "OMRS-REPOSITORY-400-037 ",
-            "No properties have been passed on the {0} parameter on a {1} request to open metadata repository {2}",
-            "The system is unable to process the metadata instance request.",
-            "The instance status is supplied by the caller to the API. This call needs to be corrected before the server can operate correctly."),
-    REPOSITORY_NOT_CRYSTAL_BALL(400, "OMRS-REPOSITORY-400-038 ",
-            "A future time of {0} has been passed on the {0} parameter of a {1} request to open metadata repository {2}",
-            "The system declines to process the request lest it gives away its secret powers.",
-            "The asOfTime is supplied by the caller to the API. This call needs to be corrected before the server will operate correctly."),
-    BAD_TYPEDEF_IDS_FOR_DELETE(400, "OMRS-REPOSITORY-400-039 ",
-            "Incompatible TypeDef unique identifiers (name={0}, guid{1}) have been passed on a {2} request for instance {3} to open metadata repository {2}",
-            "The system is unable to perform the request because the unique identifier is needed.",
-            "Correct the caller's code and retry the request."),
-    BAD_PROPERTY_FOR_INSTANCE(400, "OMRS-REPOSITORY-400-040 ",
-            "An invalid property has been found in a metadata instance stored in repository {0} during the {1} operation",
-            "The system is unable to perform the request because the unique identifier is needed.",
-            "Correct the caller's code and retry the request."),
-    NULL_REFERENCE_INSTANCE(400, "OMRS-REPOSITORY-400-041 ",
-            "A null reference instance has been passed to repository {0} during the {1} in the {2} parameter",
-            "The system is unable to perform the request because the instance is needed.",
-            "The reference instance comes from another server.  Look for errors in the audit log and validate that the message passing " +
-                                    "protocol levels are compatible. If nothing is obviously wrong with the set up, " +
-                                    "raise a Jira or ask for help on the dev mailing list."),
-    LOCAL_REFERENCE_INSTANCE(400, "OMRS-REPOSITORY-400-042 ",
-            "A reference instance has been passed to repository {0} during the {1} in the {2} parameter which has the local repository as its home",
-            "The system is unable to perform the request because the instance should come from another repository.",
-            "The reference instance comes from another server.  Look for errors in the audit log and validate that the message passing " +
-                                    "protocol levels are compatible. If nothing is obviously wrong with the set up, " +
-                                    "raise a Jira or ask for help on the dev mailing list."),
-    NULL_ENTITY_PROXY(400, "OMRS-REPOSITORY-400-043 ",
-            "A null entity proxy has been passed to repository {0} as the {1} parameter of the {2} operation",
-            "The system is unable to perform the request because the entity proxy is needed.",
-            "Correct the caller's code and retry the request."),
-    LOCAL_ENTITY_PROXY(400, "OMRS-REPOSITORY-400-044 ",
-            "An entity proxy has been passed to repository {0} as the {1} parameter of the {2} operation which has the local repository as its home",
-            "The system is unable to perform the request because the entity proxy should represent an entity that is homed in another repository.",
-            "Correct the caller's code and retry the request."),
-    INSTANCE_ALREADY_DELETED(400, "OMRS-REPOSITORY-400-045 ",
-            "A {0} request has been made to repository {1} for an instance {2} that is already deleted",
-            "The system is unable to perform the request because the instance is in the wrong state.",
-            "Try a different request or a different instance."),
-    INSTANCE_NOT_DELETED(400, "OMRS-REPOSITORY-400-046 ",
-            "A {0} request has been made to repository {1} for an instance {2} that is not deleted",
-            "The system is unable to perform the request because the instance is in the wrong state.",
-            "Try a different request or a different instance."),
-    INVALID_RELATIONSHIP_ENDS(400, "OMRS-REPOSITORY-400-047 ",
-            "A {0} request has been made to repository {1} for a relationship that has one or more ends of the wrong or invalid type.  Relationship type is {2}; entity proxy for end 1 is {3} and entity proxy for end 2 is {4}",
-            "The system is unable to perform the request because the instance has invalid values.",
-            "Correct the caller's code and retry the request."),
-    ENTITY_NOT_CLASSIFIED(400, "OMRS-REPOSITORY-400-048 ",
-            "A {0} request has been made to repository {1} to remove a non existent classification {2} from entity {3}",
-            "The system is unable to perform the request because the instance has invalid values.",
-            "Correct the caller's code and retry the request."),
-    NULL_TYPEDEF_PATCH(400, "OMRS-REPOSITORY-400-049 ",
-            "A null TypeDef patch has been passed on the {0} operation of repository {1} ",
-            "The system is unable to perform the request because it needs the patch to process the update.",
-            "Correct the caller's code and retry the request."),
-    NEGATIVE_PAGE_SIZE(400, "OMRS-REPOSITORY-400-050 ",
-            "A negative pageSize of {0} has been passed on the {0} parameter of a {1} request to open metadata repository {2}",
-            "The system is unable to process the request.",
-            "The pageSize parameter is supplied by the caller to the API. This call needs to be corrected before the server will operate correctly."),
-    ENTITY_PROXY_ONLY(400, "OMRS-REPOSITORY-400-051 ",
-            "A request for entity {0} has been passed to repository {1} as the {2} parameter of the {3} operation but only an entity proxy has been found",
-            "The system is unable to return all of the details of the entity.  It can only supply an entity summary.",
-            "The fact that the system has a proxy means that the entity exists in one of the members of the connected cohorts.  " +
-                              "The repository where it is located may be unavailable, or the entity has been deleted " +
-                              "but the delete request has not propagated through to this repository."),
-    INVALID_ENTITY_FROM_STORE(400, "OMRS-REPOSITORY-400-052 ",
-            "The entity {0} retrieved from repository {1} during the {2} operation has invalid contents: {3}",
-            "The system is unable continue processing the request.",
-            "This error suggests there is a logic error in either this repository, or the home repository for the instance.  Raise a Jira to get this fixed."),
-    INVALID_RELATIONSHIP_FROM_STORE(400, "OMRS-REPOSITORY-400-053 ",
-            "The relationship {0} retrieved from repository {1} during the {2} operation has invalid contents: {3}",
-            "The system is unable continue processing the request.",
-            "This error suggests there is a logic error in either this repository, or the home repository for the instance.  Raise a Jira to get this fixed."),
-    NULL_INSTANCE_METADATA_COLLECTION_ID(400, "OMRS-REPOSITORY-400-054 ",
-            "The instance {0} retrieved from repository {1} during the {2} operation has a null metadata collection id in its header: {3}",
-            "The system is unable continue processing the request.",
-            "This error suggests there is a logic error in either this repository, or the home repository for the instance.  Raise a Jira to get this fixed."),
-    UNEXPECTED_EXCEPTION_FROM_COHORT(400, "OMRS-REPOSITORY-400-055 ",
-            "An unexpected exception was received from a repository connector during the {0} operation which had message: {1}",
-            "The system is unable continue processing the request.",
-            "This error suggests there is a logic error in either this repository, or the home repository for the instance.  Raise a Jira to get this fixed."),
-    NO_HOME_FOR_INSTANCE(400, "OMRS-REPOSITORY-400-055 ",
-            "The OMRS repository connector operation {0} from the OMRS Enterprise Repository Services can not locate the home repository connector for instance {1} located in metadata collection {2}",
-            "The system is unable continue processing the request.",
-            "This error suggests there is a logic error in either this repository, or the home repository for the instance.  Raise a Jira to get this fixed."),
-    NULL_USER_NAME(400, "OMRS-REST-API-400-001 ",
-            "The OMRS REST API for server {0} has been called with a null user name (userId)",
-            "The system is unable to access the local metadata repository.",
-            "The user name is supplied by the caller to the API. This call needs to be corrected before the server can operate correctly."),
-    NO_MORE_ELEMENTS(400, "OMRS-PROPERTIES-400-001 ",
-            "No more elements in {0} iterator",
-            "A caller stepping through an iterator has requested more elements when there are none left.",
-            "Recode the caller to use the hasNext() method to check for more elements before calling next() and then retry."),
-    NULL_CLASSIFICATION_PROPERTY_NAME(400, "OMRS-PROPERTIES-400-002 ",
-            "No name provided for entity classification",
-            "A classification with a null name is assigned to an entity.   This value should come from a metadata repository, and always be filled in.",
-            "Look for other error messages to identify the source of the problem.  Identify the metadata repository where the asset came from.  Correct the cause of the error and then retry."),
-    NULL_PROPERTY_NAME(400, "OMRS-PROPERTIES-400-003 ",
-            "Null property name passed to properties object",
-            "A request to set an additional property failed because the property name passed was null",
-            "Recode the call to the property object with a valid property name and retry."),
-    ARRAY_OUT_OF_BOUNDS(400, "OMRS-PROPERTIES-400-004 ",
-            "{0} is unable to add a new element to location {1} of an array of size {2} value",
-            "There is an error in the update of an ArrayPropertyValue.",
-            "Recode the call to the property object with a valid element location and retry."),
-    BAD_ATTRIBUTE_TYPE(400, "OMRS-PROPERTIES-400-005 ",
-            "AttributeDefs may only be of primitive, collection or enum type. {0} of category {1} is not allowed.",
-            "There is an error in the creation of an AttributeDefType.",
-            "Recode the call to the AttributeDefType object with a valid type."),
-    REPOSITORY_URL_MALFORMED(400, "OMRS-CONNECTOR-400-001 ",
-            "The Open Metadata Repository Server URL {0} is not in a recognized format",
-            "The system is unable to connect to the open metadata repository to retrieve metadata properties.",
-            "Retry the request when the connection configuration for this repository is corrected."),
-    NULL_CONNECTION(400, "OMRS-CONNECTOR-400-002 ",
-            "The connection passed to OMASConnectedAssetProperties for connector {0} is null.",
-            "The system is unable to populate the ConnectedAssetProperties object because it needs the connection to identify the asset.",
-            "Look for other error messages to identify what caused this error.  When the issue is resolved, retry the request."),
-    NULL_OMRS_CONNECTION(400, "OMRS-CONNECTOR-400-003 ",
-            "The connection passed to the EnterpriseOMRSRepositoryConnector is null.",
-            "The system is unable to populate the EnterpriseOMRSRepositoryConnector object because it needs the connection to identify the repository.",
-            "Look for other error messages to identify what caused this error.  When the issue is resolved, retry the request."),
-    INVALID_OMRS_CONNECTION(400, "OMRS-CONNECTOR-400-004 ",
-            "The connection {0} passed to the EnterpriseOMRSRepositoryConnector is invalid.",
-            "The system is unable to populate the EnterpriseOMRSRepositoryConnector object because it needs the connection to identify the repository.",
-            "Look for other error messages to identify what caused this error.  When the issue is resolved, retry the request."),
-    NULL_TOPIC_CONNECTOR(400, "OMRS-TOPIC-CONNECTOR-400-001 ",
-            "Unable to send or receive events for source {0} because the connector to the OMRS Topic failed to initialize",
-            "The local server will not connect to the cohort.",
-            "The connection to the connector is configured in the server configuration.  " +
-                                 "Review previous error messages to determine the precise error in the " +
-                                 "start up configuration. " +
-                                 "Correct the configuration and reconnect the server to the cohort. "),
-    NULL_REGISTRY_STORE(400, "OMRS-COHORT-REGISTRY-404-001 ",
-            "The Open Metadata Repository Cohort Registry Store for cohort {0} is not available.",
-            "The system is unable to process registration requests from the open metadata repository cohort.",
-            "Correct the configuration for the registry store connection in the server configuration. " +
-            "Retry the request when the registry store configuration is correct."),
-    INVALID_LOCAL_METADATA_COLLECTION_ID(400, "OMRS-COHORT-REGISTRY-400-002 ",
-            "The Open Metadata Repository Cohort {0} is not available to server {1} because the local " +
-                    "metadata collection id has been changed from {2} to {3} since this server registered with the cohort.",
-            "The system is unable to connect with other members of the cohort while this incompatibility exists.",
-            "If there is no reason for the change of local metadata collection id (this is the normal case) " +
-                    "change the local metadata collection id back to its original valid in the server configuration. " +
-                    "If the local metadata collection Id must be changed (due to a conflict for example) " +
-                    "then shutdown the server, restart it with no local repository configured and shut it down " +
-                    "normally once the server has successfully unregistered with the cohort. " +
-                    "Then re-establish the local repository configuration." +
-            "Restart the server once the configuration is correct."),
-    NULL_AUDIT_LOG_STORE(400, "OMRS-AUDIT-LOG-400-001 ",
-            "The Audit Log Store for server {0} is not available.",
-            "The system is unable to process any open metadata registry services (OMRS) requests because " +
-                                 "the audit log for this server is unavailable.",
-            "Correct the configuration for the audit log store connection in the server configuration. " +
-                                "Retry the request when the audit log store configuration is correct."),
-    NULL_ARCHIVE_STORE(400, "OMRS-ARCHIVE-MANAGER-400-001 ",
-            "An open metadata archive configured for server {0} is not accessible.",
-             "The system is unable to process the contents of this open metadata archive.  " +
-                               "Other services may fail if they were dependent on this open metadata archive.",
-             "Correct the configuration for the open metadata archive connection in the server configuration. " +
-                                 "Retry the request when the open metadata archive configuration is correct."),
-    NULL_EVENT_MAPPER(400, "OMRS-LOCAL-REPOSITORY-400-001 ",
-             "The repository event mapper configured for the local repository for server {0} is not accessible.",
-             "The system is unable to create the repository event mapper which means that events from the " +
-                              "local repository will not be captured and processed.  " +
-                              "Other services may fail if they were dependent on this event notification.",
-             "Correct the configuration for the repository event mapper connection in the server configuration. " +
-                               "Retry the request when the repository event mapper configuration is correct."),
-    DUPLICATE_COHORT_NAME(400, "OMRS-METADATA-HIGHWAY-404-001 ",
-            "There are more than one cohort configurations with the same name of {0}.",
-            "The system is unable to connect to more than one cohort with the same name.",
-            "Correct the configuration for the cohorts in the server configuration. " +
-                                 "Retry the request when the cohort configuration is correct."),
-    CONFLICTING_ENTERPRISE_TYPEDEFS(400, "OMRS-ENTERPRISE-REPOSITORY-400-001 ",
-            "Conflicting TypeDefs have been detected.",
-            "The system is unable to create a reliable list of TypeDefs for the enterprise.",
-            "Details of the conflicts and the steps necessary to repair the situation can be found in the audit log. " +
-                                  "Retry the request when the cohort configuration is correct."),
-    NO_TYPEDEFS_DEFINED(400, "OMRS-ENTERPRISE-REPOSITORY-400-002 ",
-            "No TypeDefs have been defined in any of the connected repositories.",
-            "The system is unable to create a list of TypeDefs for the enterprise.",
-            "Look for errors in the set up of the repositories in the audit log and verify that TypeDefs are configured. " +
-                                            "Retry the request when the cohort configuration is correct."),
-    DUPLICATE_TYPE_IN_ARCHIVE(400, "OMRS-ARCHIVEBUILDER-400-001 ",
-            "The same type {0} of category {1} has been added twice to an open metadata archive. First version was {2} and the second was {3}.",
-            "The build of the archive terminates.",
-            "Verify the definition of the types being added to the archive. Once the definitions have been corrected, rerun the request."),
-    DUPLICATE_INSTANCE_IN_ARCHIVE(400, "OMRS-ARCHIVEBUILDER-400-001 ",
-            "The {0} instance {1} has been added twice to an open metadata archive. First version was {2} and the second was {3}.",
-            "The build of the archive terminates.",
-            "Verify the definition of the instance being added to the archive. Once the definitions have been corrected, rerun the request."),
-    DUPLICATE_TYPENAME_IN_ARCHIVE(400, "OMRS-ARCHIVEBUILDER-400-002 ",
-            "The same type name {0} has been added twice to an open metadata archive. First version was {1} and the second was {2}.",
-            "The build of the archive terminates.",
-            "Verify the definition of the types being added to the archive. Once the definitions have been corrected, rerun the request."),
-    DUPLICATE_GUID_IN_ARCHIVE(400, "OMRS-ARCHIVEBUILDER-400-003 ",
-            "The guid {0} has been used twice to an open metadata archive. First version was {1} and the second was {2}.",
-            "The build of the archive terminates.",
-            "Verify the definition of the elements being added to the archive. Once the definitions have been corrected, rerun the request."),
-    MISSING_TYPE_IN_ARCHIVE(400, "OMRS-ARCHIVEBUILDER-400-004 ",
-            "The type {0} of category {1} is not found in an open metadata archive.",
-            "The build of the archive terminates.",
-            "Verify the definition of the elements being added to the archive. Once the definitions have been corrected, rerun the request."),
-    MISSING_NAME_FOR_ARCHIVE(400, "OMRS-ARCHIVEBUILDER-400-005 ",
-            "A request for a type from category {0} passed a null name.",
-            "The build of the archive terminates.",
-            "Verify the definition of the elements being added to the archive. Once the definitions have been corrected, rerun the request."),
-    DUPLICATE_ENDDEF1_NAME_IN_ARCHIVE(400, "OMRS-ARCHIVEBUILDER-400-006 ",
-            "endDef2 type {0} and EndDef1 name {1} in RelationshipDef {2} are incorrect, because entity {0} already has a {1} attribute or is referred to in an existing relationshipDef with an endDef with name {1}.",
-            "The build of the archive terminates.",
-            "Verify the definition of the types being added to the archive. Once the definitions have been corrected, rerun the request."),
-    DUPLICATE_ENDDEF2_NAME_IN_ARCHIVE(400, "OMRS-ARCHIVEBUILDER-400-007 ",
-            "EndDef1 type {0} and EndDef2 name {1} in RelationshipDef {2} are incorrect, because entity {0} already has a {1} attribute or is referred to in an existing relationshipDef with an endDef with name {1}.",
-            "The build of the archive terminates.",
-            "Verify the definition of the types being added to the archive. Once the definitions have been corrected, rerun the request."),
-    DUPLICATE_RELATIONSHIP_ATTR_IN_ARCHIVE(400, "OMRS-ARCHIVEBUILDER-400-008 ",
-            "Duplicate attribute name {0} is defined in RelationshipDef {2}. ",
-            "The build of the archive terminates.",
-            "Verify the definition of the types being added to the archive. Once the definitions have been corrected, rerun the request."),
-    DUPLICATE_ENTITY_ATTR_IN_ARCHIVE(400, "OMRS-ARCHIVEBUILDER-400-009 ",
-            "Duplicate attribute name {0} is defined in EntityDef {2}. ",
-            "The build of the archive terminates.",
-            "Verify the definition of the types being added to the archive. Once the definitions have been corrected, rerun the request."),
-    DUPLICATE_CLASSIFICATION_ATTR_IN_ARCHIVE(400, "OMRS-ARCHIVEBUILDER-400-010 ",
-            "Duplicate attribute name {0} is defined in ClassificationDef {2}. ",
-            "The build of the archive terminates.",
-            "Verify the definition of the types being added to the archive. Once the definitions have been corrected, rerun the request."),
-    BLANK_TYPENAME_IN_ARCHIVE(400, "OMRS-ARCHIVEBUILDER-400-011 ",
-            "Type name {0} is invalid because it contains a blank character. ",
-            "The build of the archive terminates.",
-            "Verify the definition of the types being added to the archive. Once the definitions have been corrected, rerun the request."),
-    NULL_LOG_RECORD(400, "OMRS-AUDITLOG-400-001 ",
-            "A null log record has been passed by the audit log to the audit log store.",
-            "The audit log store throws an exception and the log record is not written to the audit log store.",
-            "This is probably an internal error in the audit log.  Raise a jira to get this fixed."),
-    REPOSITORY_NOT_AVAILABLE(404, "OMRS-REPOSITORY-404-001 ",
-            "The open metadata repository connector for server {0} is not active and is unable to service the {1} request",
-            "The system is unable to retrieve any metadata properties from this repository.",
-            "Retry the request when the repository connector is active."),
-    ENTITY_NOT_KNOWN(404, "OMRS-REPOSITORY-404-002 ",
-            "The entity identified with guid \"{0}\" passed on the {1} call is not known to the open metadata repository {2}",
-            "The system is unable to retrieve the properties for the requested entity because the supplied guid is not recognized.",
-            "The guid is supplied by the caller to the server.  It may have a logic problem that has corrupted the guid, or the entity has been deleted since the guid was retrieved."),
-    RELATIONSHIP_NOT_KNOWN(404, "OMRS-REPOSITORY-404-003 ",
-            "The relationship identified with guid \"{0}\" passed on the {1} call is not known to the open metadata repository {2}",
-            "The system is unable to retrieve the properties for the requested relationship because the supplied guid is not recognized.",
-            "The guid is supplied by the caller to the OMRS.  It may have a logic problem that has corrupted the guid, or the relationship has been deleted since the guid was retrieved."),
-    TYPEDEF_NOT_KNOWN(404, "OMRS-REPOSITORY-404-004 ",
-            "The TypeDef \"{0}\" (guid = {1}) passed on the {2} parameter of the {3} operation is not known to the open metadata repository {4}",
-            "The system is unable to retrieve the properties for the requested TypeDef because the supplied identifier is not recognized.",
-            "The identifier is supplied by the caller.  It may have a logic problem that has corrupted the identifier, or the typedef has been deleted since the identifier was retrieved."),
-    TYPEDEF_NOT_KNOWN_FOR_INSTANCE(404, "OMRS-REPOSITORY-404-005 ",
-            "The TypeDef \"{0}\" of category \"{1}\" passed by the {2} operation is not known to the open metadata repository {3}",
-            "The system is unable to retrieve the properties for the requested TypeDef because the supplied identifier is not recognized.",
-            "The identifier is supplied by the caller.  It may have a logic problem that has corrupted the identifier, or the typedef has been deleted since the identifier was retrieved."),
-    ATTRIBUTE_TYPEDEF_NOT_KNOWN(404, "OMRS-REPOSITORY-404-006 ",
-            "The AttributeTypeDef \"{0}\" (guid = {1}) passed on the {2} call is not known to the open metadata repository {3}",
-            "The system is unable to retrieve the properties for the requested TypeDef because the supplied identifier is not recognized.",
-            "The identifier is supplied by the caller.  It may have a logic problem that has corrupted the identifier, or the typedef has been deleted since the identifier was retrieved."),
-    TYPEDEF_ID_NOT_KNOWN(404, "OMRS-REPOSITORY-404-007 ",
-            "The TypeDef unique identifier {0} passed as parameter {1} on a {2} request to open metadata repository {3} is not known to this repository",
-            "The system is unable to retrieve the properties for the requested TypeDef because the supplied identifiers are not recognized.",
-            "The identifier is supplied by the caller.  It may have a logic problem that has corrupted the identifier, or the TypeDef has been deleted since the identifier was retrieved."),
-    ATTRIBUTE_TYPEDEF_ID_NOT_KNOWN(404, "OMRS-REPOSITORY-404-008 ",
-            "The AttributeTypeDef \"{0}\" (guid {1}) passed on a {2} request to open metadata repository {3} is not known to this repository",
-            "The system is unable to retrieve the properties for the requested AttributeTypeDef because the supplied identifiers are not recognized.",
-            "The identifier is supplied by the caller.  It may have a logic problem that has corrupted the identifier, or the AttributeTypeDef has been deleted since the identifier was retrieved."),
-    TYPEDEF_NAME_NOT_KNOWN(404, "OMRS-REPOSITORY-404-009 ",
-            "The TypeDef unique name {0} passed on a {1} request to open metadata repository {2} is not known to this repository",
-            "The system is unable to retrieve the properties for the requested TypeDef because the supplied identifiers are not recognized.",
-            "The identifier is supplied by the caller.  It may have a logic problem that has corrupted the identifier, or the TypeDef has been deleted since the identifier was retrieved."),
-    ATTRIBUTE_TYPEDEF_NAME_NOT_KNOWN(404, "OMRS-REPOSITORY-404-010 ",
-            "The TypeDef unique name {0} passed on a {1} request to open metadata repository {2} is not known to this repository",
-            "The system is unable to retrieve the properties for the requested TypeDef because the supplied identifiers are not recognized.",
-            "The identifier is supplied by the caller.  It may have a logic problem that has corrupted the identifier, or the TypeDef has been deleted since the identifier was retrieved."),
-    COHORT_NOT_CONNECTED(404, "OMRS-REPOSITORY-CONNECTOR-404-002 ",
-            "The Open Metadata Repository Servers in the cohort are not available",
-            "The system is unable to retrieve any metadata properties from this repository.",
-            "Retry the request when the repository server is available."),
-    INVALID_COHORT_CONFIG(404, "OMRS-REPOSITORY-CONNECTOR-404-003 ",
-            "The open metadata repository servers in the cohort are not configured correctly",
-            "The root cause of this error is recorded in previous exceptions.",
-            "Review the other error messages to determine the source of the error.  When these are resolved, retry the request."),
-    METADATA_HIGHWAY_NOT_AVAILABLE(404, "OMRS-METADATA-HIGHWAY-404-001 ",
-            "The local server's metadata highway communication components are failing to initialize",
-            "The root cause of this error is recorded in previous exceptions.",
-            "Review the other error messages to determine the source of the error.  When these are resolved, retry the request."),
-    COHORT_DISCONNECT_FAILED(404, "OMRS-METADATA-HIGHWAY-404-002 ",
-            "The local server is unable to disconnect from an open metadata repository cohort {0}",
-            "The root cause of this error is recorded in previous exceptions.",
-            "Review the other error messages to determine the source of the error.  When these are resolved, retry the request."),
-    TOPIC_CONNECTOR_NOT_AVAILABLE(404, "OMRS-TOPIC-CONNECTOR-404-001 ",
-            "The OMRS Topic Connector is not available",
-            "The system is not able to process events sent between repositories in the open metadata cohort.",
-            "Correct the configuration for the OMRS Topic Connector (in the OMRS Configuration). Retry the request when the topic connector configuration is correct."),
-    REMOTE_REPOSITORY_ERROR(404, "OMRS-REST-REPOSITORY-CONNECTOR-404-001 ",
-            "A call to the {0} of the open metadata repository server {1} results in an exception with message {2}",
-            "The system is unable to retrieve any metadata properties from this repository.",
-            "Retry the request when the repository server is available."),
-    ENTERPRISE_NOT_SUPPORTED(405, "OMRS-ENTERPRISE-REPOSITORY-CONNECTOR-405-001 ",
-            "The requested method {0} is not supported by the EnterpriseOMRSRepositoryConnector",
-            "The system is not able to process the requested method because it is not supported by the " +
-                                     "Open Metadata Repository Services (OMRS) Enterprise Repository Services.",
-            "Correct the application that called this method."),
-    INVALID_PRIMITIVE_CLASS_NAME(500, "OMRS-METADATA-COLLECTION-500-001 ",
-            "The Java class \'{0}\' for PrimitiveDefCategory {1} is not known",
-            "There is an internal error in Java class PrimitiveDefCategory as it has been set up with an invalid class.",
-            "Raise a Jira to get this fixed."),
-    INVALID_PRIMITIVE_VALUE(500, "OMRS-METADATA-COLLECTION-500-002 ",
-            "The primitive value should be stored in Java class \'{0}\' since it is of PrimitiveDefCategory {1}",
-            "There is an internal error in the creation of a PrimitiveTypeValue.",
-            "Raise a Jira to get this fixed."),
-    INVALID_PRIMITIVE_CATEGORY(500, "OMRS-METADATA-COLLECTION-500-003 ",
-            "There is a problem in the definition of primitive type {0}.",
-            "There is an internal error in the creation of a PrimitiveTypeValue.",
-            "Raise a Jira to get this fixed."),
-    NULL_HOME_METADATA_COLLECTION_ID(500, "OMRS-METADATA-COLLECTION-500-004 ",
-            "Null home metadata collection identifier found in metadata instance {0} from open metadata repository {1}",
-            "A request to retrieve a metadata instance (entity or relationship) has encountered a homeless metadata instance.",
-            "Locate the open metadata repository that supplied the instance and correct the logic in its OMRSRepositoryConnector."),
-    NULL_CONFIG(500, "OMRS-OPERATIONAL-SERVICES-500-001 ",
-            "No configuration has been passed to the Open Metadata Repository Services (OMRS) on initialization",
-            "here is an internal error in the OMRS initialization.",
-            "Raise a Jira to get this fixed."),
-    NULL_METADATA_COLLECTION_ID(500, "OMRS-METADATA-COLLECTION-500-004 ",
-            "The open metadata repository connector \"{0}\" has been initialized with a null metadata collection identifier",
-            "There is an internal error in the OMRS initialization.",
-            "Raise a Jira to get this fixed."),
-    BAD_INTERNAL_PAGING(500, "OMRS-METADATA-COLLECTION-500-005 ",
-            "Open metadata repository {0} has used an invalid paging parameter during the {1} operation",
-            "There is an internal error in the OMRS repository connector.",
-            "Raise a Jira to get this fixed."),
-    BAD_INTERNAL_SEQUENCING(500, "OMRS-METADATA-COLLECTION-500-005 ",
-            "Open metadata repository {0} has used an invalid sequencing parameter during the {1} operation",
-            "There is an internal error in the OMRS repository connector.",
-            "Raise a Jira to get this fixed."),
-    NO_REPOSITORY_CONNECTOR_FOR_COLLECTION(500, "OMRS-METADATA-COLLECTION-500-006 ",
-            "Unable to complete operation {0} to open metadata repository {1} because the repository connector is null",
-            "There is an internal error in the OMRS initialization.",
-            "Raise a Jira to get this fixed."),
-    NO_REPOSITORY_VALIDATOR_FOR_COLLECTION(500, "OMRS-METADATA-COLLECTION-500-007 ",
-            "Unable to complete operation {0} to open metadata repository {1} because the repository validator is null",
-            "There is an internal error in the OMRS initialization.",
-            "Raise a Jira to get this fixed."),
-    NO_REPOSITORY_HELPER_FOR_COLLECTION(500, "OMRS-METADATA-COLLECTION-500-008 ",
-            "Unable to complete operation {0} to open metadata repository {1} because the repository connector is null",
-            "There is an internal error in the OMRS initialization.",
-            "Raise a Jira to get this fixed."),
-    REPOSITORY_LOGIC_ERROR(500, "OMRS-METADATA-COLLECTION-500-009 ",
-            "Open metadata repository {0} has encountered an unexpected exception during the {1} operation.  The message was {2}",
-            "There is an internal error in the OMRS repository connector.",
-            "Raise a Jira to get this fixed."),
-    NULL_INSTANCE_TYPE(500, "OMRS-METADATA-COLLECTION-500-010 ",
-           "During the {0} operation, open metadata repository {1} retrieved an instance from its metadata store that has a null type",
-           "There is an internal error in the OMRS repository connector.",
-           "Raise a Jira to get this fixed."),
-    INACTIVE_INSTANCE_TYPE(500, "OMRS-METADATA-COLLECTION-500-011 ",
-           "During the {0} operation, open metadata repository {1} retrieved an instance (guid={2}) from its metadata store that has an inactive type called {3} (type guid = {4})",
-           "There is an internal error in the OMRS repository connector.",
-           "Raise a Jira to get this fixed."),
-    NULL_COHORT_NAME(500, "OMRS-COHORT-MANAGER-500-001 ",
-            "OMRSCohortManager has been initialized with a null cohort name",
-            "There is an internal error in the OMRS initialization.",
-            "Raise a Jira to get this fixed."),
-    NULL_LOCAL_METADATA_COLLECTION(500, "OMRS-LOCAL-REPOSITORY-500-001 ",
-            "The local repository services have been initialized with a null real metadata collection.",
-            "There is an internal error in the OMRS initialization.",
-            "Raise a Jira to get this fixed."),
-    NULL_ENTERPRISE_METADATA_COLLECTION(500, "OMRS-ENTERPRISE-REPOSITORY-500-001 ",
-            "The enterprise repository services has detected a repository connector with a null metadata collection.",
-            "There is an internal error in the Open Metadata Repository Services (OMRS) operation.",
-            "Raise a Jira to get this fixed."),
-    BAD_TYPEDEF(500, "OMRS-CONTENT-MANAGER-500-001 ",
-            "The repository content manager has detected an invalid TypeDef from {0}.",
-            "There is an internal error in the Open Metadata Repository Services (OMRS) operation.",
-            "Raise a Jira to get this fixed."),
-    BAD_TYPEDEF_ATTRIBUTE_NAME(500, "OMRS-CONTENT-MANAGER-500-002 ",
-            "The repository content manager has detected an invalid attribute name in a TypeDef from {0}.",
-            "There is an internal error in the Open Metadata Repository Services (OMRS) operation.",
-            "Raise a Jira to get this fixed."),
-    NULL_TYPEDEF_ATTRIBUTE(500, "OMRS-CONTENT-MANAGER-500-003 ",
-            "The repository content manager has detected a null attribute in a TypeDef from {0}.",
-            "There is an internal error in the Open Metadata Repository Services (OMRS) operation.",
-            "Raise a Jira to get this fixed."),
-    BAD_CATEGORY_FOR_TYPEDEF_ATTRIBUTE(500, "OMRS-CONTENT-MANAGER-500-004 ",
-            "Source {0} has requested type {1} with an incompatible category of {2} from repository content manager.",
-            "There is an error in the Open Metadata Repository Services (OMRS) operation - probably in the source component.",
-            "Raise a Jira to get this fixed."),
-    ARCHIVE_UNAVAILABLE(500, "OMRS-OPEN-METADATA-TYPES-500-001 ",
-            "The archive builder failed to initialize.",
-            "There is an internal error in the OMRS initialization.",
-            "Raise a Jira to get this fixed."),
-    NULL_EXCHANGE_RULE(500, "OMRS-EVENT-MANAGEMENT-500-001 ",
-            "A null exchange rule has been passed to one of the event management components on method {0}.",
-            "There is an internal error in the OMRS initialization.",
-            "Raise a Jira to get this fixed."),
-    NULL_REPOSITORY_VALIDATOR(500, "OMRS-EVENT-MANAGEMENT-500-002 ",
-            "A null repository validator has been passed to one of the event management components.",
-            "There is an internal error in the OMRS initialization.",
-            "Raise a Jira to get this fixed."),
-    NULL_REPOSITORY_HELPER(500, "OMRS-EVENT-MANAGEMENT-500-003 ",
-            "A null repository helper has been passed to one of the event management components.",
-            "There is an internal error in the OMRS initialization.",
-            "Raise a Jira to get this fixed."),
-    METADATA_COLLECTION_ID_MISMATCH(500, "OMRS-REST-REPOSITORY-CONNECTOR-500-001 ",
-            "A remote open metadata repository {0} returned a metadata collection identifier of {1} on its REST API after it registered with the cohort using a metadata collection identifier of {2}",
-            "There is a configuration error in the remote open metadata repository.",
-            "Review the set up of the remote repository.  It may be that the server-url-root parameter is incorrectly set and is clashing with the setting in another server registered with the same cohort."),
-    NULL_REMOTE_METADATA_COLLECTION_ID(500, "OMRS-REST-REPOSITORY-CONNECTOR-500-002 ",
-            "A remote open metadata repository {0} returned a null metadata collection identifier on its REST API.  It registered with the cohort using a metadata collection identifier of {1}",
-            "There is an internal error in the remote open metadata repository.",
-             "Raise a Jira to get this fixed."),
-    METHOD_NOT_IMPLEMENTED(501, "OMRS-METADATA-COLLECTION-501-001 ",
-            "OMRSMetadataCollection method {0} for OMRS Connector {1} to repository type {2} is not implemented.",
-            "A method in MetadataCollectionBase was called which means that the connector's OMRSMetadataCollection " +
-                                   "(a subclass of MetadataCollectionBase) does not have a complete implementation.",
-            "Raise a Jira to get this fixed."),
-    NO_REPOSITORIES(503, "OMRS-ENTERPRISE-REPOSITORY-503-001 ",
-            "There are no open metadata repositories available for access service {0}.",
-            "The configuration for the server is set up so there is no local repository and no remote repositories " +
-                            "connected through the open metadata repository cohorts.  " +
-                            "This may because of one or more configuration errors.",
-            "Retry the request once the configuration is changed."),
-    ENTERPRISE_DISCONNECTED(503, "OMRS-ENTERPRISE-REPOSITORY-503-002 ",
-            "The enterprise repository services are disconnected from the open metadata repositories.",
-            "The server has shutdown (or failed to set up) access to the open metadata repositories.",
-            "Retry the request once the open metadata repositories are connected."),
-    NULL_COHORT_METADATA_COLLECTION(503, "OMRS-ENTERPRISE-REPOSITORY-503-003 ",
-            "The enterprise repository services has detected a repository connector from cohort {0} for metadata collection identifier {1} that has a null metadata collection API object.",
-            "There is an internal error in the OMRS Repository Connector implementation.",
-            "Raise a Jira to get this fixed."),
-    NULL_CONTENT_MANAGER(503, "OMRS-LOCAL-REPOSITORY-503-001 ",
-            "A null repository content manager has been passed to one of the local repository's components on method {0}.",
-            "There is an internal error in the OMRS Local Repository Connector implementation, or the way it has been initialized.",
-            "Raise a Jira to get this fixed."),
-    NULL_SOURCE_NAME(503, "OMRS-LOCAL-REPOSITORY-503-002 ",
-            "A null repository content manager has been passed to one of the local repository's components on method {0}.",
-            "There is an internal error in the OMRS Local Repository Connector implementation, or the way it has been initialized.",
-            "Raise a Jira to get this fixed."),
-    LOCAL_REPOSITORY_CONFIGURATION_ERROR(503, "OMRS-LOCAL-REPOSITORY-503-003 ",
-            "The connection to the local open metadata repository server is not configured correctly",
-            "The root cause of this error is recorded in previous exceptions.",
-            "Review the other error messages to determine the source of the error.  When these are resolved, retry the request."),
-    BAD_LOCAL_REPOSITORY_CONNECTION(503, "OMRS-LOCAL-REPOSITORY-503-004 ",
-            "The connection to the local open metadata repository server is not configured correctly",
-            "The root cause of this error is recorded in previous exceptions.",
-            "Review the other error messages to determine the source of the error.  When these are resolved, retry the request."),
-    VALIDATION_LOGIC_ERROR(503, "OMRS-LOCAL-REPOSITORY-503-005 ",
-             "An OMRS repository connector or access service {0} has passed an invalid parameter to the repository validator {1} operation as part of the {2} request",
-             "The open metadata component has called the repository validator operations in the wrong order or has a similar logic error.",
-             "Raise a Jira to get this fixed."),
-    HELPER_LOGIC_ERROR(503, "OMRS-LOCAL-REPOSITORY-503-006 ",
-             "An OMRS repository connector {0} has passed an invalid parameter to the repository helper {1} operation as part of the {2} request",
-             "The open metadata component has called the repository helper operations in the wrong order or has a similar logic error.",
-             "Raise a Jira to get this fixed."),
-    CONTENT_MANAGER_LOGIC_ERROR(503, "OMRS-LOCAL-REPOSITORY-503-007 ",
-             "An OMRS repository connector {0} has passed an invalid parameter to the repository content manager {1} operation as part of the {2} request",
-             "The open metadata component has called the repository helper operations in the wrong order or has a similar logic error.",
-             "Raise a Jira to get this fixed."),
-    NULL_CLASSIFICATION_CREATED(503, "OMRS-LOCAL-REPOSITORY-503-008 ",
-             "An OMRS repository connector or access server {0} has passed a null classification to the repository helper {1} operation as part of the {2} request",
-             "The repository connector has called the repository helper operations in the wrong order or has a similar logic error.",
-             "Raise a Jira to get this fixed."),
-    NO_LOCAL_REPOSITORY(503, "OMRS-REST-API-503-001 ",
-            "There is no local repository to support REST API call {0}",
-            "The server has received a call on its open metadata repository REST API services but is unable to process it because the local repository is not active.",
-            "If the server is supposed to have a local repository correct the server configuration and restart the server."),
-    NULL_RESPONSE_FROM_API(503, "OMRS-REST-API-503-002 ",
-            "A null response was received from REST API call {0} to repository {1}",
-            "The server has issued a call to the open metadata repository REST API services in a remote repository and has received a null response.",
-            "Look for errors in the remote repository's audit log and console to understand and correct the source of the error."),
-    CLIENT_SIDE_REST_API_ERROR(503, "OMRS-REST-API-503-003 ",
-            "A client-side exception was received from API call {0} to repository {1}.  The error message was {2}",
-            "The server has issued a call to the open metadata repository REST API services in a remote repository and has received an exception from the local client libraries.",
-            "Look for errors in the local repository's audit log and console to understand and correct the source of the error.")
-
-    ;
-
-    private int    httpErrorCode;
-    private String errorMessageId;
-    private String errorMessage;
-    private String systemAction;
-    private String userAction;
-
-    private static final Logger log = LoggerFactory.getLogger(OMRSErrorCode.class);
-
-
-    /**
-     * The constructor for OMRSErrorCode expects to be passed one of the enumeration rows defined in
-     * OMRSErrorCode above.   For example:
-     *
-     *     OMRSErrorCode   errorCode = OMRSErrorCode.SERVER_NOT_AVAILABLE;
-     *
-     * This will expand out to the 5 parameters shown below.
-     *
-     * @param newHTTPErrorCode - error code to use over REST calls
-     * @param newErrorMessageId - unique Id for the message
-     * @param newErrorMessage - text for the message
-     * @param newSystemAction - description of the action taken by the system when the error condition happened
-     * @param newUserAction - instructions for resolving the error
-     */
-    OMRSErrorCode(int  newHTTPErrorCode, String newErrorMessageId, String newErrorMessage, String newSystemAction, String newUserAction)
-    {
-        this.httpErrorCode = newHTTPErrorCode;
-        this.errorMessageId = newErrorMessageId;
-        this.errorMessage = newErrorMessage;
-        this.systemAction = newSystemAction;
-        this.userAction = newUserAction;
-    }
-
-
-    public int getHTTPErrorCode()
-    {
-        return httpErrorCode;
-    }
-
-
-    /**
-     * Returns the unique identifier for the error message.
-     *
-     * @return errorMessageId
-     */
-    public String getErrorMessageId()
-    {
-        return errorMessageId;
-    }
-
-
-    /**
-     * Returns the error message with placeholders for specific details.
-     *
-     * @return errorMessage (unformatted)
-     */
-    public String getUnformattedErrorMessage()
-    {
-        return errorMessage;
-    }
-
-
-    /**
-     * Returns the error message with the placeholders filled out with the supplied parameters.
-     *
-     * @param params - strings that plug into the placeholders in the errorMessage
-     * @return errorMessage (formatted with supplied parameters)
-     */
-    public String getFormattedErrorMessage(String... params)
-    {
-        if (log.isDebugEnabled())
-        {
-            log.debug(String.format("<== OMRSErrorCode.getMessage(%s)", Arrays.toString(params)));
-        }
-
-        MessageFormat mf = new MessageFormat(errorMessage);
-        String result = mf.format(params);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(String.format("==> OMRSErrorCode.getMessage(%s): %s", Arrays.toString(params), result));
-        }
-
-        return result;
-    }
-
-
-    /**
-     * Returns a description of the action taken by the system when the condition that caused this exception was
-     * detected.
-     *
-     * @return systemAction
-     */
-    public String getSystemAction()
-    {
-        return systemAction;
-    }
-
-
-    /**
-     * Returns instructions of how to resolve the issue reported in this exception.
-     *
-     * @return userAction
-     */
-    public String getUserAction()
-    {
-        return userAction;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/README.md
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/README.md b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/README.md
deleted file mode 100644
index c3bfabe..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/README.md
+++ /dev/null
@@ -1,47 +0,0 @@
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-# Open Metadata Repository Services (OMRS) FFDC
-
-Package org.apache.atlas.omrs.ffdc provides the first failure data capture
-support for the OMRS module.  This includes an error code enum,
-a runtime exception, a base class for checked exceptions plus
-implementation of each specific checked exception.
-
-The error code enum (OMRSErrorCode) has an entry for each unique situation
-where an exception is returned.  Each entry defines:
-
-* A unique id for the error
-* An HTTP error code for rest calls
-* A unique message Id
-* Message text with place holders for specific values
-* A description of the cause of the error and system action as a result.
-* A description of how to correct the error (if known)
-
-Each exception (whether a checked or runtime exception) has two constructors.
-
-* The first constructor is used when a new error has been detected.
-
-* The second constructor is used when another exception has been caught.
-This caught exception is passed on the constructor so it is effectively
-embedded in the OMRS exception.
-
-Both constructors take the values from the OMRSErrorCode
-enum to define the cause and resolution.  These values are passed
-as individual parameters so that subclasses implemented outside of
-the OMRS packages can define their own FFDC values.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/ClassificationErrorException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/ClassificationErrorException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/ClassificationErrorException.java
deleted file mode 100644
index c6de62c..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/ClassificationErrorException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * The ClassificationErrorException is thrown by an OMRS Connector when a classification for a specific entity
- * instance is either not defined for this type of entity or is not currently attached to the requested entity.
- */
-public class ClassificationErrorException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a ClassificationErrorException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public ClassificationErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a ClassificationErrorException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public ClassificationErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityConflictException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityConflictException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityConflictException.java
deleted file mode 100644
index a8a3e20..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityConflictException.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * EntityConflictException provides a checked exception for reporting that an entity can not be added because
- * it conflicts with an entity already stored.  The OMRSErrorCode adds specific details for the cause/effect of the error.
- */
-public class EntityConflictException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor for creating an EntityConflictException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public EntityConflictException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in an
-     * EntityConflictException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtException the exception/error that caused this exception to be raised
-     */
-    public EntityConflictException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtException)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtException);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityNotDeletedException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityNotDeletedException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityNotDeletedException.java
deleted file mode 100644
index 07f84aa..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityNotDeletedException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * EntityNotDeletedException is thrown by an OMRS Connector when a request is made to purge or restore a specific
- * entity instance and the entity is not in DELETED status.
- */
-public class EntityNotDeletedException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a EntityNotDeletedException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public EntityNotDeletedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a EntityNotDeletedException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public EntityNotDeletedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityNotKnownException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityNotKnownException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityNotKnownException.java
deleted file mode 100644
index ea27b5b..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityNotKnownException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * The EntityNotKnownException is thrown by an OMRS Connector when a specific entity instance is requested but this
- * entity is not known in the metadata collection.
- */
-public class EntityNotKnownException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating an EntityNotKnownException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public EntityNotKnownException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating an EntityNotKnownException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public EntityNotKnownException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityProxyOnlyException.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityProxyOnlyException.java b/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityProxyOnlyException.java
deleted file mode 100644
index e9779d8..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/ffdc/exception/EntityProxyOnlyException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.ffdc.exception;
-
-/**
- * The EntityProxyOnlyException is thrown by an OMRS Connector when a specific entity instance is requested but this
- * only a proxy version of the entity is in the metadata collection.
- */
-public class EntityProxyOnlyException extends OMRSCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating an EntityProxyOnlyException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public EntityProxyOnlyException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating an EntityProxyOnlyException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public EntityProxyOnlyException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}


[38/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/AssetConsumerRESTServices.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/AssetConsumerRESTServices.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/AssetConsumerRESTServices.java
deleted file mode 100644
index 967be5a..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/AssetConsumerRESTServices.java
+++ /dev/null
@@ -1,1057 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.server;
-
-
-import org.apache.atlas.ocf.properties.CommentType;
-import org.apache.atlas.omag.admin.server.OMAGAccessServiceRegistration;
-import org.apache.atlas.omag.configuration.registration.AccessServiceDescription;
-import org.apache.atlas.omag.configuration.registration.AccessServiceOperationalStatus;
-import org.apache.atlas.omag.configuration.registration.AccessServiceRegistration;
-import org.apache.atlas.omas.assetconsumer.admin.AssetConsumerAdmin;
-import org.apache.atlas.omas.assetconsumer.ffdc.AssetConsumerErrorCode;
-import org.apache.atlas.omas.assetconsumer.ffdc.exceptions.*;
-import org.apache.atlas.omas.assetconsumer.server.properties.AssetConsumerOMASAPIResponse;
-import org.apache.atlas.omas.assetconsumer.server.properties.ConnectionResponse;
-import org.apache.atlas.omas.assetconsumer.server.properties.GUIDResponse;
-import org.apache.atlas.omas.assetconsumer.server.properties.VoidResponse;
-import org.apache.atlas.ocf.properties.StarRating;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.web.bind.annotation.*;
-
-
-/**
- * The AssetConsumerRESTServices provides the server-side implementation of the AssetConsumer Open Metadata
- * Assess Service (OMAS).  This interface provides connections to assets and APIs for adding feedback
- * on the asset.
- */
-@RestController
-@RequestMapping("/omag/omas/asset-consumer")
-public class AssetConsumerRESTServices
-{
-    static private String                     accessServiceName = null;
-    static private OMRSRepositoryConnector    repositoryConnector = null;
-
-    private static final Logger log = LoggerFactory.getLogger(AssetConsumerRESTServices.class);
-
-    /**
-     * Provide a connector to the REST Services.
-     *
-     * @param accessServiceName - name of this access service
-     * @param repositoryConnector - OMRS Repository Connector to the property server.
-     */
-    static public void setRepositoryConnector(String                   accessServiceName,
-                                              OMRSRepositoryConnector  repositoryConnector)
-    {
-        AssetConsumerRESTServices.accessServiceName = accessServiceName;
-        AssetConsumerRESTServices.repositoryConnector = repositoryConnector;
-    }
-
-    /**
-     * Default constructor
-     */
-    public AssetConsumerRESTServices()
-    {
-        AccessServiceDescription   myDescription = AccessServiceDescription.ASSET_CONSUMER_OMAS;
-        AccessServiceRegistration  myRegistration = new AccessServiceRegistration(myDescription.getAccessServiceCode(),
-                                                                                  myDescription.getAccessServiceName(),
-                                                                                  myDescription.getAccessServiceDescription(),
-                                                                                  myDescription.getAccessServiceWiki(),
-                                                                                  AccessServiceOperationalStatus.ENABLED,
-                                                                                  AssetConsumerAdmin.class.getName());
-        OMAGAccessServiceRegistration.registerAccessService(myRegistration);
-    }
-
-
-
-    /**
-     * Returns the connection object corresponding to the supplied connection name.
-     *
-     * @param userId - String - userId of user making request.
-     * @param name - this may be the qualifiedName or displayName of the connection.
-     *
-     * @return ConnectionResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * UnrecognizedConnectionNameException - there is no connection defined for this name.
-     * AmbiguousConnectionNameException - there is more than one connection defined for this name.
-     * PropertyServerException - there is a problem retrieving information from the property (metadata) server.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.GET, path = "/{userId}/connections/by-name/{name}")
-
-    ConnectionResponse getConnectionByName(@PathVariable String   userId,
-                                           @PathVariable String   name)
-    {
-        final String        methodName = "getConnectionByName";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        ConnectionResponse  response = new ConnectionResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            ConnectionHandler   connectionHandler = new ConnectionHandler(accessServiceName,
-                                                                          repositoryConnector);
-
-            response.setConnection(connectionHandler.getConnectionByName(userId, name));
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UnrecognizedConnectionNameException  error)
-        {
-            captureUnrecognizedConnectionNameException(response, error);
-        }
-        catch (AmbiguousConnectionNameException  error)
-        {
-            captureAmbiguousConnectionNameException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-
-    /**
-     * Returns the connection object corresponding to the supplied connection GUID.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - the unique id for the connection within the property server.
-     *
-     * @return ConnectionResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * UnrecognizedConnectionGUIDException - the supplied GUID is not recognized by the metadata repository.
-     * PropertyServerException - there is a problem retrieving information from the property (metadata) server.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.GET, path = "/{userId}/connections/{guid}")
-
-    public ConnectionResponse getConnectionByGUID(@PathVariable String     userId,
-                                                  @PathVariable String     guid)
-    {
-        final String        methodName = "getConnectionByGUID";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        ConnectionResponse  response = new ConnectionResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            ConnectionHandler   connectionHandler = new ConnectionHandler(accessServiceName,
-                                                                          repositoryConnector);
-
-            response.setConnection(connectionHandler.getConnectionByGUID(userId, guid));
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UnrecognizedConnectionGUIDException  error)
-        {
-            captureUnrecognizedConnectionGUIDException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-
-    /**
-     * Creates an Audit log record for the asset.  This log record is stored in the Asset's Audit Log.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - String - unique id for the asset.
-     * @param connectorInstanceId - String - (optional) id of connector in use (if any).
-     * @param connectionName - String - (optional) name of the connection (extracted from the connector).
-     * @param connectorType - String - (optional) type of connector in use (if any).
-     * @param contextId - String - (optional) function name, or processId of the activity that the caller is performing.
-     * @param message - log record content.
-     *
-     * @return VoidResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem adding the asset properties to
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/{userId}/assets/{guid}/log-record")
-
-    public VoidResponse  addLogMessageToAsset(@PathVariable                   String      userId,
-                                              @PathVariable                   String      guid,
-                                              @RequestParam(required = false) String      connectorInstanceId,
-                                              @RequestParam(required = false) String      connectionName,
-                                              @RequestParam(required = false) String      connectorType,
-                                              @RequestParam(required = false) String      contextId,
-                                              @RequestParam(required = false) String      message)
-    {
-        final String        methodName = "addLogMessageToAsset";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        VoidResponse  response = new VoidResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            AuditLogHandler   auditLogHandler = new AuditLogHandler(accessServiceName,
-                                                                    repositoryConnector);
-
-            auditLogHandler.addLogMessageToAsset(userId,
-                                                 guid,
-                                                 connectorInstanceId,
-                                                 connectionName,
-                                                 connectorType,
-                                                 contextId,
-                                                 message);
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-
-    /**
-     * Adds a new public tag to the asset's properties.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - String - unique id for the asset.
-     * @param tagName - String - name of the tag.
-     * @param tagDescription - String - (optional) description of the tag.  Setting a description, particularly in
-     *                       a public tag makes the tag more valuable to other users and can act as an embryonic
-     *                       glossary term.
-     *
-     * @return GUIDResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem adding the asset properties to
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/{userId}/assets/{guid}/tags")
-
-    public GUIDResponse addTagToAsset(@PathVariable                   String      userId,
-                                      @PathVariable                   String      guid,
-                                      @RequestParam                   String      tagName,
-                                      @RequestParam(required = false) String      tagDescription)
-    {
-        final String        methodName = "addTagToAsset";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        GUIDResponse  response = new GUIDResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            FeedbackHandler   feedbackHandler = new FeedbackHandler(accessServiceName,
-                                                                    repositoryConnector);
-
-            feedbackHandler.addTagToAsset(userId, guid, tagName, tagDescription);
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-
-    /**
-     * Adds a new private tag to the asset's properties.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - String - unique id for the asset.
-     * @param tagName - String - name of the tag.
-     * @param tagDescription - String - (optional) description of the tag.  Setting a description, particularly in
-     *                       a public tag makes the tag more valuable to other users and can act as an embryonic
-     *                       glossary term.
-     *
-     * @return GUIDResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem adding the asset properties to
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/{userId}/assets/{guid}/tags/private")
-
-    public GUIDResponse addPrivateTagToAsset(@PathVariable                   String      userId,
-                                             @PathVariable                   String      guid,
-                                             @RequestParam                   String      tagName,
-                                             @RequestParam(required = false) String      tagDescription)
-    {
-        final String        methodName = "addPrivateTagToAsset";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        GUIDResponse  response = new GUIDResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            FeedbackHandler   feedbackHandler = new FeedbackHandler(accessServiceName,
-                                                                    repositoryConnector);
-
-            feedbackHandler.addPrivateTagToAsset(userId, guid, tagName, tagDescription);
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-
-    /**
-     * Adds a rating to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - String - unique id for the asset.
-     * @param starRating - StarRating  - enumeration for none, one to five stars.
-     * @param review - String - user review of asset.
-     *
-     * @return GUIDResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem adding the asset properties to
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/{userId}/assets/{guid}/ratings/")
-
-    public GUIDResponse addRatingToAsset(@PathVariable String     userId,
-                                         @PathVariable String     guid,
-                                         @RequestParam StarRating starRating,
-                                         @RequestParam String     review)
-    {
-        final String        methodName = "addRatingToAsset";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        GUIDResponse  response = new GUIDResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            FeedbackHandler   feedbackHandler = new FeedbackHandler(accessServiceName,
-                                                                    repositoryConnector);
-
-            feedbackHandler.addRatingToAsset(userId, guid, starRating, review);
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-
-    /**
-     * Adds a "Like" to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - String - unique id for the asset
-     *
-     * @return GUIDResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem adding the asset properties to
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/{userId}/assets/{guid}/likes/")
-
-    public GUIDResponse addLikeToAsset(@PathVariable String       userId,
-                                       @PathVariable String       guid)
-    {
-        final String        methodName = "addLikeToAsset";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        GUIDResponse  response = new GUIDResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            FeedbackHandler   feedbackHandler = new FeedbackHandler(accessServiceName,
-                                                                    repositoryConnector);
-
-            feedbackHandler.addLikeToAsset(userId, guid);
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-
-    /**
-     * Adds a comment to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - String - unique id for the asset.
-     * @param commentType - type of comment enum.
-     * @param commentText - String - the text of the comment.
-     *
-     * @return GUIDResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem adding the asset properties to
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/{userId}/assets/{guid}/comments/")
-
-    public GUIDResponse addCommentToAsset(@PathVariable String      userId,
-                                          @PathVariable String      guid,
-                                          @RequestParam CommentType commentType,
-                                          @RequestParam String      commentText)
-    {
-        final String        methodName = "addCommentToAsset";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        GUIDResponse  response = new GUIDResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            FeedbackHandler   feedbackHandler = new FeedbackHandler(accessServiceName,
-                                                                    repositoryConnector);
-
-            feedbackHandler.addCommentToAsset(userId, guid, commentType, commentText);
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-
-    /**
-     * Adds a comment to the asset.
-     *
-     * @param userId - String - userId of user making request.
-     * @param commentGUID - String - unique id for an existing comment.  Used to add a reply to a comment.
-     * @param commentType - type of comment enum.
-     * @param commentText - String - the text of the comment.
-     *
-     * @return GUIDResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem adding the asset properties to
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.POST, path = "/{userId}/comments/{commentGUID}/reply")
-
-    public GUIDResponse addCommentReply(@PathVariable String      userId,
-                                        @PathVariable String      commentGUID,
-                                        @RequestParam CommentType commentType,
-                                        @RequestParam String      commentText)
-    {
-        final String        methodName = "addCommentReply";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        GUIDResponse  response = new GUIDResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            FeedbackHandler   feedbackHandler = new FeedbackHandler(accessServiceName,
-                                                                    repositoryConnector);
-
-            feedbackHandler.addCommentReply(userId, commentGUID, commentType, commentText);
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-
-    /**
-     * Removes a tag from the asset that was added by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - String - unique id for the tag.
-     *
-     * @return VoidResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem updating the asset properties in
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.PATCH, path = "/{userId}/tags/{guid}/delete")
-
-    public VoidResponse   removeTag(@PathVariable String     userId,
-                                    @PathVariable String     guid)
-    {
-        final String        methodName = "removeTag";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        VoidResponse  response = new VoidResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            FeedbackHandler feedbackHandler = new FeedbackHandler(accessServiceName,
-                                                                  repositoryConnector);
-
-            feedbackHandler.removeTagFromAsset(userId, guid);
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-
-    /**
-     * Removes a tag from the asset that was added by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - String - unique id for the tag.
-     *
-     * @return VoidResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem updating the asset properties in
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.PATCH, path = "/{userId}/tags/private/{guid}/delete")
-
-    public VoidResponse   removePrivateTag(@PathVariable String     userId,
-                                           @PathVariable String     guid)
-    {
-        final String        methodName = "removePrivateTag";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        VoidResponse  response = new VoidResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            FeedbackHandler feedbackHandler = new FeedbackHandler(accessServiceName,
-                                                                  repositoryConnector);
-
-            feedbackHandler.removePrivateTagFromAsset(userId, guid);
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-
-    /**
-     * Removes of a star rating that was added to the asset by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - String - unique id for the rating object
-     *
-     * @return VoidResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem updating the asset properties in
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.PATCH, path = "/{userId}/ratings/{guid}/delete")
-
-    public VoidResponse   removeRating(@PathVariable String     userId,
-                                       @PathVariable String     guid)
-    {
-        final String        methodName = "removeRating";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        VoidResponse  response = new VoidResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            FeedbackHandler feedbackHandler = new FeedbackHandler(accessServiceName,
-                                                                  repositoryConnector);
-
-            feedbackHandler.removeRatingFromAsset(userId, guid);
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-
-    /**
-     * Removes a "Like" added to the asset by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - String - unique id for the like object
-     * @return VoidResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem updating the asset properties in
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    @RequestMapping(method = RequestMethod.PATCH, path = "/{userId}/likes/{guid}/delete")
-
-    public VoidResponse   removeLike(@PathVariable String     userId,
-                                              @PathVariable String     guid)
-    {
-        final String        methodName = "removeLike";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        VoidResponse  response = new VoidResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            FeedbackHandler feedbackHandler = new FeedbackHandler(accessServiceName,
-                                                                  repositoryConnector);
-
-            feedbackHandler.removeLikeFromAsset(userId, guid);
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-
-    /**
-     * Removes a comment added to the asset by this user.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - String - unique id for the comment object
-     * @return VoidResponse or
-     * InvalidParameterException - one of the parameters is null or invalid.
-     * PropertyServerException - There is a problem updating the asset properties in
-     *                                   the metadata repository.
-     * UserNotAuthorizedException - the user does not have permission to perform this request.
-     */
-    @RequestMapping(method = RequestMethod.PATCH, path = "/{userId}/comments/{guid}/delete")
-
-    public VoidResponse   removeComment(@PathVariable String     userId,
-                                        @PathVariable String     guid)
-    {
-        final String        methodName = "removeComment";
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Calling method: " + methodName);
-        }
-
-        VoidResponse  response = new VoidResponse();
-
-        try
-        {
-            this.validateInitialization(methodName);
-
-            FeedbackHandler feedbackHandler = new FeedbackHandler(accessServiceName,
-                                                                  repositoryConnector);
-
-            feedbackHandler.removeCommentFromAsset(userId, guid);
-        }
-        catch (InvalidParameterException  error)
-        {
-            captureInvalidParameterException(response, error);
-        }
-        catch (PropertyServerException  error)
-        {
-            capturePropertyServerException(response, error);
-        }
-        catch (UserNotAuthorizedException error)
-        {
-            captureUserNotAuthorizedException(response, error);
-        }
-
-        if (log.isDebugEnabled())
-        {
-            log.debug("Returning from method: " + methodName + " with response: " + response.toString());
-        }
-
-        return response;
-    }
-
-    /* ==========================
-     * Support methods
-     * ==========================
-     */
-
-
-    /**
-     * Set the exception information into the response.
-     *
-     * @param response - REST Response
-     * @param error returned response.
-     * @param exceptionClassName - class name of the exception to recreate
-     */
-    private void captureCheckedException(AssetConsumerOMASAPIResponse      response,
-                                         AssetConsumerCheckedExceptionBase error,
-                                         String                            exceptionClassName)
-    {
-        response.setRelatedHTTPCode(error.getReportedHTTPCode());
-        response.setExceptionClassName(exceptionClassName);
-        response.setExceptionErrorMessage(error.getErrorMessage());
-        response.setExceptionSystemAction(error.getReportedSystemAction());
-        response.setExceptionUserAction(error.getReportedUserAction());
-    }
-
-
-    /**
-     * Set the exception information into the response.
-     *
-     * @param response - REST Response
-     * @param error returned response.
-     */
-    private void captureAmbiguousConnectionNameException(AssetConsumerOMASAPIResponse     response,
-                                                         AmbiguousConnectionNameException error)
-    {
-        captureCheckedException(response, error, error.getClass().getName());
-    }
-
-
-    /**
-     * Set the exception information into the response.
-     *
-     * @param response - REST Response
-     * @param error returned response.
-     */
-    private void captureInvalidParameterException(AssetConsumerOMASAPIResponse response,
-                                                  InvalidParameterException    error)
-    {
-        captureCheckedException(response, error, error.getClass().getName());
-    }
-
-
-    /**
-     * Set the exception information into the response.
-     *
-     * @param response - REST Response
-     * @param error returned response.
-     */
-    private void capturePropertyServerException(AssetConsumerOMASAPIResponse     response,
-                                                PropertyServerException          error)
-    {
-        captureCheckedException(response, error, error.getClass().getName());
-    }
-
-
-    /**
-     * Set the exception information into the response.
-     *
-     * @param response - REST Response
-     * @param error returned response.
-     */
-    private void captureUnrecognizedConnectionGUIDException(AssetConsumerOMASAPIResponse        response,
-                                                            UnrecognizedConnectionGUIDException error)
-    {
-        captureCheckedException(response, error, error.getClass().getName());
-    }
-
-
-    /**
-     * Set the exception information into the response.
-     *
-     * @param response - REST Response
-     * @param error returned response.
-     */
-    private void captureUnrecognizedConnectionNameException(AssetConsumerOMASAPIResponse        response,
-                                                            UnrecognizedConnectionNameException error)
-    {
-        captureCheckedException(response, error, error.getClass().getName());
-    }
-
-
-    /**
-     * Set the exception information into the response.
-     *
-     * @param response - REST Response
-     * @param error returned response.
-     */
-    private void captureUserNotAuthorizedException(AssetConsumerOMASAPIResponse response,
-                                                  UserNotAuthorizedException    error)
-    {
-        captureCheckedException(response, error, error.getClass().getName());
-    }
-
-
-    /**
-     * Validate that this access service has been initialized before attempting to process a request.
-     *
-     * @param methodName - name of method called.
-     * @throws PropertyServerException - not initialized
-     */
-    private void validateInitialization(String  methodName) throws PropertyServerException
-    {
-        if (repositoryConnector == null)
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.SERVICE_NOT_INITIALIZED;
-            String        errorMessage = errorCode.getErrorMessageId()
-                        + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new PropertyServerException(errorCode.getHTTPErrorCode(),
-                                                          this.getClass().getName(),
-                                                          methodName,
-                                                          errorMessage,
-                                                          errorCode.getSystemAction(),
-                                                          errorCode.getUserAction());
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/AuditLogHandler.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/AuditLogHandler.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/AuditLogHandler.java
deleted file mode 100644
index 8f44e75..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/AuditLogHandler.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.server;
-
-import org.apache.atlas.omas.assetconsumer.ffdc.AssetConsumerErrorCode;
-import org.apache.atlas.omas.assetconsumer.ffdc.exceptions.InvalidParameterException;
-import org.apache.atlas.omas.assetconsumer.ffdc.exceptions.PropertyServerException;
-import org.apache.atlas.omas.assetconsumer.ffdc.exceptions.UserNotAuthorizedException;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollection;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-/**
- * AuditLogHandler manages the logging of audit records for the asset.
- */
-public class AuditLogHandler
-{
-    private String                  serviceName;
-    private OMRSRepositoryConnector repositoryConnector;
-
-
-
-    /**
-     * Construct the audit log handler with a link to the property server's connector and this access service's
-     * official name.
-     *
-     * @param serviceName - name of this service
-     * @param repositoryConnector - connector to the property server.
-     */
-    public AuditLogHandler(String                  serviceName,
-                           OMRSRepositoryConnector repositoryConnector)
-    {
-        this.serviceName = serviceName;
-        this.repositoryConnector = repositoryConnector;
-    }
-
-
-    /**
-     * Creates an Audit log record for the asset.  This log record is stored in the Asset's Audit Log.
-     *
-     * @param userId - String - userId of user making request.
-     * @param assetGUID - String - unique id for the asset.
-     * @param connectorInstanceId - String - (optional) id of connector in use (if any).
-     * @param connectionName - String - (optional) name of the connection (extracted from the connector).
-     * @param connectorType - String - (optional) type of connector in use (if any).
-     * @param contextId - String - (optional) function name, or processId of the activity that the caller is performing.
-     * @param message - log record content.
-     *
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws PropertyServerException - There is a problem adding the asset properties to
-     *                                   the property server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public void  addLogMessageToAsset(String      userId,
-                                      String      assetGUID,
-                                      String      connectorInstanceId,
-                                      String      connectionName,
-                                      String      connectorType,
-                                      String      contextId,
-                                      String      message) throws InvalidParameterException,
-                                                                  PropertyServerException,
-                                                                  UserNotAuthorizedException
-    {
-        // todo
-    }
-
-
-    /**
-     * Check that there is a repository connector.
-     *
-     * @param methodName - name of the method being called
-     * @return metadata collection that provides access to the properties in the property server
-     * @throws PropertyServerException - exception thrown if the repository connector
-     */
-    private OMRSMetadataCollection validateRepositoryConnector(String   methodName) throws PropertyServerException
-    {
-        if (this.repositoryConnector == null)
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.OMRS_NOT_INITIALIZED;
-            String        errorMessage = errorCode.getErrorMessageId()
-                    + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new PropertyServerException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-
-        }
-
-        if (! this.repositoryConnector.isActive())
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.OMRS_NOT_AVAILABLE;
-            String        errorMessage = errorCode.getErrorMessageId()
-                    + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new PropertyServerException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-
-        try
-        {
-            return repositoryConnector.getMetadataCollection();
-        }
-        catch (Throwable error)
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.NO_METADATA_COLLECTION;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new PropertyServerException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/ConnectionHandler.java
----------------------------------------------------------------------
diff --git a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/ConnectionHandler.java b/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/ConnectionHandler.java
deleted file mode 100644
index 3454416..0000000
--- a/omas-assetconsumer/src/main/java/org/apache/atlas/omas/assetconsumer/server/ConnectionHandler.java
+++ /dev/null
@@ -1,645 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.assetconsumer.server;
-
-
-import org.apache.atlas.ocf.properties.ElementOrigin;
-import org.apache.atlas.ocf.properties.beans.*;
-import org.apache.atlas.omas.assetconsumer.ffdc.AssetConsumerErrorCode;
-import org.apache.atlas.omas.assetconsumer.ffdc.exceptions.*;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollection;
-import org.apache.atlas.omrs.metadatacollection.properties.MatchCriteria;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.*;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.PrimitiveDefCategory;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-/**
- * ConnectionHandler retrieves Connection objects from the property server.  It runs server-side in the AssetConsumer
- * OMAS and retrieves Connections through the OMRSRepositoryConnector.
- */
-public class ConnectionHandler
-{
-    private static final String connectionTypeGUID                      = "114e9f8f-5ff3-4c32-bd37-a7eb42712253";
-    private static final String connectionConnectorTypeRelationshipGUID = "e542cfc1-0b4b-42b9-9921-f0a5a88aaf96";
-    private static final String connectionEndpointRelationshipGUID      = "887a7132-d6bc-4b92-a483-e80b60c86fb2";
-    private static final String qualifiedNamePropertyName               = "qualifiedName";
-    private static final String displayNamePropertyName                 = "displayName";
-    private static final String additionalPropertiesName                = "additionalProperties";
-    private static final String securePropertiesName                    = "securedProperties";
-    private static final String descriptionPropertyName                 = "description";
-    private static final String connectorProviderPropertyName           = "connectorProviderClassName";
-    private static final String endpointPropertyName                    = "name";
-    private static final String endpointAddressPropertyName             = "networkAddress";
-    private static final String endpointProtocolPropertyName            = "protocol";
-    private static final String endpointEncryptionPropertyName          = "encryptionMethod";
-
-    private String                  serviceName;
-    private OMRSRepositoryHelper    repositoryHelper = null;
-    private String                  serverName = null;
-    private ErrorHandler            errorHandler = null;
-
-    /**
-     * Construct the connection handler with a link to the property server's connector and this access service's
-     * official name.
-     *
-     * @param serviceName - name of this service
-     * @param repositoryConnector - connector to the property server.
-     */
-    public ConnectionHandler(String                  serviceName,
-                             OMRSRepositoryConnector repositoryConnector)
-    {
-        this.serviceName = serviceName;
-        if (repositoryConnector != null)
-        {
-            this.repositoryHelper = repositoryConnector.getRepositoryHelper();
-            this.serverName = repositoryConnector.getServerName();
-            errorHandler = new ErrorHandler(repositoryConnector);
-        }
-    }
-
-
-    /**
-     * Returns the connection object corresponding to the supplied connection name.
-     *
-     * @param userId - String - userId of user making request.
-     * @param name - this may be the qualifiedName or displayName of the connection.
-     *
-     * @return Connection retrieved from property server
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws UnrecognizedConnectionNameException - there is no connection defined for this name.
-     * @throws AmbiguousConnectionNameException - there is more than one connection defined for this name.
-     * @throws PropertyServerException - there is a problem retrieving information from the property (metadata) server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    Connection getConnectionByName(String   userId,
-                                   String   name) throws InvalidParameterException,
-                                                         UnrecognizedConnectionNameException,
-                                                         AmbiguousConnectionNameException,
-                                                         PropertyServerException,
-                                                         UserNotAuthorizedException
-    {
-        final  String   methodName = "getConnectionByName";
-        final  String   nameParameter = "name";
-
-        errorHandler.validateUserId(userId, methodName);
-        errorHandler.validateName(name, nameParameter, methodName);
-
-        OMRSMetadataCollection  metadataCollection = errorHandler.validateRepositoryConnector(methodName);
-
-        try
-        {
-            InstanceProperties     properties    = null;
-
-            properties = repositoryHelper.addStringPropertyToInstance(serviceName,
-                                                                      properties,
-                                                                      qualifiedNamePropertyName,
-                                                                      name,
-                                                                      methodName);
-
-            properties = repositoryHelper.addStringPropertyToInstance(serviceName,
-                                                                      properties,
-                                                                      displayNamePropertyName,
-                                                                      name,
-                                                                      methodName);
-
-            List<EntityDetail> connections = metadataCollection.findEntitiesByProperty(userId,
-                                                                                       connectionTypeGUID,
-                                                                                       properties,
-                                                                                       MatchCriteria.ANY,
-                                                                                       0,
-                                                                                       null,
-                                                                                       null,
-                                                                                       null,
-                                                                                       null,
-                                                                                       null,
-                                                                                       2);
-
-            if (connections == null)
-            {
-                AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.CONNECTION_NOT_FOUND;
-                String        errorMessage = errorCode.getErrorMessageId()
-                                           + errorCode.getFormattedErrorMessage(name, serverName, null);
-
-                throw new UnrecognizedConnectionNameException(errorCode.getHTTPErrorCode(),
-                                                              this.getClass().getName(),
-                                                              methodName,
-                                                              errorMessage,
-                                                              errorCode.getSystemAction(),
-                                                              errorCode.getUserAction());
-            }
-            else if (connections.isEmpty())
-            {
-                AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.CONNECTION_NOT_FOUND;
-                String  errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(name,
-                                                                                                          serverName,
-                                                                                                          null);
-
-                throw new UnrecognizedConnectionNameException(errorCode.getHTTPErrorCode(),
-                                                              this.getClass().getName(),
-                                                              methodName,
-                                                              errorMessage,
-                                                              errorCode.getSystemAction(),
-                                                              errorCode.getUserAction());
-            }
-            else if (connections.size() > 1)
-            {
-                AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.TOO_MANY_CONNECTIONS;
-                String  errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(name,
-                                                                                                          serverName,
-                                                                                                          Integer.toString(connections.size()));
-
-                throw new AmbiguousConnectionNameException(errorCode.getHTTPErrorCode(),
-                                                           this.getClass().getName(),
-                                                           methodName,
-                                                           errorMessage,
-                                                           errorCode.getSystemAction(),
-                                                           errorCode.getUserAction());
-            }
-            else
-            {
-                return this.getConnectionFromRepository(userId, metadataCollection, connections.get(0));
-            }
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.UserNotAuthorizedException error)
-        {
-            errorHandler.handleUnauthorizedUser(userId,
-                                                methodName,
-                                                serverName,
-                                                serviceName);
-        }
-        catch (AmbiguousConnectionNameException  error)
-        {
-            throw error;
-        }
-        catch (UnrecognizedConnectionNameException  error)
-        {
-            throw error;
-        }
-        catch (Throwable  error)
-        {
-            errorHandler.handleRepositoryError(error,
-                                               methodName,
-                                               serverName,
-                                               serviceName);
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Returns the connection object corresponding to the supplied connection GUID.
-     *
-     * @param userId - String - userId of user making request.
-     * @param guid - the unique id for the connection within the property server.
-     *
-     * @return Connection retrieved from the property server
-     * @throws InvalidParameterException - one of the parameters is null or invalid.
-     * @throws UnrecognizedConnectionGUIDException - the supplied GUID is not recognized by the metadata repository.
-     * @throws PropertyServerException - there is a problem retrieving information from the property (metadata) server.
-     * @throws UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-     */
-    public Connection getConnectionByGUID(String     userId,
-                                          String     guid) throws InvalidParameterException,
-                                                                  UnrecognizedConnectionGUIDException,
-                                                                  PropertyServerException,
-                                                                  UserNotAuthorizedException
-    {
-        final  String   methodName = "getConnectionByGUID";
-        final  String   guidParameter = "guid";
-
-        errorHandler.validateUserId(userId, methodName);
-        errorHandler.validateGUID(guid, guidParameter, methodName);
-
-        OMRSMetadataCollection  metadataCollection = errorHandler.validateRepositoryConnector(methodName);
-        EntityDetail            connectionEntity = null;
-
-        try
-        {
-            connectionEntity = metadataCollection.getEntityDetail(userId, guid);
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.EntityNotKnownException error)
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.CONNECTION_NOT_FOUND;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(guid,
-                                                                                                            serverName,
-                                                                                                            error.getErrorMessage());
-
-            throw new UnrecognizedConnectionGUIDException(errorCode.getHTTPErrorCode(),
-                                                          this.getClass().getName(),
-                                                          methodName,
-                                                          errorMessage,
-                                                          errorCode.getSystemAction(),
-                                                          errorCode.getUserAction());
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.EntityProxyOnlyException error)
-        {
-            AssetConsumerErrorCode errorCode = AssetConsumerErrorCode.PROXY_CONNECTION_FOUND;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(guid,
-                                                                                                            serverName,
-                                                                                                            error.getErrorMessage());
-
-            throw new UnrecognizedConnectionGUIDException(errorCode.getHTTPErrorCode(),
-                                                          this.getClass().getName(),
-                                                          methodName,
-                                                          errorMessage,
-                                                          errorCode.getSystemAction(),
-                                                          errorCode.getUserAction());
-        }
-        catch (org.apache.atlas.omrs.ffdc.exception.UserNotAuthorizedException error)
-        {
-            errorHandler.handleUnauthorizedUser(userId,
-                                                methodName,
-                                                serverName,
-                                                serviceName);        }
-        catch (Throwable   error)
-        {
-            errorHandler.handleRepositoryError(error,
-                                               methodName,
-                                               serverName,
-                                               serviceName);
-        }
-
-        if (connectionEntity != null)
-        {
-            return this.getConnectionFromRepository(userId, metadataCollection, connectionEntity);
-        }
-
-        return null;
-    }
-
-
-
-
-    /**
-     * Return a Connection bean filled with values retrieved from the property server.
-     *
-     * @param userId - name of user
-     * @param metadataCollection - accessor object for the property server
-     * @param connectionEntity - root entity object
-     * @return Connection bean
-     * @throws PropertyServerException - a problem communicating with the property server
-     */
-    private Connection  getConnectionFromRepository(String                  userId,
-                                                    OMRSMetadataCollection  metadataCollection,
-                                                    EntityDetail            connectionEntity) throws PropertyServerException
-    {
-        final  String   methodName = "getConnectionFromRepository";
-
-        ConnectorType connectorType = getConnectorTypeFromRepository(userId, metadataCollection, connectionEntity);
-        Endpoint      endpoint      = getEndpointFromRepository(userId, metadataCollection, connectionEntity);
-
-        Connection    connection    = new Connection();
-
-        connection.setGUID(connectionEntity.getGUID());
-        connection.setURL(connectionEntity.getInstanceURL());
-        connection.setType(this.getElementType(connectionEntity));
-        connection.setQualifiedName(repositoryHelper.getStringProperty(serviceName,
-                                                                       qualifiedNamePropertyName,
-                                                                       connectionEntity.getProperties(),
-                                                                       methodName));
-        connection.setDisplayName(repositoryHelper.getStringProperty(serviceName,
-                                                                     displayNamePropertyName,
-                                                                     connectionEntity.getProperties(),
-                                                                     methodName));
-
-        connection.setDescription(repositoryHelper.getStringProperty(serviceName,
-                                                                     descriptionPropertyName,
-                                                                     connectionEntity.getProperties(),
-                                                                     methodName));
-
-        connection.setConnectorType(connectorType);
-        connection.setEndpoint(endpoint);
-
-
-        connection.setAdditionalProperties(this.getAdditionalPropertiesFromEntity(additionalPropertiesName,
-                                                                                  connectionEntity.getProperties(),
-                                                                                  methodName));
-
-        connection.setSecuredProperties(this.getAdditionalPropertiesFromEntity(securePropertiesName,
-                                                                               connectionEntity.getProperties(),
-                                                                               methodName));
-
-        return connection;
-    }
-
-
-    /**
-     * Return a ConnectorType bean filled with values retrieved from the property server for the connector type
-     * associated with the supplied connection.
-     *
-     * @param userId - name of user
-     * @param metadataCollection - accessor object for the property server
-     * @param connectionEntity - root entity object
-     * @return ConnectorType bean
-     * @throws PropertyServerException - a problem communicating with the property server
-     */
-    private ConnectorType  getConnectorTypeFromRepository(String                  userId,
-                                                          OMRSMetadataCollection  metadataCollection,
-                                                          EntityDetail            connectionEntity) throws PropertyServerException
-    {
-        final   String  methodName = "getConnectorTypeFromRepository";
-
-        ConnectorType connectorType = null;
-
-        EntityDetail    endpointEntity = this.getEntityForRelationshipType(userId,
-                                                                           connectionEntity,
-                                                                           connectionConnectorTypeRelationshipGUID,
-                                                                           metadataCollection,
-                                                                           methodName);
-
-        if (endpointEntity != null)
-        {
-            connectorType = new ConnectorType();
-
-            connectorType.setGUID(connectionEntity.getGUID());
-            connectorType.setURL(connectionEntity.getInstanceURL());
-            connectorType.setType(this.getElementType(connectionEntity));
-            connectorType.setQualifiedName(repositoryHelper.getStringProperty(serviceName,
-                                                                              qualifiedNamePropertyName,
-                                                                              connectionEntity.getProperties(),
-                                                                              methodName));
-            connectorType.setDisplayName(repositoryHelper.getStringProperty(serviceName,
-                                                                            displayNamePropertyName,
-                                                                            connectionEntity.getProperties(),
-                                                                            methodName));
-            connectorType.setDescription(repositoryHelper.getStringProperty(serviceName,
-                                                                            descriptionPropertyName,
-                                                                            connectionEntity.getProperties(),
-                                                                            methodName));
-            connectorType.setConnectorProviderClassName(repositoryHelper.getStringProperty(serviceName,
-                                                                                           connectorProviderPropertyName,
-                                                                                           connectionEntity.getProperties(),
-                                                                                           methodName));
-
-            connectorType.setAdditionalProperties(this.getAdditionalPropertiesFromEntity(additionalPropertiesName,
-                                                                                         connectionEntity.getProperties(),
-                                                                                         methodName));
-
-        }
-
-
-
-
-        return connectorType;
-    }
-
-
-    /**
-     * Return an Endpoint bean filled with values retrieved from the property server for the endpoint
-     * associated with the supplied connection.
-     *
-     * @param userId - name of user
-     * @param metadataCollection - accessor object for the property server
-     * @param connectionEntity - root entity object
-     * @return Endpoint bean
-     * @throws PropertyServerException - a problem communicating with the property server
-     */
-    private Endpoint  getEndpointFromRepository(String                  userId,
-                                                OMRSMetadataCollection  metadataCollection,
-                                                EntityDetail            connectionEntity) throws PropertyServerException
-    {
-        final   String  methodName = "getEndpointFromRepository";
-
-        Endpoint endpoint = null;
-
-        EntityDetail    endpointEntity = this.getEntityForRelationshipType(userId,
-                                                                           connectionEntity,
-                                                                           connectionEndpointRelationshipGUID,
-                                                                           metadataCollection,
-                                                                           methodName);
-
-        if (endpointEntity != null)
-        {
-            endpoint = new Endpoint();
-
-            endpoint.setGUID(connectionEntity.getGUID());
-            endpoint.setURL(connectionEntity.getInstanceURL());
-            endpoint.setType(this.getElementType(connectionEntity));
-            endpoint.setQualifiedName(repositoryHelper.getStringProperty(serviceName,
-                                                                         qualifiedNamePropertyName,
-                                                                         connectionEntity.getProperties(),
-                                                                         methodName));
-            endpoint.setDisplayName(repositoryHelper.getStringProperty(serviceName,
-                                                                       endpointPropertyName,
-                                                                       connectionEntity.getProperties(),
-                                                                       methodName));
-            endpoint.setDescription(repositoryHelper.getStringProperty(serviceName,
-                                                                       descriptionPropertyName,
-                                                                       connectionEntity.getProperties(),
-                                                                       methodName));
-            endpoint.setAddress(repositoryHelper.getStringProperty(serviceName,
-                                                                       endpointAddressPropertyName,
-                                                                       connectionEntity.getProperties(),
-                                                                       methodName));
-            endpoint.setProtocol(repositoryHelper.getStringProperty(serviceName,
-                                                                       endpointProtocolPropertyName,
-                                                                       connectionEntity.getProperties(),
-                                                                       methodName));
-            endpoint.setEncryptionMethod(repositoryHelper.getStringProperty(serviceName,
-                                                                       endpointEncryptionPropertyName,
-                                                                       connectionEntity.getProperties(),
-                                                                       methodName));
-            endpoint.setAdditionalProperties(this.getAdditionalPropertiesFromEntity(additionalPropertiesName,
-                                                                                    connectionEntity.getProperties(),
-                                                                                    methodName));
-        }
-
-        return endpoint;
-    }
-
-
-    /**
-     * Create an ElementType by extracting relevant information from the supplied instance.
-     *
-     * @param instance - instance to extract properties from
-     * @return resulting elementType
-     */
-    private ElementType  getElementType(InstanceHeader   instance)
-    {
-        ElementType  elementType  = null;
-        InstanceType instanceType = instance.getType();
-
-        if (instanceType != null)
-        {
-            elementType = new ElementType();
-
-            elementType.setElementTypeId(instanceType.getTypeDefGUID());
-            elementType.setElementTypeName(instanceType.getTypeDefName());
-            elementType.setElementTypeDescription(instanceType.getTypeDefDescription());
-            elementType.setElementTypeVersion(instanceType.getTypeDefVersion());
-            elementType.setElementAccessServiceURL(serverName);
-            elementType.setElementHomeMetadataCollectionId(instance.getMetadataCollectionId());
-
-            switch (instance.getInstanceProvenanceType())
-            {
-                case UNKNOWN:
-                    elementType.setElementOrigin(null);
-                    break;
-
-                case CONTENT_PACK:
-                    elementType.setElementOrigin(ElementOrigin.CONTENT_PACK);
-                    break;
-
-                case LOCAL_COHORT:
-                    elementType.setElementOrigin(ElementOrigin.LOCAL_COHORT);
-                    break;
-
-                case EXPORT_ARCHIVE:
-                    elementType.setElementOrigin(ElementOrigin.EXPORT_ARCHIVE);
-                    break;
-
-                case DEREGISTERED_REPOSITORY:
-                    elementType.setElementOrigin(ElementOrigin.DEREGISTERED_REPOSITORY);
-                    break;
-            }
-        }
-
-        return elementType;
-    }
-
-
-    /**
-     * Extract an additional properties object from the instance properties within a map property value.
-     *
-     * @param propertyName - name of the property that is a map
-     * @param properties - instance properties containing the map property
-     * @param methodName - calling method
-     * @return an AdditionalProperties object or null
-     */
-    private AdditionalProperties getAdditionalPropertiesFromEntity(String              propertyName,
-                                                                   InstanceProperties  properties,
-                                                                   String              methodName)
-    {
-        /*
-         * Extract the map property
-         */
-        InstanceProperties mapProperty = repositoryHelper.getMapProperty(serviceName,
-                                                                         propertyName,
-                                                                         properties,
-                                                                         methodName);
-
-        if (mapProperty != null)
-        {
-            /*
-             * The contents should be primitives.  Need to step through all of the property names
-             * and add each primitive value to a map.  This map is then used to set up the additional properties
-             * object for return
-             */
-            Iterator<String>      additionalPropertyNames = mapProperty.getPropertyNames();
-
-            if (additionalPropertyNames != null)
-            {
-                Map<String,Object> additionalPropertiesMap = new HashMap<>();
-
-                while (additionalPropertyNames.hasNext())
-                {
-                    String                 additionalPropertyName  = additionalPropertyNames.next();
-                    InstancePropertyValue  additionalPropertyValue = mapProperty.getPropertyValue(additionalPropertyName);
-
-                    if (additionalPropertyValue != null)
-                    {
-                        /*
-                         * If the property is not primitive it is ignored.
-                         */
-                        if (additionalPropertyValue.getInstancePropertyCategory() == InstancePropertyCategory.PRIMITIVE)
-                        {
-                            PrimitivePropertyValue primitivePropertyValue = (PrimitivePropertyValue) additionalPropertyValue;
-
-                            additionalPropertiesMap.put(additionalPropertyName, primitivePropertyValue.getPrimitiveValue());
-                        }
-                    }
-                }
-
-                if (! additionalPropertiesMap.isEmpty())
-                {
-                    AdditionalProperties   additionalProperties = new AdditionalProperties();
-
-                    additionalProperties.setAdditionalProperties(additionalPropertiesMap);
-                    return additionalProperties;
-                }
-            }
-        }
-
-        return null;
-    }
-
-    /**
-     * Return the entity a the other end of the requested relationship type.  The assumption is that this is a 0..1
-     * relationship so one entity (or null) is returned.  If lots of relationships are found then the
-     * PropertyServerException is thrown.
-     *
-     * @param userId - user making the request.
-     * @param anchorEntity - starting entity.
-     * @param relationshipTypeGUID - identifier for the relationship to follow
-     * @param metadataCollection - metadata collection to retrieve instances from
-     * @param methodName - name of calling method
-     * @return retrieved entity or null
-     * @throws PropertyServerException - problem access the property server
-     */
-    private  EntityDetail  getEntityForRelationshipType(String                 userId,
-                                                        EntityDetail           anchorEntity,
-                                                        String                 relationshipTypeGUID,
-                                                        OMRSMetadataCollection metadataCollection,
-                                                        String                 methodName) throws PropertyServerException
-    {
-        try
-        {
-            List<Relationship> relationships = metadataCollection.getRelationshipsForEntity(userId,
-                                                                                            anchorEntity.getGUID(),
-                                                                                            relationshipTypeGUID,
-                                                                                            0,
-                                                                                            null,
-                                                                                            null,
-                                                                                            null,
-                                                                                            null,
-                                                                                            100);
-
-            if (relationships != null)
-            {
-                if (relationships.size() == 1)
-                {
-                    Relationship  relationship = relationships.get(0);
-
-                    EntityProxy  requiredEnd = relationship.getEntityOneProxy();
-                    if (anchorEntity.getGUID().equals(requiredEnd.getGUID()))
-                    {
-                        requiredEnd = relationship.getEntityTwoProxy();
-                    }
-
-                    return metadataCollection.getEntityDetail(userId, requiredEnd.getGUID());
-                }
-            }
-        }
-        catch (Throwable   error)
-        {
-            errorHandler.handleRepositoryError(error,
-                                               methodName,
-                                               serverName,
-                                               serviceName);
-        }
-
-        return null;
-    }
-}


[09/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSMetadataCollection.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSMetadataCollection.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSMetadataCollection.java
deleted file mode 100644
index 5fe86a0..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSMetadataCollection.java
+++ /dev/null
@@ -1,4678 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository.repositoryconnector;
-
-import org.apache.atlas.omrs.eventmanagement.OMRSRepositoryEventProcessor;
-import org.apache.atlas.omrs.ffdc.*;
-import org.apache.atlas.omrs.ffdc.exception.*;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSTypeDefManager;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollection;
-import org.apache.atlas.omrs.metadatacollection.properties.MatchCriteria;
-import org.apache.atlas.omrs.metadatacollection.properties.SequencingOrder;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.*;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.*;
-
-import java.util.List;
-import java.util.Date;
-
-/**
- * LocalOMRSMetadataCollection provides a wrapper around the metadata collection for the real local repository.
- * Its role is to manage outbound repository events and audit logging/debug for the real local repository.
- */
-public class LocalOMRSMetadataCollection extends OMRSMetadataCollection
-{
-    private OMRSMetadataCollection       realMetadataCollection;
-    private String                       localServerName;
-    private String                       localServerType;
-    private String                       localOrganizationName;
-    private OMRSRepositoryEventProcessor outboundRepositoryEventProcessor;
-    private OMRSTypeDefManager           localTypeDefManager;
-
-
-
-    /**
-     * Constructor used by LocalOMRSRepositoryConnector
-     *
-     * @param parentConnector - connector that this metadata collection supports.  The connector has the information
-     *                        to call the metadata repository.
-     * @param repositoryName - name of the repository - used for logging.
-     * @param repositoryHelper - class used to build type definitions and instances.
-     * @param repositoryValidator - class used to validate type definitions and instances.
-     * @param metadataCollectionId - unique Identifier of the metadata collection Id.
-     * @param localServerName - name of the local server.
-     * @param localServerType - type of the local server.
-     * @param localOrganizationName - name of the organization that owns the local server.
-     * @param realMetadataCollection - metadata collection of the real local connector.
-     * @param outboundRepositoryEventProcessor - outbound event processor
-     *                                         (may be null if a repository event mapper is deployed).
-     * @param typeDefManager - manager of in-memory cache of type definitions (TypeDefs).
-     */
-     LocalOMRSMetadataCollection(LocalOMRSRepositoryConnector parentConnector,
-                                 String                       repositoryName,
-                                 OMRSRepositoryHelper         repositoryHelper,
-                                 OMRSRepositoryValidator      repositoryValidator,
-                                 String                       metadataCollectionId,
-                                 String                       localServerName,
-                                 String                       localServerType,
-                                 String                       localOrganizationName,
-                                 OMRSMetadataCollection       realMetadataCollection,
-                                 OMRSRepositoryEventProcessor outboundRepositoryEventProcessor,
-                                 OMRSTypeDefManager           typeDefManager)
-    {
-        /*
-         * The super class manages the local metadata collection id.  This is a locally managed value.
-         */
-        super(parentConnector, repositoryName, metadataCollectionId, repositoryHelper, repositoryValidator);
-
-        /*
-         * Save the metadata collection object for the real repository.  This is the metadata collection that
-         * does all of the work.  LocalOMRSMetadataCollection is just a wrapper for managing repository events
-         * and debug and audit logging.
-         */
-        if (realMetadataCollection == null)
-        {
-            final String      actionDescription = "Local OMRS Metadata Collection Constructor";
-
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_LOCAL_METADATA_COLLECTION;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage();
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              actionDescription,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-        this.realMetadataCollection = realMetadataCollection;
-
-        /*
-         * Save the information needed to send repository events.
-         */
-        this.localServerName = localServerName;
-        this.localServerType = localServerType;
-        this.localOrganizationName = localOrganizationName;
-        this.outboundRepositoryEventProcessor = outboundRepositoryEventProcessor;
-        this.localTypeDefManager = typeDefManager;
-    }
-
-
-    /* ======================================================================
-     * Group 1: Confirm the identity of the metadata repository being called.
-     */
-
-    /**
-     * Returns the identifier of the metadata repository.  This is the identifier used to register the
-     * metadata repository with the metadata repository cohort.  It is also the identifier used to
-     * identify the home repository of a metadata instance.
-     *
-     * @return String - metadata collection id.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     */
-    public String      getMetadataCollectionId() throws RepositoryErrorException
-    {
-        final String methodName = "getMetadataCollectionId";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        /*
-         * Perform operation
-         */
-        return super.metadataCollectionId;
-    }
-
-
-    /* ==============================
-     * Group 2: Working with typedefs
-     */
-
-
-    /**
-     * Returns the list of different types of metadata organized into two groups.  The first are the
-     * attribute type definitions (AttributeTypeDefs).  These provide types for properties in full
-     * type definitions.  Full type definitions (TypeDefs) describe types for entities, relationships
-     * and classifications.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @return TypeDefs - Lists of different categories of TypeDefs.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDefGallery getAllTypes(String userId) throws RepositoryErrorException,
-                                                            UserNotAuthorizedException
-    {
-        final String                       methodName = "getAllTypes";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-
-        /*
-         * Perform operation
-         */
-        return realMetadataCollection.getAllTypes(userId);
-    }
-
-
-    /**
-     * Returns a list of TypeDefs that have the specified name.  TypeDef names should be unique.  This
-     * method allows wildcard character to be included in the name.  These are * (asterisk) for an arbitrary string of
-     * characters and ampersand for an arbitrary character.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - name of the TypeDefs to return (including wildcard characters).
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the name of the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDefGallery findTypesByName(String      userId,
-                                          String      name) throws InvalidParameterException,
-                                                                   RepositoryErrorException,
-                                                                   UserNotAuthorizedException
-    {
-        final String   methodName        = "findTypesByName";
-        final String   nameParameterName = "name";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeName(repositoryName, nameParameterName, name, methodName);
-
-        /*
-         * Perform operation
-         */
-        return realMetadataCollection.findTypesByName(userId, name);
-    }
-
-
-    /**
-     * Returns all of the TypeDefs for a specific category.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param category - enum value for the category of TypeDef to return.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the TypeDefCategory is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> findTypeDefsByCategory(String          userId,
-                                                TypeDefCategory category) throws InvalidParameterException,
-                                                                                 RepositoryErrorException,
-                                                                                 UserNotAuthorizedException
-    {
-        final String methodName            = "findTypeDefsByCategory";
-        final String categoryParameterName = "category";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefCategory(repositoryName, categoryParameterName, category, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        return realMetadataCollection.findTypeDefsByCategory(userId, category);
-    }
-
-
-    /**
-     * Returns all of the AttributeTypeDefs for a specific category.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param category - enum value for the category of an AttributeTypeDef to return.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the TypeDefCategory is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<AttributeTypeDef> findAttributeTypeDefsByCategory(String                   userId,
-                                                                  AttributeTypeDefCategory category) throws InvalidParameterException,
-                                                                                                            RepositoryErrorException,
-                                                                                                            UserNotAuthorizedException
-    {
-        final String methodName            = "findAttributeTypeDefsByCategory";
-        final String categoryParameterName = "category";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDefCategory(repositoryName, categoryParameterName, category, methodName);
-
-        /*
-         * Perform operation
-         */
-        return realMetadataCollection.findAttributeTypeDefsByCategory(userId, category);
-    }
-
-
-
-    /**
-     * Return the TypeDefs that have the properties matching the supplied match criteria.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param matchCriteria - TypeDefProperties - a list of property names and values.
-     * @return TypeDefs list.
-     * @throws InvalidParameterException - the matchCriteria is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> findTypeDefsByProperty(String            userId,
-                                                TypeDefProperties matchCriteria) throws InvalidParameterException,
-                                                                                        RepositoryErrorException,
-                                                                                        UserNotAuthorizedException
-    {
-        final String  methodName                 = "findTypeDefsByProperty";
-        final String  matchCriteriaParameterName = "matchCriteria";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateMatchCriteria(repositoryName, matchCriteriaParameterName, matchCriteria, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        return realMetadataCollection.findTypeDefsByProperty(userId, matchCriteria);
-    }
-
-
-    /**
-     * Return the types that are linked to the elements from the specified standard.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param standard - name of the standard - null means any.
-     * @param organization - name of the organization - null means any.
-     * @param identifier - identifier of the element in the standard - null means any.
-     * @return TypeDefs list - each entry in the list contains a typedef.  This is is a structure
-     * describing the TypeDef's category and properties.
-     * @throws InvalidParameterException - all attributes of the external id are null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> findTypesByExternalID(String    userId,
-                                               String    standard,
-                                               String    organization,
-                                               String    identifier) throws InvalidParameterException,
-                                                                            RepositoryErrorException,
-                                                                            UserNotAuthorizedException
-    {
-        final String                       methodName = "findTypesByExternalID";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateExternalId(repositoryName, standard, organization, identifier, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        return realMetadataCollection.findTypesByExternalID(userId, standard, organization, identifier);
-    }
-
-    /**
-     * Return the TypeDefs that match the search criteria.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param searchCriteria - String - search criteria.
-     * @return TypeDefs list - each entry in the list contains a typedef.  This is is a structure
-     * describing the TypeDef's category and properties.
-     * @throws InvalidParameterException - the searchCriteria is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<TypeDef> searchForTypeDefs(String    userId,
-                                           String    searchCriteria) throws InvalidParameterException,
-                                                                            RepositoryErrorException,
-                                                                            UserNotAuthorizedException
-    {
-        final String methodName                  = "searchForTypeDefs";
-        final String searchCriteriaParameterName = "searchCriteria";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateSearchCriteria(repositoryName, searchCriteriaParameterName, searchCriteria, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        return realMetadataCollection.searchForTypeDefs(userId, searchCriteria);
-    }
-
-
-    /**
-     * Return the TypeDef identified by the GUID.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique id of the TypeDef
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - The requested TypeDef is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDef getTypeDefByGUID(String    userId,
-                                    String    guid) throws InvalidParameterException,
-                                                           RepositoryErrorException,
-                                                           TypeDefNotKnownException,
-                                                           UserNotAuthorizedException
-    {
-        final String methodName        = "getTypeDefByGUID";
-        final String guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        return realMetadataCollection.getTypeDefByGUID(userId, guid);
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the GUID.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique id of the TypeDef
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - The requested TypeDef is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  AttributeTypeDef getAttributeTypeDefByGUID(String    userId,
-                                                       String    guid) throws InvalidParameterException,
-                                                                              RepositoryErrorException,
-                                                                              TypeDefNotKnownException,
-                                                                              UserNotAuthorizedException
-    {
-        final String methodName        = "getAttributeTypeDefByGUID";
-        final String guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        return realMetadataCollection.getAttributeTypeDefByGUID(userId, guid);
-    }
-
-
-    /**
-     * Return the TypeDef identified by the unique name.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - String name of the TypeDef.
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the name is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDef getTypeDefByName(String    userId,
-                                    String    name) throws InvalidParameterException,
-                                                           RepositoryErrorException,
-                                                           TypeDefNotKnownException,
-                                                           UserNotAuthorizedException
-    {
-        final String  methodName = "getTypeDefByName";
-        final String  nameParameterName = "name";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeName(repositoryName, nameParameterName, name, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        return realMetadataCollection.getTypeDefByName(userId, name);
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the unique name.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param name - String name of the TypeDef.
-     * @return TypeDef structure describing its category and properties.
-     * @throws InvalidParameterException - the name is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  AttributeTypeDef getAttributeTypeDefByName(String    userId,
-                                                       String    name) throws InvalidParameterException,
-                                                                              RepositoryErrorException,
-                                                                              TypeDefNotKnownException,
-                                                                              UserNotAuthorizedException
-    {
-        final String  methodName = "getAttributeTypeDefByName";
-        final String  nameParameterName = "name";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeName(repositoryName, nameParameterName, name, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        return realMetadataCollection.getAttributeTypeDefByName(userId, name);
-    }
-
-
-    /**
-     * Create a collection of related types.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newTypes - TypeDefGalleryResponse structure describing the new AttributeTypeDefs and TypeDefs.
-     * @throws InvalidParameterException - the new TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefKnownException - the TypeDef is already stored in the repository.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  void addTypeDefGallery(String          userId,
-                                   TypeDefGallery  newTypes) throws InvalidParameterException,
-                                                                    RepositoryErrorException,
-                                                                    TypeDefNotSupportedException,
-                                                                    TypeDefKnownException,
-                                                                    TypeDefConflictException,
-                                                                    InvalidTypeDefException,
-                                                                    FunctionNotSupportedException,
-                                                                    UserNotAuthorizedException
-    {
-        final String  methodName = "addTypeDefGallery";
-        final String  galleryParameterName = "newTypes";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefGallery(repositoryName, galleryParameterName, newTypes, methodName);
-
-        /*
-         * Perform operation - the gallery is passed to the real repository connector one type at a time
-         * to ensure the proper management and caching of types.
-         */
-        List<AttributeTypeDef>   attributeTypeDefs = newTypes.getAttributeTypeDefs();
-
-        if (attributeTypeDefs != null)
-        {
-            for (AttributeTypeDef   attributeTypeDef : attributeTypeDefs)
-            {
-                this.addAttributeTypeDef(userId, attributeTypeDef);
-            }
-        }
-
-        List<TypeDef>   typeDefs = newTypes.getTypeDefs();
-
-        if (typeDefs != null)
-        {
-            for (TypeDef   typeDef : typeDefs)
-            {
-                this.addTypeDef(userId, typeDef);
-            }
-        }
-    }
-
-
-    /**
-     * Create a definition of a new TypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newTypeDef - TypeDef structure describing the new TypeDef.
-     * @throws InvalidParameterException - the new TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefKnownException - the TypeDef is already stored in the repository.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public void addTypeDef(String    userId,
-                           TypeDef   newTypeDef) throws InvalidParameterException,
-                                                        RepositoryErrorException,
-                                                        TypeDefNotSupportedException,
-                                                        TypeDefKnownException,
-                                                        TypeDefConflictException,
-                                                        InvalidTypeDefException,
-                                                        FunctionNotSupportedException,
-                                                        UserNotAuthorizedException
-    {
-        final String  methodName = "addTypeDef";
-        final String  typeDefParameterName = "newTypeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDef(repositoryName, typeDefParameterName, newTypeDef, methodName);
-        repositoryValidator.validateUnknownTypeDef(repositoryName, typeDefParameterName, newTypeDef, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        realMetadataCollection.addTypeDef(userId, newTypeDef);
-
-        if (localTypeDefManager != null)
-        {
-            localTypeDefManager.addTypeDef(repositoryName, newTypeDef);
-        }
-
-        if (outboundRepositoryEventProcessor != null)
-        {
-            outboundRepositoryEventProcessor.processNewTypeDefEvent(repositoryName,
-                                                                    metadataCollectionId,
-                                                                    localServerName,
-                                                                    localServerType,
-                                                                    localOrganizationName,
-                                                                    newTypeDef);
-        }
-    }
-
-    /**
-     * Create a definition of a new AttributeTypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param newAttributeTypeDef - TypeDef structure describing the new TypeDef.
-     * @throws InvalidParameterException - the new TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefKnownException - the TypeDef is already stored in the repository.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  void addAttributeTypeDef(String             userId,
-                                     AttributeTypeDef   newAttributeTypeDef) throws InvalidParameterException,
-                                                                                    RepositoryErrorException,
-                                                                                    TypeDefNotSupportedException,
-                                                                                    TypeDefKnownException,
-                                                                                    TypeDefConflictException,
-                                                                                    InvalidTypeDefException,
-                                                                                    FunctionNotSupportedException,
-                                                                                    UserNotAuthorizedException
-    {
-        final String  methodName           = "addAttributeTypeDef";
-        final String  typeDefParameterName = "newAttributeTypeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDef(repositoryName, typeDefParameterName, newAttributeTypeDef, methodName);
-        repositoryValidator.validateUnknownAttributeTypeDef(repositoryName, typeDefParameterName, newAttributeTypeDef, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        realMetadataCollection.addAttributeTypeDef(userId, newAttributeTypeDef);
-
-        if (localTypeDefManager != null)
-        {
-            localTypeDefManager.addAttributeTypeDef(repositoryName, newAttributeTypeDef);
-        }
-
-        if (outboundRepositoryEventProcessor != null)
-        {
-            outboundRepositoryEventProcessor.processNewAttributeTypeDefEvent(repositoryName,
-                                                                             metadataCollectionId,
-                                                                             localServerName,
-                                                                             localServerType,
-                                                                             localOrganizationName,
-                                                                             newAttributeTypeDef);
-        }
-    }
-
-
-    /**
-     * Verify that a definition of a TypeDef is either new - or matches the definition already stored.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param typeDef - TypeDef structure describing the TypeDef to test.
-     * @return boolean - true means the TypeDef matches the local definition - false means the TypeDef is not known.
-     * @throws InvalidParameterException - the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public boolean verifyTypeDef(String    userId,
-                                 TypeDef   typeDef) throws InvalidParameterException,
-                                                           RepositoryErrorException,
-                                                           TypeDefNotSupportedException,
-                                                           TypeDefConflictException,
-                                                           InvalidTypeDefException,
-                                                           UserNotAuthorizedException
-    {
-        final String  methodName           = "verifyTypeDef";
-        final String  typeDefParameterName = "typeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDef(repositoryName, typeDefParameterName, typeDef, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        return realMetadataCollection.verifyTypeDef(userId, typeDef);
-    }
-
-
-    /**
-     * Verify that a definition of an AttributeTypeDef is either new - or matches the definition already stored.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param attributeTypeDef - TypeDef structure describing the TypeDef to test.
-     * @return boolean - true means the TypeDef matches the local definition - false means the TypeDef is not known.
-     * @throws InvalidParameterException - the TypeDef is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws TypeDefNotSupportedException - the repository is not able to support this TypeDef.
-     * @throws TypeDefConflictException - the new TypeDef conflicts with an existing TypeDef.
-     * @throws InvalidTypeDefException - the new TypeDef has invalid contents.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  boolean verifyAttributeTypeDef(String            userId,
-                                           AttributeTypeDef  attributeTypeDef) throws InvalidParameterException,
-                                                                                      RepositoryErrorException,
-                                                                                      TypeDefNotSupportedException,
-                                                                                      TypeDefConflictException,
-                                                                                      InvalidTypeDefException,
-                                                                                      UserNotAuthorizedException
-    {
-        final String  methodName           = "verifyAttributeTypeDef";
-        final String  typeDefParameterName = "attributeTypeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDef(repositoryName, typeDefParameterName, attributeTypeDef, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        return realMetadataCollection.verifyAttributeTypeDef(userId, attributeTypeDef);
-    }
-
-
-    /**
-     * Update one or more properties of the TypeDef.  The TypeDefPatch controls what types of updates
-     * are safe to make to the TypeDef.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param typeDefPatch - TypeDef patch describing change to TypeDef.
-     * @return updated TypeDef
-     * @throws InvalidParameterException - the TypeDefPatch is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws PatchErrorException - the TypeDef can not be updated because the supplied patch is incompatible
-     *                               with the stored TypeDef.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public TypeDef updateTypeDef(String       userId,
-                                 TypeDefPatch typeDefPatch) throws InvalidParameterException,
-                                                                   RepositoryErrorException,
-                                                                   TypeDefNotKnownException,
-                                                                   PatchErrorException,
-                                                                   FunctionNotSupportedException,
-                                                                   UserNotAuthorizedException
-    {
-        final String  methodName           = "updateTypeDef";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefPatch(repositoryName, typeDefPatch, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        TypeDef   updatedTypeDef = realMetadataCollection.updateTypeDef(userId, typeDefPatch);
-
-        if (localTypeDefManager != null)
-        {
-            localTypeDefManager.updateTypeDef(repositoryName, updatedTypeDef);
-        }
-
-        if (outboundRepositoryEventProcessor != null)
-        {
-            outboundRepositoryEventProcessor.processUpdatedTypeDefEvent(repositoryName,
-                                                                        metadataCollectionId,
-                                                                        localServerName,
-                                                                        localServerType,
-                                                                        localOrganizationName,
-                                                                        typeDefPatch);
-        }
-
-        return updatedTypeDef;
-    }
-
-
-    /**
-     * Delete the TypeDef.  This is only possible if the TypeDef has never been used to create instances or any
-     * instances of this TypeDef have been purged from the metadata collection.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param obsoleteTypeDefGUID - String unique identifier for the TypeDef.
-     * @param obsoleteTypeDefName - String unique name for the TypeDef.
-     * @throws InvalidParameterException - the one of TypeDef identifiers is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested TypeDef is not found in the metadata collection.
-     * @throws TypeDefInUseException - the TypeDef can not be deleted because there are instances of this type in the
-     *                                 the metadata collection.  These instances need to be purged before the
-     *                                 TypeDef can be deleted.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public void deleteTypeDef(String    userId,
-                              String    obsoleteTypeDefGUID,
-                              String    obsoleteTypeDefName) throws InvalidParameterException,
-                                                                    RepositoryErrorException,
-                                                                    TypeDefNotKnownException,
-                                                                    TypeDefInUseException,
-                                                                    FunctionNotSupportedException,
-                                                                    UserNotAuthorizedException
-    {
-        final String    methodName        = "deleteTypeDef";
-        final String    guidParameterName = "obsoleteTypeDefGUID";
-        final String    nameParameterName = "obsoleteTypeDefName";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               guidParameterName,
-                                               nameParameterName,
-                                               obsoleteTypeDefGUID,
-                                               obsoleteTypeDefName,
-                                               methodName);
-
-        /*
-         * Perform operation
-         */
-
-        realMetadataCollection.deleteTypeDef(userId,
-                                             obsoleteTypeDefGUID,
-                                             obsoleteTypeDefName);
-
-        if (localTypeDefManager != null)
-        {
-            localTypeDefManager.deleteTypeDef(repositoryName,
-                                              obsoleteTypeDefGUID,
-                                              obsoleteTypeDefName);
-        }
-
-        if (outboundRepositoryEventProcessor != null)
-        {
-            outboundRepositoryEventProcessor.processDeletedTypeDefEvent(repositoryName,
-                                                                        metadataCollectionId,
-                                                                        localServerName,
-                                                                        localServerType,
-                                                                        localOrganizationName,
-                                                                        obsoleteTypeDefGUID,
-                                                                        obsoleteTypeDefName);
-        }
-    }
-
-
-    /**
-     * Delete an AttributeTypeDef.  This is only possible if the AttributeTypeDef has never been used to create
-     * instances or any instances of this AttributeTypeDef have been purged from the metadata collection.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param obsoleteTypeDefGUID - String unique identifier for the AttributeTypeDef.
-     * @param obsoleteTypeDefName - String unique name for the AttributeTypeDef.
-     * @throws InvalidParameterException - the one of AttributeTypeDef identifiers is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the requested AttributeTypeDef is not found in the metadata collection.
-     * @throws TypeDefInUseException - the AttributeTypeDef can not be deleted because there are instances of this type in the
-     *                                 the metadata collection.  These instances need to be purged before the
-     *                                 AttributeTypeDef can be deleted.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public void deleteAttributeTypeDef(String    userId,
-                                       String    obsoleteTypeDefGUID,
-                                       String    obsoleteTypeDefName) throws InvalidParameterException,
-                                                                             RepositoryErrorException,
-                                                                             TypeDefNotKnownException,
-                                                                             TypeDefInUseException,
-                                                                             FunctionNotSupportedException,
-                                                                             UserNotAuthorizedException
-    {
-        final String    methodName        = "deleteAttributeTypeDef";
-        final String    guidParameterName = "obsoleteTypeDefGUID";
-        final String    nameParameterName = "obsoleteTypeDefName";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateAttributeTypeDefIds(repositoryName,
-                                                        guidParameterName,
-                                                        nameParameterName,
-                                                        obsoleteTypeDefGUID,
-                                                        obsoleteTypeDefName,
-                                                        methodName);
-
-        /*
-         * Perform operation
-         */
-
-        realMetadataCollection.deleteAttributeTypeDef(userId,
-                                                      obsoleteTypeDefGUID,
-                                                      obsoleteTypeDefName);
-
-        if (localTypeDefManager != null)
-        {
-            localTypeDefManager.deleteAttributeTypeDef(repositoryName,
-                                                       obsoleteTypeDefGUID,
-                                                       obsoleteTypeDefName);
-        }
-
-        if (outboundRepositoryEventProcessor != null)
-        {
-            outboundRepositoryEventProcessor.processDeletedAttributeTypeDefEvent(repositoryName,
-                                                                                 metadataCollectionId,
-                                                                                 localServerName,
-                                                                                 localServerType,
-                                                                                 localOrganizationName,
-                                                                                 obsoleteTypeDefGUID,
-                                                                                 obsoleteTypeDefName);
-        }
-    }
-
-
-    /**
-     * Change the guid or name of an existing TypeDef to a new value.  This is used if two different
-     * TypeDefs are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param originalTypeDefGUID - the original guid of the TypeDef.
-     * @param originalTypeDefName - the original name of the TypeDef.
-     * @param newTypeDefGUID - the new identifier for the TypeDef.
-     * @param newTypeDefName - new name for this TypeDef.
-     * @return typeDef - new values for this TypeDef, including the new guid/name.
-     * @throws InvalidParameterException - one of the parameters is invalid or null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the TypeDef identified by the original guid/name is not found
-     *                                    in the metadata collection.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  TypeDef reIdentifyTypeDef(String     userId,
-                                      String     originalTypeDefGUID,
-                                      String     originalTypeDefName,
-                                      String     newTypeDefGUID,
-                                      String     newTypeDefName) throws InvalidParameterException,
-                                                                        RepositoryErrorException,
-                                                                        TypeDefNotKnownException,
-                                                                        FunctionNotSupportedException,
-                                                                        UserNotAuthorizedException
-    {
-        final String    methodName                = "reIdentifyTypeDef";
-        final String    originalGUIDParameterName = "originalTypeDefGUID";
-        final String    originalNameParameterName = "originalTypeDefName";
-        final String    newGUIDParameterName      = "newTypeDefGUID";
-        final String    newNameParameterName      = "newTypeDefName";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               originalGUIDParameterName,
-                                               originalNameParameterName,
-                                               originalTypeDefGUID,
-                                               originalTypeDefName,
-                                               methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               newGUIDParameterName,
-                                               newNameParameterName,
-                                               newTypeDefGUID,
-                                               newTypeDefName,
-                                               methodName);
-
-        /*
-         * Perform operation
-         */
-
-        TypeDef   originalTypeDef = realMetadataCollection.getTypeDefByGUID(userId, originalTypeDefGUID);
-
-        TypeDef   newTypeDef = realMetadataCollection.reIdentifyTypeDef(userId,
-                                                                        originalTypeDefGUID,
-                                                                        originalTypeDefName,
-                                                                        newTypeDefGUID,
-                                                                        newTypeDefName);
-
-        if (localTypeDefManager != null)
-        {
-            localTypeDefManager.reIdentifyTypeDef(repositoryName,
-                                                  originalTypeDefGUID,
-                                                  originalTypeDefName,
-                                                  newTypeDef);
-        }
-
-        if (outboundRepositoryEventProcessor != null)
-        {
-            outboundRepositoryEventProcessor.processReIdentifiedTypeDefEvent(repositoryName,
-                                                                             metadataCollectionId,
-                                                                             localServerName,
-                                                                             localServerType,
-                                                                             localOrganizationName,
-                                                                             originalTypeDef,
-                                                                             newTypeDef);
-        }
-
-        return newTypeDef;
-    }
-
-
-    /**
-     * Change the guid or name of an existing TypeDef to a new value.  This is used if two different
-     * TypeDefs are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param originalAttributeTypeDefGUID - the original guid of the AttributeTypeDef.
-     * @param originalAttributeTypeDefName - the original name of the AttributeTypeDef.
-     * @param newAttributeTypeDefGUID - the new identifier for the AttributeTypeDef.
-     * @param newAttributeTypeDefName - new name for this AttributeTypeDef.
-     * @return attributeTypeDef - new values for this AttributeTypeDef, including the new guid/name.
-     * @throws InvalidParameterException - one of the parameters is invalid or null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws TypeDefNotKnownException - the AttributeTypeDef identified by the original guid/name is not
-     *                                    found in the metadata collection.
-     * @throws FunctionNotSupportedException - the repository does not support this call.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  AttributeTypeDef reIdentifyAttributeTypeDef(String     userId,
-                                                        String     originalAttributeTypeDefGUID,
-                                                        String     originalAttributeTypeDefName,
-                                                        String     newAttributeTypeDefGUID,
-                                                        String     newAttributeTypeDefName) throws InvalidParameterException,
-                                                                                                   RepositoryErrorException,
-                                                                                                   TypeDefNotKnownException,
-                                                                                                   FunctionNotSupportedException,
-                                                                                                   UserNotAuthorizedException
-    {
-        final String    methodName                = "reIdentifyAttributeTypeDef";
-        final String    originalGUIDParameterName = "originalAttributeTypeDefGUID";
-        final String    originalNameParameterName = "originalAttributeTypeDefName";
-        final String    newGUIDParameterName      = "newAttributeTypeDefGUID";
-        final String    newNameParameterName      = "newAttributeTypeDefName";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               originalGUIDParameterName,
-                                               originalNameParameterName,
-                                               originalAttributeTypeDefGUID,
-                                               originalAttributeTypeDefName,
-                                               methodName);
-        repositoryValidator.validateTypeDefIds(repositoryName,
-                                               newGUIDParameterName,
-                                               newNameParameterName,
-                                               newAttributeTypeDefGUID,
-                                               newAttributeTypeDefName,
-                                               methodName);
-
-        /*
-         * Perform operation
-         */
-
-        AttributeTypeDef   originalAttributeTypeDef = realMetadataCollection.getAttributeTypeDefByGUID(userId, originalAttributeTypeDefGUID);
-
-        AttributeTypeDef   newAttributeTypeDef = realMetadataCollection.reIdentifyAttributeTypeDef(userId,
-                                                                                                   originalAttributeTypeDefGUID,
-                                                                                                   originalAttributeTypeDefName,
-                                                                                                   newAttributeTypeDefGUID,
-                                                                                                   newAttributeTypeDefName);
-
-        if (localTypeDefManager != null)
-        {
-            localTypeDefManager.reIdentifyAttributeTypeDef(repositoryName,
-                                                           originalAttributeTypeDefGUID,
-                                                           originalAttributeTypeDefName,
-                                                           newAttributeTypeDef);
-        }
-
-        if (outboundRepositoryEventProcessor != null)
-        {
-            outboundRepositoryEventProcessor.processReIdentifiedAttributeTypeDefEvent(repositoryName,
-                                                                                      metadataCollectionId,
-                                                                                      localServerName,
-                                                                                      localServerType,
-                                                                                      localOrganizationName,
-                                                                                      originalAttributeTypeDef,
-                                                                                      newAttributeTypeDef);
-        }
-
-        return newAttributeTypeDef;
-    }
-
-
-
-    /* ===================================================
-     * Group 3: Locating entity and relationship instances
-     */
-
-
-    /**
-     * Returns a boolean indicating if the entity is stored in the metadata collection.  This entity may be a full
-     * entity object, or an entity proxy.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity
-     * @return the entity details if the entity is found in the metadata collection; otherwise return null
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public EntityDetail  isEntityKnown(String    userId,
-                                       String    guid) throws InvalidParameterException,
-                                                              RepositoryErrorException,
-                                                              UserNotAuthorizedException
-    {
-        final String  methodName = "isEntityKnown";
-        final String  guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        EntityDetail   entity = realMetadataCollection.isEntityKnown(userId, guid);
-
-        if (entity != null)
-        {
-            /*
-             * Ensure the provenance of the entity is correctly set.  A repository may not support the storing of
-             * the metadata collection id in the repository (or uses null to mean "local").  When the entity
-             * detail is sent out, it must have its home metadata collection id set up.  So LocalOMRSMetadataCollection
-             * fixes up the provenance.
-             */
-            if (entity.getMetadataCollectionId() == null)
-            {
-                entity.setMetadataCollectionId(metadataCollectionId);
-                entity.setInstanceProvenanceType(InstanceProvenanceType.LOCAL_COHORT);
-            }
-        }
-
-        return entity;
-    }
-
-
-    /**
-     * Return the header and classifications for a specific entity.  The returned entity summary may be from
-     * a full entity object or an entity proxy.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity
-     * @return EntitySummary structure
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public EntitySummary getEntitySummary(String    userId,
-                                          String    guid) throws InvalidParameterException,
-                                                                 RepositoryErrorException,
-                                                                 EntityNotKnownException,
-                                                                 UserNotAuthorizedException
-    {
-        final String  methodName        = "getEntitySummary";
-        final String  guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        EntitySummary  entity =  realMetadataCollection.getEntitySummary(userId, guid);
-
-        if (entity != null)
-        {
-            /*
-             * Ensure the provenance of the entity is correctly set.  A repository may not support the storing of
-             * the metadata collection id in the repository (or uses null to mean "local").  When the entity
-             * detail is sent out, it must have its home metadata collection id set up.  So LocalOMRSMetadataCollection
-             * fixes up the provenance.
-             */
-            if (entity.getMetadataCollectionId() == null)
-            {
-                entity.setMetadataCollectionId(metadataCollectionId);
-                entity.setInstanceProvenanceType(InstanceProvenanceType.LOCAL_COHORT);
-            }
-        }
-
-        return entity;
-    }
-
-
-    /**
-     * Return the header, classifications and properties of a specific entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity.
-     * @return EntityDetail structure.
-     * @throws InvalidParameterException - the guid is null.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                 the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws EntityProxyOnlyException - the requested entity instance is only a proxy in the metadata collection.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public EntityDetail getEntityDetail(String    userId,
-                                        String    guid) throws InvalidParameterException,
-                                                               RepositoryErrorException,
-                                                               EntityNotKnownException,
-                                                               EntityProxyOnlyException,
-                                                               UserNotAuthorizedException
-    {
-        final String  methodName        = "getEntityDetail";
-        final String  guidParameterName = "guid";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        EntityDetail   entity = realMetadataCollection.getEntityDetail(userId, guid);
-
-        if (entity != null)
-        {
-            /*
-             * Ensure the provenance of the entity is correctly set.  A repository may not support the storing of
-             * the metadata collection id in the repository (or uses null to mean "local").  When the entity
-             * detail is sent out, it must have its home metadata collection id set up.  So LocalOMRSMetadataCollection
-             * fixes up the provenance.
-             */
-            if (entity.getMetadataCollectionId() == null)
-            {
-                entity.setMetadataCollectionId(metadataCollectionId);
-                entity.setInstanceProvenanceType(InstanceProvenanceType.LOCAL_COHORT);
-            }
-        }
-
-        return entity;
-    }
-
-
-    /**
-     * Return a historical version of an entity - includes the header, classifications and properties of the entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param guid - String unique identifier for the entity.
-     * @param asOfTime - the time used to determine which version of the entity that is desired.
-     * @return EntityDetail structure.
-     * @throws InvalidParameterException - the guid or date is null or the date is for a future time.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                 the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection
-     *                                   at the time requested.
-     * @throws EntityProxyOnlyException - the requested entity instance is only a proxy in the metadata collection.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  EntityDetail getEntityDetail(String    userId,
-                                         String    guid,
-                                         Date      asOfTime) throws InvalidParameterException,
-                                                                    RepositoryErrorException,
-                                                                    EntityNotKnownException,
-                                                                    EntityProxyOnlyException,
-                                                                    FunctionNotSupportedException,
-                                                                    UserNotAuthorizedException
-    {
-        final String  methodName        = "getEntityDetail";
-        final String  guidParameterName = "guid";
-        final String  asOfTimeParameter = "asOfTime";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, guid, methodName);
-        repositoryValidator.validateAsOfTime(repositoryName, asOfTimeParameter, asOfTime, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        EntityDetail   entity = realMetadataCollection.getEntityDetail(userId, guid, asOfTime);
-
-        if (entity != null)
-        {
-            /*
-             * Ensure the provenance of the entity is correctly set.  A repository may not support the storing of
-             * the metadata collection id in the repository (or uses null to mean "local").  When the entity
-             * detail is sent out, it must have its home metadata collection id set up.  So LocalOMRSMetadataCollection
-             * fixes up the provenance.
-             */
-            if (entity.getMetadataCollectionId() == null)
-            {
-                entity.setMetadataCollectionId(metadataCollectionId);
-                entity.setInstanceProvenanceType(InstanceProvenanceType.LOCAL_COHORT);
-            }
-        }
-
-        return entity;
-    }
-
-
-    /**
-     * Return the relationships for a specific entity.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param entityGUID - String unique identifier for the entity.
-     * @param relationshipTypeGUID - String GUID of the the type of relationship required (null for all).
-     * @param fromRelationshipElement - the starting element number of the relationships to return.
-     *                                This is used when retrieving elements
-     *                                beyond the first page of results. Zero means start from the first element.
-     * @param limitResultsByStatus - By default, relationships in all statuses are returned.  However, it is possible
-     *                             to specify a list of statuses (eg ACTIVE) to restrict the results to.  Null means all
-     *                             status values.
-     * @param asOfTime - Requests a historical query of the relationships for the entity.  Null means return the
-     *                 present values.
-     * @param sequencingProperty - String name of the property that is to be used to sequence the results.
-     *                           Null means do not sequence on a property name (see SequencingOrder).
-     * @param sequencingOrder - Enum defining how the results should be ordered.
-     * @param pageSize -- the maximum number of result classifications that can be returned on this request.  Zero means
-     *                 unrestricted return results size.
-     * @return Relationships list.  Null means no relationships associated with the entity.
-     * @throws InvalidParameterException - a parameter is invalid or null.
-     * @throws TypeErrorException - the type guid passed on the request is not known by the
-     *                              metadata collection.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                  the metadata collection is stored.
-     * @throws EntityNotKnownException - the requested entity instance is not known in the metadata collection.
-     * @throws PropertyErrorException - the sequencing property is not valid for the attached classifications.
-     * @throws PagingErrorException - the paging/sequencing parameters are set up incorrectly.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public List<Relationship> getRelationshipsForEntity(String                     userId,
-                                                        String                     entityGUID,
-                                                        String                     relationshipTypeGUID,
-                                                        int                        fromRelationshipElement,
-                                                        List<InstanceStatus>       limitResultsByStatus,
-                                                        Date                       asOfTime,
-                                                        String                     sequencingProperty,
-                                                        SequencingOrder            sequencingOrder,
-                                                        int                        pageSize) throws InvalidParameterException,
-                                                                                                    TypeErrorException,
-                                                                                                    RepositoryErrorException,
-                                                                                                    EntityNotKnownException,
-                                                                                                    PropertyErrorException,
-                                                                                                    PagingErrorException,
-                                                                                                    FunctionNotSupportedException,
-                                                                                                    UserNotAuthorizedException
-    {
-        final String  methodName = "getRelationshipsForEntity";
-        final String  guidParameterName = "entityGUID";
-        final String  asOfTimeParameter = "asOfTime";
-        final String  typeGUIDParameter = "relationshipTypeGUID";
-        final String  pageSizeParameter = "pageSize";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateGUID(repositoryName, guidParameterName, entityGUID, methodName);
-        repositoryValidator.validateOptionalTypeGUID(repositoryName, typeGUIDParameter, relationshipTypeGUID, methodName);
-        repositoryValidator.validateAsOfTime(repositoryName, asOfTimeParameter, asOfTime, methodName);
-        repositoryValidator.validatePageSize(repositoryName, pageSizeParameter, pageSize, methodName);
-
-        /*
-         * Perform operation
-         */
-
-        return realMetadataCollection.getRelationshipsForEntity(userId,
-                                                                entityGUID,
-                                                                relationshipTypeGUID,
-                                                                fromRelationshipElement,
-                                                                limitResultsByStatus,
-                                                                asOfTime,
-                                                                sequencingProperty,
-                                                                sequencingOrder,
-                                                                pageSize);
-    }
-
-
-    /**
-     * Return a list of entities that match the supplied properties according to the match criteria.  The results
-     * can be returned over many pages.
-     *
-     * @param userId - unique identifier for requesting user.
-     * @param entityTypeGUID - String unique identifier for the entity type of interest (null means any entity type).
-     * @param matchProperties - List of entity properties to match to (null means match on entityTypeGUID only).
-     * @param matchCriteria - Enum defining how the properties should be matched to the entities in the repository.
-     * @param fromEntityElement - the starting element number of the entities to return.
-     *                                This is used when retrieving elements
-     *                                beyond the first page of results. Zero means start from the first element.
-     * @param limitResultsByStatus - By default, entities in all statuses are returned.  However, it is possible
-     *                             to specify a list of statuses (eg ACTIVE) to restrict the results to.  Null means all
-     *                             status values.
-     * @param limitResultsByClassification - List of classifications that must be present on all returned entities.
-     * @param asOfTime - Requests a historical query of the entity.  Null means return the present values.
-     * @param sequencingProperty - String name of the entity property that is to be used to sequence the results.
-     *                           Null means do not sequence on a property name (see SequencingOrder).
-     * @param sequencingOrder - Enum defining how the results should be ordered.
-     * @param pageSize - the maximum number of result entities that can be returned on this request.  Zero means
-     *                 unrestricted return results size.
-     * @return a list of entities matching the supplied criteria - null means no matching entities in the metadata
-     * collection.
-     * @throws InvalidParameterException - a parameter is invalid or null.
-     * @throws TypeErrorException - the type guid passed on the request is not known by the
-     *                              metadata collection.
-     * @throws RepositoryErrorException - there is a problem communicating with the metadata repository where
-     *                                    the metadata collection is stored.
-     * @throws PropertyErrorException - the properties specified are not valid for any of the requested types of
-     *                                  entity.
-     * @throws PagingErrorException - the paging/sequencing parameters are set up incorrectly.
-     * @throws FunctionNotSupportedException - the repository does not support the asOfTime parameter.
-     * @throws UserNotAuthorizedException - the userId is not permitted to perform this operation.
-     */
-    public  List<EntityDetail> findEntitiesByProperty(String                    userId,
-                                                      String                    entityTypeGUID,
-                                                      InstanceProperties        matchProperties,
-                                                      MatchCriteria             matchCriteria,
-                                                      int                       fromEntityElement,
-                                                      List<InstanceStatus>      limitResultsByStatus,
-                                                      List<String>              limitResultsByClassification,
-                                                      Date                      asOfTime,
-                                                      String                    sequencingProperty,
-                                                      SequencingOrder           sequencingOrder,
-                                                      int                       pageSize) throws InvalidParameterException,
-                                                                                                 TypeErrorException,
-                                                                                                 RepositoryErrorException,
-                                                                                                 PropertyErrorException,
-                                                                                                 PagingErrorException,
-                                                                                                 FunctionNotSupportedException,
-                                                                                                 UserNotAuthorizedException
-    {
-        final String  methodName                   = "findEntitiesByProperty";
-        final String  matchCriteriaParameterName   = "matchCriteria";
-        final String  matchPropertiesParameterName = "matchProperties";
-        final String  guidParameterName            = "entityTypeGUID";
-        final String  asOfTimeParameter            = "asOfTime";
-        final String  pageSizeParameter            = "pageSize";
-
-        /*
-         * Validate parameters
-         */
-        this.validateRepositoryConnector(methodName);
-        parentConnector.validateRepositoryIsActive(methodName);
-
-        repositoryValidator.validateUserId(repositoryName, userId, methodName);
-        repositoryValidator.validateOptionalTypeGUID(repositoryName, guidParameterName, entityTypeGUID, methodName);
-        repositoryValidator.validateAsOfTime(repositoryName, asOfTimeParameter, asOfTime, methodName);
-        repositoryValidator.validatePageSize(repositoryName, pageSizeParameter, pageSize, methodName);
-        repositoryValidator.validateMatchCriteria(repositoryName,
-                                                  matchCriteriaParameterName,
-                                                  matchPropertiesParameterName,
-                                                  matchCriteria,
-                                                  matchProperties,
-                                                  methodName);
-
-        /*
-         * Perform operation
-         */
-
-        return realMetadataCollection.findEntitiesByProperty(userId,
-                                                             entityTypeGUID,
-                                                             matchProperties,
-                                                             matchCriteria,
-                                                             fromEntityElement,
-                                                             limitResultsByStatus,
-                                                             limitResultsByClassification,
-                                                             asOfTime,
-                                            

<TRUNCATED>

[06/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSRepositoryHelper.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSRepositoryHelper.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSRepositoryHelper.java
deleted file mode 100644
index e8f4662..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositorycontentmanager/OMRSRepositoryHelper.java
+++ /dev/null
@@ -1,1782 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository.repositorycontentmanager;
-
-
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.*;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.*;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.*;
-
-import java.util.*;
-
-/**
- * OMRSRepositoryHelper provides methods to repository connectors and repository event mappers to help
- * them build valid type definitions (TypeDefs), entities and relationships.  It is a facade to the
- * repository content manager which holds an in memory cache of all the active TypeDefs in the local server.
- * OMRSRepositoryHelper's purpose is to create a object that the repository connectors and event mappers can
- * create, use and discard without needing to know how to connect to the repository content manager.
- */
-public class OMRSRepositoryHelper implements OMRSTypeDefHelper, OMRSInstanceHelper
-{
-    private static OMRSRepositoryContentManager defaultRepositoryContentManager = null;
-
-    private OMRSRepositoryContentManager repositoryContentManager;
-
-
-    /**
-     * Set up the default local repository's content manager.  This maintains a cache of the local repository's type
-     * definitions and rules to provide helpers and validators for TypeDefs and instances that are
-     * exchanged amongst the open metadata repositories and open metadata access services (OMAS).
-     *
-     * @param repositoryContentManager - link to repository content manager.
-     */
-    public static synchronized void setRepositoryContentManager(OMRSRepositoryContentManager repositoryContentManager)
-    {
-        OMRSRepositoryHelper.defaultRepositoryContentManager = repositoryContentManager;
-    }
-
-
-    /**
-     * Default constructor uses the default repository content manager.  Repository connectors should use the
-     * repository helper from their superclass.
-     */
-    @Deprecated
-    public OMRSRepositoryHelper()
-    {
-        this.repositoryContentManager = defaultRepositoryContentManager;
-    }
-
-
-    /**
-     * Creates a repository helper linked to the supplied repository content manager.
-     *
-     * @param repositoryContentManager - object associated with the local repository.
-     */
-    public OMRSRepositoryHelper(OMRSRepositoryContentManager repositoryContentManager)
-    {
-        this.repositoryContentManager = repositoryContentManager;
-    }
-
-
-    /*
-     * ========================
-     * OMRSTypeDefHelper
-     */
-
-    /**
-     * Return the list of typedefs active in the local repository.
-     *
-     * @return TypeDef gallery
-     */
-    public TypeDefGallery getActiveTypeDefGallery()
-    {
-        final String methodName = "getActiveTypeDefGallery";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.getActiveTypeDefGallery();
-    }
-
-
-    /**
-     * Return the list of typedefs known by the local repository.
-     *
-     * @return TypeDef gallery
-     */
-    public TypeDefGallery getKnownTypeDefGallery()
-    {
-        final String methodName = "getKnownTypeDefGallery";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.getKnownTypeDefGallery();
-    }
-
-
-    /**
-     * Return the TypeDef identified by the name supplied by the caller.  This is used in the connectors when
-     * validating the actual types of the repository with the known open metadata types - looking specifically
-     * for types of the same name but with different content.
-     *
-     * @param sourceName  - source of the request (used for logging)
-     * @param typeDefName - unique name for the TypeDef
-     * @return TypeDef object or null if TypeDef is not known.
-     */
-    public TypeDef getTypeDefByName(String sourceName,
-                                    String typeDefName)
-    {
-        final String methodName = "getTypeDefByName";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.getTypeDefByName(sourceName, typeDefName);
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the name supplied by the caller.  This is used in the connectors when
-     * validating the actual types of the repository with the known open metadata types - looking specifically
-     * for types of the same name but with different content.
-     *
-     * @param sourceName           - source of the request (used for logging)
-     * @param attributeTypeDefName - unique name for the TypeDef
-     * @return AttributeTypeDef object or null if AttributeTypeDef is not known.
-     */
-    public AttributeTypeDef getAttributeTypeDefByName(String sourceName,
-                                                      String attributeTypeDefName)
-    {
-        final String methodName = "getAttributeTypeDefByName";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.getAttributeTypeDefByName(sourceName, attributeTypeDefName);
-    }
-
-
-    /**
-     * Return the TypeDefs identified by the name supplied by the caller.  The TypeDef name may have wild
-     * card characters in it which is why the results are returned in a list.
-     *
-     * @param sourceName  - source of the request (used for logging)
-     * @param typeDefName - unique name for the TypeDef
-     * @return TypeDef object or null if TypeDef is not known.
-     */
-    public TypeDefGallery getActiveTypesByWildCardName(String sourceName,
-                                                       String typeDefName)
-    {
-        final String methodName = "getActiveTypesByWildCardName";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.getActiveTypesByWildCardName(sourceName, typeDefName);
-    }
-
-
-    /**
-     * Return the TypeDef identified by the guid supplied by the caller.  This call is used when
-     * retrieving a type that only the guid is known.
-     *
-     * @param sourceName  - source of the request (used for logging)
-     * @param parameterName - name of guid parameter
-     * @param typeDefGUID - unique identifier for the TypeDef
-     * @param methodName - calling method
-     * @return TypeDef object
-     * @throws TypeErrorException - unknown or invalid type
-     */
-    public TypeDef getTypeDef(String sourceName,
-                              String parameterName,
-                              String typeDefGUID,
-                              String methodName) throws TypeErrorException
-    {
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.getTypeDef(sourceName, parameterName, typeDefGUID, methodName);
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the guid and name supplied by the caller.  This call is used when
-     * retrieving a type that only the guid is known.
-     *
-     * @param sourceName           - source of the request (used for logging)
-     * @param attributeTypeDefGUID - unique identifier for the AttributeTypeDef
-     * @return TypeDef object
-     * @throws TypeErrorException - unknown or invalid type
-     */
-    public AttributeTypeDef getAttributeTypeDef(String sourceName,
-                                                String attributeTypeDefGUID,
-                                                String methodName) throws TypeErrorException
-    {
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.getAttributeTypeDef(sourceName, attributeTypeDefGUID, methodName);
-    }
-
-
-    /**
-     * Return the TypeDef identified by the guid and name supplied by the caller.  This call is used when
-     * retrieving a type that should exist.  For example, retrieving the type of a metadata instance.
-     *
-     * @param sourceName  - source of the request (used for logging)
-     * @param guidParameterName - name of guid parameter
-     * @param nameParameterName - name of type name parameter
-     * @param typeDefGUID - unique identifier for the TypeDef
-     * @param typeDefName - unique name for the TypeDef
-     * @param methodName  - calling method
-     * @return TypeDef object
-     * @throws TypeErrorException - unknown or invalid type
-     */
-    public TypeDef getTypeDef(String sourceName,
-                              String guidParameterName,
-                              String nameParameterName,
-                              String typeDefGUID,
-                              String typeDefName,
-                              String methodName) throws TypeErrorException
-    {
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.getTypeDef(sourceName,
-                                                   guidParameterName,
-                                                   nameParameterName,
-                                                   typeDefGUID,
-                                                   typeDefName,
-                                                   methodName);
-    }
-
-
-    /**
-     * Return the AttributeTypeDef identified by the guid and name supplied by the caller.  This call is used when
-     * retrieving a type that should exist.  For example, retrieving the type definition of a metadata instance's
-     * property.
-     *
-     * @param sourceName           - source of the request (used for logging)
-     * @param attributeTypeDefGUID - unique identifier for the AttributeTypeDef
-     * @param attributeTypeDefName - unique name for the AttributeTypeDef
-     * @param methodName - calling method
-     * @return TypeDef object
-     * @throws TypeErrorException - unknown or invalid type
-     */
-    public AttributeTypeDef getAttributeTypeDef(String sourceName,
-                                                String attributeTypeDefGUID,
-                                                String attributeTypeDefName,
-                                                String methodName) throws TypeErrorException
-    {
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.getAttributeTypeDef(sourceName,
-                                                            attributeTypeDefGUID,
-                                                            attributeTypeDefName,
-                                                            methodName);
-    }
-
-
-    /**
-     * Returns an updated TypeDef that has had the supplied patch applied.  It throws an exception if any part of
-     * the patch is incompatible with the original TypeDef.  For example, if there is a mismatch between
-     * the type or version that either represents.
-     *
-     * @param sourceName      - source of the TypeDef (used for logging)
-     * @param typeDefPatch    - patch to apply
-     * @param originalTypeDef - typeDef to patch
-     * @return updated TypeDef
-     * @throws PatchErrorException       - the patch is either badly formatted, or does not apply to the supplied TypeDef
-     * @throws InvalidParameterException - the TypeDefPatch is null.
-     */
-    public TypeDef applyPatch(String       sourceName,
-                              TypeDef      originalTypeDef,
-                              TypeDefPatch typeDefPatch) throws PatchErrorException,
-                                                                InvalidParameterException
-    {
-        final String  methodName = "applyPatch";
-
-        validateRepositoryContentManager(methodName);
-
-        TypeDef clonedTypeDef  = null;
-        TypeDef updatedTypeDef = null;
-
-        /*
-         * Begin with simple validation of the typeDef patch.
-         */
-        if (typeDefPatch != null)
-        {
-            // TODO invalid parameter exception
-        }
-
-        long newVersion = typeDefPatch.getUpdateToVersion();
-        if (newVersion <= typeDefPatch.getApplyToVersion())
-        {
-            // TODO PatchError
-        }
-
-        TypeDefPatchAction patchAction = typeDefPatch.getAction();
-        if (patchAction == null)
-        {
-            // TODO patch error
-        }
-
-
-        /*
-         * Is the version compatible?
-         */
-        if (originalTypeDef.getVersion() != typeDefPatch.getApplyToVersion())
-        {
-            // TODO throw PatchException - incompatible versions
-        }
-
-        /*
-         * OK to perform the update.  Need to create a new TypeDef object.  TypeDef is an abstract class
-         * so need to use the TypeDefCategory to create a new object of the correct type.
-         */
-        TypeDefCategory category = originalTypeDef.getCategory();
-        if (category == null)
-        {
-            // TODO Throw PatchError - base type is messed up
-        }
-
-        try
-        {
-            switch (category)
-            {
-                case ENTITY_DEF:
-                    clonedTypeDef = new EntityDef((EntityDef) originalTypeDef);
-                    break;
-
-                case RELATIONSHIP_DEF:
-                    clonedTypeDef = new RelationshipDef((RelationshipDef) originalTypeDef);
-                    break;
-
-                case CLASSIFICATION_DEF:
-                    clonedTypeDef = new ClassificationDef((ClassificationDef) originalTypeDef);
-                    break;
-            }
-        }
-        catch (ClassCastException castError)
-        {
-            // TODO Throw PatchError - base type is messed up
-        }
-
-        /*
-         * Now we have a new TypeDef - just need to make the changes.  The Action
-         */
-        if (clonedTypeDef != null)
-        {
-            switch (patchAction)
-            {
-                case ADD_ATTRIBUTES:
-                    updatedTypeDef = this.patchTypeDefAttributes(clonedTypeDef, typeDefPatch.getTypeDefAttributes());
-                    break;
-
-                case ADD_OPTIONS:
-                    updatedTypeDef = this.patchTypeDefNewOptions(clonedTypeDef, typeDefPatch.getTypeDefOptions());
-                    break;
-
-                case UPDATE_OPTIONS:
-                    updatedTypeDef = this.patchTypeDefUpdateOptions(clonedTypeDef, typeDefPatch.getTypeDefOptions());
-                    break;
-
-                case DELETE_OPTIONS:
-                    updatedTypeDef = this.patchTypeDefDeleteOptions(clonedTypeDef, typeDefPatch.getTypeDefOptions());
-                    break;
-
-                case ADD_EXTERNAL_STANDARDS:
-                    updatedTypeDef = this.patchTypeDefAddExternalStandards(clonedTypeDef,
-                                                                           typeDefPatch.getExternalStandardMappings(),
-                                                                           typeDefPatch.getTypeDefAttributes());
-                    break;
-
-                case UPDATE_EXTERNAL_STANDARDS:
-                    updatedTypeDef = this.patchTypeDefUpdateExternalStandards(clonedTypeDef,
-                                                                              typeDefPatch.getExternalStandardMappings(),
-                                                                              typeDefPatch.getTypeDefAttributes());
-                    break;
-
-                case DELETE_EXTERNAL_STANDARDS:
-                    updatedTypeDef = this.patchTypeDefDeleteExternalStandards(clonedTypeDef,
-                                                                              typeDefPatch.getExternalStandardMappings(),
-                                                                              typeDefPatch.getTypeDefAttributes());
-                    break;
-
-                case UPDATE_DESCRIPTIONS:
-                    updatedTypeDef = this.patchTypeDefNewDescriptions(clonedTypeDef,
-                                                                      typeDefPatch.getDescription(),
-                                                                      typeDefPatch.getDescriptionGUID(),
-                                                                      typeDefPatch.getTypeDefAttributes());
-                    break;
-            }
-        }
-
-
-        if (updatedTypeDef != null)
-        {
-            updatedTypeDef.setVersion(typeDefPatch.getUpdateToVersion());
-            updatedTypeDef.setVersionName(typeDefPatch.getNewVersionName());
-        }
-
-        return updatedTypeDef;
-    }
-
-
-    /**
-     * Add the supplied attributes to the properties definition for the cloned typedef.
-     *
-     * @param clonedTypeDef     - TypeDef object to update
-     * @param typeDefAttributes - new attributes to add.
-     * @return updated TypeDef
-     * @throws PatchErrorException - problem adding attributes
-     */
-    private TypeDef patchTypeDefAttributes(TypeDef clonedTypeDef,
-                                           List<TypeDefAttribute> typeDefAttributes) throws PatchErrorException
-    {
-        List<TypeDefAttribute> propertyDefinitions = clonedTypeDef.getPropertiesDefinition();
-
-        if (propertyDefinitions == null)
-        {
-            propertyDefinitions = new ArrayList<>();
-        }
-
-        for (TypeDefAttribute newAttribute : typeDefAttributes)
-        {
-            if (newAttribute != null)
-            {
-                String           attributeName = newAttribute.getAttributeName();
-                AttributeTypeDef attributeType = newAttribute.getAttributeType();
-
-                if ((attributeName != null) && (attributeType != null))
-                {
-                    if (propertyDefinitions.contains(newAttribute))
-                    {
-                        // TODO Patch error - Duplicate Attribute
-                    }
-                    else
-                    {
-                        propertyDefinitions.add(newAttribute);
-                    }
-                }
-                else
-                {
-                    // TODO Patch Error - Invalid Attribute in patch
-                }
-            }
-        }
-
-        if (propertyDefinitions.size() > 0)
-        {
-            clonedTypeDef.setPropertiesDefinition(propertyDefinitions);
-        }
-        else
-        {
-            clonedTypeDef.setPropertiesDefinition(null);
-        }
-
-        return clonedTypeDef;
-    }
-
-
-    /**
-     * @param clonedTypeDef  - TypeDef object to update
-     * @param typeDefOptions - new options to add
-     * @return updated TypeDef
-     * @throws PatchErrorException - problem adding options
-     */
-    private TypeDef patchTypeDefNewOptions(TypeDef clonedTypeDef,
-                                           Map<String, String> typeDefOptions) throws PatchErrorException
-    {
-        // TODO
-        return null;
-    }
-
-
-    /**
-     * @param clonedTypeDef  - TypeDef object to update
-     * @param typeDefOptions - options to update
-     * @return updated TypeDef
-     * @throws PatchErrorException - problem updating options
-     */
-    private TypeDef patchTypeDefUpdateOptions(TypeDef clonedTypeDef,
-                                              Map<String, String> typeDefOptions) throws PatchErrorException
-    {
-        // TODO
-        return null;
-    }
-
-
-    /**
-     * @param clonedTypeDef  - TypeDef object to update
-     * @param typeDefOptions - options to delete
-     * @return updated TypeDef
-     * @throws PatchErrorException - problem deleting options
-     */
-    private TypeDef patchTypeDefDeleteOptions(TypeDef clonedTypeDef,
-                                              Map<String, String> typeDefOptions) throws PatchErrorException
-    {
-        // TODO
-        return null;
-    }
-
-
-    /**
-     * Add new mappings to external standards to the TypeDef.
-     *
-     * @param clonedTypeDef            - TypeDef object to update
-     * @param externalStandardMappings - new mappings to add
-     * @return updated TypeDef
-     * @throws PatchErrorException - problem adding mapping(s)
-     */
-    private TypeDef patchTypeDefAddExternalStandards(TypeDef clonedTypeDef,
-                                                     List<ExternalStandardMapping> externalStandardMappings,
-                                                     List<TypeDefAttribute> typeDefAttributes) throws PatchErrorException
-    {
-        // TODO
-        return null;
-    }
-
-
-    /**
-     * Update the supplied mappings from the TypeDef.
-     *
-     * @param clonedTypeDef            - TypeDef object to update
-     * @param externalStandardMappings - mappings to update
-     * @return updated TypeDef
-     * @throws PatchErrorException - problem updating mapping(s)
-     */
-    private TypeDef patchTypeDefUpdateExternalStandards(TypeDef clonedTypeDef,
-                                                        List<ExternalStandardMapping> externalStandardMappings,
-                                                        List<TypeDefAttribute> typeDefAttributes) throws PatchErrorException
-    {
-        // TODO
-        return null;
-    }
-
-
-    /**
-     * Delete the supplied mappings from the TypeDef.
-     *
-     * @param clonedTypeDef            - TypeDef object to update
-     * @param externalStandardMappings - list of mappings to delete
-     * @return updated TypeDef
-     * @throws PatchErrorException - problem deleting mapping(s)
-     */
-    private TypeDef patchTypeDefDeleteExternalStandards(TypeDef clonedTypeDef,
-                                                        List<ExternalStandardMapping> externalStandardMappings,
-                                                        List<TypeDefAttribute> typeDefAttributes) throws PatchErrorException
-    {
-        // TODO
-        return null;
-    }
-
-
-    /**
-     * Update the descriptions for the TypeDef or any of its attributes.  If the description values are null, they are
-     * not changes in the TypeDef.  This means there is no way to clear a description - just update it for a better one.
-     *
-     * @param clonedTypeDef   - TypeDef object to update
-     * @param description     - new description
-     * @param descriptionGUID - new unique identifier for glossary term that provides detailed description of TypeDef
-     * @return updated TypeDef
-     * @throws PatchErrorException - problem adding new description
-     */
-    private TypeDef patchTypeDefNewDescriptions(TypeDef clonedTypeDef,
-                                                String description,
-                                                String descriptionGUID,
-                                                List<TypeDefAttribute> typeDefAttributes) throws PatchErrorException
-    {
-        if (description != null)
-        {
-            clonedTypeDef.setDescription(description);
-        }
-        if (descriptionGUID != null)
-        {
-            clonedTypeDef.setDescriptionGUID(descriptionGUID);
-        }
-
-        if (typeDefAttributes != null)
-        {
-            List<TypeDefAttribute> propertiesDefinition = clonedTypeDef.getPropertiesDefinition();
-
-            if (propertiesDefinition == null)
-            {
-                // TODO throw patch error - attempting to Patch TypeDef with no properties
-            }
-
-            for (TypeDefAttribute patchTypeDefAttribute : typeDefAttributes)
-            {
-                if (patchTypeDefAttribute != null)
-                {
-                    String patchTypeDefAttributeName = patchTypeDefAttribute.getAttributeName();
-
-                    if (patchTypeDefAttributeName != null)
-                    {
-                        for (TypeDefAttribute existingProperty : propertiesDefinition)
-                        {
-                            if (existingProperty != null)
-                            {
-                                if (patchTypeDefAttributeName.equals(existingProperty.getAttributeName()))
-                                {
-
-                                }
-                            }
-                            else
-                            {
-                                // TODO throw Patch Error because basic Type is messed up
-                            }
-                        }
-                    }
-                    else
-                    {
-                        //  TODO throw Patch Error null attribute name
-                    }
-                }
-                else
-                {
-                    // TODO throw Patch Error null attribute included
-                }
-            }
-        }
-
-        return clonedTypeDef;
-    }
-
-    /*
-     * ======================
-     * OMRSInstanceHelper
-     */
-
-    /**
-     * Return an entity with the header and type information filled out.  The caller only needs to add properties
-     * and classifications to complete the set up of the entity.
-     *
-     * @param sourceName           - source of the request (used for logging)
-     * @param metadataCollectionId - unique identifier for the home metadata collection
-     * @param provenanceType       - origin of the entity
-     * @param userName             - name of the creator
-     * @param typeName             - name of the type
-     * @return partially filled out entity - needs classifications and properties
-     * @throws TypeErrorException - the type name is not recognized.
-     */
-    public EntityDetail getSkeletonEntity(String sourceName,
-                                          String metadataCollectionId,
-                                          InstanceProvenanceType provenanceType,
-                                          String userName,
-                                          String typeName) throws TypeErrorException
-    {
-        final String methodName = "getSkeletonEntity";
-
-        validateRepositoryContentManager(methodName);
-
-        EntityDetail entity = new EntityDetail();
-        String       guid   = UUID.randomUUID().toString();
-
-        entity.setInstanceProvenanceType(provenanceType);
-        entity.setMetadataCollectionId(metadataCollectionId);
-        entity.setCreateTime(new Date());
-        entity.setGUID(guid);
-        entity.setVersion(1L);
-
-        entity.setType(repositoryContentManager.getInstanceType(sourceName, TypeDefCategory.ENTITY_DEF, typeName, methodName));
-        entity.setStatus(repositoryContentManager.getInitialStatus(sourceName, typeName, methodName));
-        entity.setCreatedBy(userName);
-        entity.setInstanceURL(repositoryContentManager.getEntityURL(sourceName, guid));
-
-        return entity;
-    }
-
-
-    /**
-     * Return a classification with the header and type information filled out.  The caller only needs to add properties
-     * and possibility origin information if it is propagated to complete the set up of the classification.
-     *
-     * @param sourceName             - source of the request (used for logging)
-     * @param userName               - name of the creator
-     * @param classificationTypeName - name of the classification type
-     * @param entityTypeName         - name of the type for the entity that this classification is to be attached to.
-     * @return partially filled out classification - needs properties and possibly origin information
-     * @throws TypeErrorException - the type name is not recognized as a classification type.
-     */
-    public Classification getSkeletonClassification(String sourceName,
-                                                    String userName,
-                                                    String classificationTypeName,
-                                                    String entityTypeName) throws TypeErrorException
-    {
-        final String methodName = "getSkeletonClassification";
-
-        validateRepositoryContentManager(methodName);
-
-
-        if (repositoryContentManager.isValidTypeCategory(sourceName,
-                                                         TypeDefCategory.CLASSIFICATION_DEF,
-                                                         classificationTypeName,
-                                                         methodName))
-        {
-            if (repositoryContentManager.isValidClassificationForEntity(sourceName,
-                                                                        classificationTypeName,
-                                                                        entityTypeName,
-                                                                        methodName))
-            {
-                Classification classification = new Classification();
-
-                classification.setName(classificationTypeName);
-                classification.setCreateTime(new Date());
-                classification.setCreatedBy(userName);
-                classification.setVersion(1L);
-                classification.setType(repositoryContentManager.getInstanceType(sourceName,
-                                                                                TypeDefCategory.CLASSIFICATION_DEF,
-                                                                                classificationTypeName,
-                                                                                methodName));
-                classification.setStatus(repositoryContentManager.getInitialStatus(sourceName,
-                                                                                   classificationTypeName,
-                                                                                   methodName));
-
-                return classification;
-            }
-            else
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.INVALID_CLASSIFICATION_FOR_ENTITY;
-                String errorMessage = errorCode.getErrorMessageId()
-                        + errorCode.getFormattedErrorMessage(classificationTypeName, entityTypeName);
-
-                throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                             this.getClass().getName(),
-                                             methodName,
-                                             errorMessage,
-                                             errorCode.getSystemAction(),
-                                             errorCode.getUserAction());
-            }
-        }
-        else
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.UNKNOWN_CLASSIFICATION;
-            String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage(classificationTypeName);
-
-            throw new TypeErrorException(errorCode.getHTTPErrorCode(),
-                                         this.getClass().getName(),
-                                         methodName,
-                                         errorMessage,
-                                         errorCode.getSystemAction(),
-                                         errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Return a relationship with the header and type information filled out.  The caller only needs to add properties
-     * to complete the set up of the relationship.
-     *
-     * @param sourceName           - source of the request (used for logging)
-     * @param metadataCollectionId - unique identifier for the home metadata collection
-     * @param provenanceType       - origin type of the relationship
-     * @param userName             - name of the creator
-     * @param typeName             - name of the relationship's type
-     * @return partially filled out relationship - needs properties
-     * @throws TypeErrorException - the type name is not recognized as a relationship type.
-     */
-    public Relationship getSkeletonRelationship(String sourceName,
-                                                String metadataCollectionId,
-                                                InstanceProvenanceType provenanceType,
-                                                String userName,
-                                                String typeName) throws TypeErrorException
-    {
-        final String methodName = "getSkeletonRelationship";
-
-        validateRepositoryContentManager(methodName);
-
-        Relationship relationship = new Relationship();
-        String       guid         = UUID.randomUUID().toString();
-
-        relationship.setInstanceProvenanceType(provenanceType);
-        relationship.setMetadataCollectionId(metadataCollectionId);
-        relationship.setCreateTime(new Date());
-        relationship.setGUID(guid);
-        relationship.setVersion(1L);
-
-        relationship.setType(repositoryContentManager.getInstanceType(sourceName,
-                                                                      TypeDefCategory.RELATIONSHIP_DEF,
-                                                                      typeName,
-                                                                      methodName));
-        relationship.setStatus(repositoryContentManager.getInitialStatus(sourceName, typeName, methodName));
-        relationship.setCreatedBy(userName);
-        relationship.setInstanceURL(repositoryContentManager.getRelationshipURL(sourceName, guid));
-
-        return relationship;
-    }
-
-
-    /**
-     * Return a relationship with the header and type information filled out.  The caller only needs to add properties
-     * to complete the set up of the relationship.
-     *
-     * @param sourceName     - source of the request (used for logging)
-     * @param typeDefSummary - details of the new type
-     * @return instance type
-     * @throws TypeErrorException - the type name is not recognized as a relationship type.
-     */
-    public InstanceType getNewInstanceType(String sourceName,
-                                           TypeDefSummary typeDefSummary) throws TypeErrorException
-    {
-        final String methodName = "getNewInstanceType";
-
-        validateRepositoryContentManager(methodName);
-
-        return repositoryContentManager.getInstanceType(sourceName,
-                                                        typeDefSummary.getCategory(),
-                                                        typeDefSummary.getName(),
-                                                        methodName);
-    }
-
-
-    /**
-     * Return a filled out entity.  It just needs to add the classifications.
-     *
-     * @param sourceName           - source of the request (used for logging)
-     * @param metadataCollectionId - unique identifier for the home metadata collection
-     * @param provenanceType       - origin of the entity
-     * @param userName             - name of the creator
-     * @param typeName             - name of the type
-     * @param properties           - properties for the entity
-     * @param classifications      - list of classifications for the entity
-     * @return an entity that is filled out
-     * @throws TypeErrorException - the type name is not recognized as an entity type
-     */
-    public EntityDetail getNewEntity(String sourceName,
-                                     String metadataCollectionId,
-                                     InstanceProvenanceType provenanceType,
-                                     String userName,
-                                     String typeName,
-                                     InstanceProperties properties,
-                                     List<Classification> classifications) throws TypeErrorException
-    {
-        EntityDetail entity = this.getSkeletonEntity(sourceName,
-                                                     metadataCollectionId,
-                                                     provenanceType,
-                                                     userName,
-                                                     typeName);
-
-        entity.setProperties(properties);
-        entity.setClassifications(classifications);
-
-        return entity;
-    }
-
-
-    /**
-     * Return a filled out relationship - just needs the entity proxies added.
-     *
-     * @param sourceName           - source of the request (used for logging)
-     * @param metadataCollectionId - unique identifier for the home metadata collection
-     * @param provenanceType       - origin of the relationship
-     * @param userName             - name of the creator
-     * @param typeName             - name of the type
-     * @param properties           - properties for the relationship
-     * @return a relationship that is filled out
-     * @throws TypeErrorException - the type name is not recognized as a relationship type
-     */
-    public Relationship getNewRelationship(String sourceName,
-                                           String metadataCollectionId,
-                                           InstanceProvenanceType provenanceType,
-                                           String userName,
-                                           String typeName,
-                                           InstanceProperties properties) throws TypeErrorException
-    {
-        Relationship relationship = this.getSkeletonRelationship(sourceName,
-                                                                 metadataCollectionId,
-                                                                 provenanceType,
-                                                                 userName,
-                                                                 typeName);
-
-        relationship.setProperties(properties);
-
-        return relationship;
-    }
-
-
-    /**
-     * Return a classification with the header and type information filled out.  The caller only needs to add properties
-     * to complete the set up of the classification.
-     *
-     * @param sourceName     - source of the request (used for logging)
-     * @param userName       - name of the creator
-     * @param typeName       - name of the type
-     * @param entityTypeName - name of the type for the entity that this classification is to be attached to.
-     * @param properties     - properties for the classification
-     * @return partially filled out classification - needs properties and possibly origin information
-     * @throws TypeErrorException - the type name is not recognized as a classification type.
-     */
-    public Classification getNewClassification(String sourceName,
-                                               String userName,
-                                               String typeName,
-                                               String entityTypeName,
-                                               ClassificationOrigin classificationOrigin,
-                                               String classificationOriginGUID,
-                                               InstanceProperties properties) throws TypeErrorException
-    {
-        Classification classification = this.getSkeletonClassification(sourceName,
-                                                                       userName,
-                                                                       typeName,
-                                                                       entityTypeName);
-
-        classification.setClassificationOrigin(classificationOrigin);
-        classification.setClassificationOriginGUID(classificationOriginGUID);
-        classification.setProperties(properties);
-
-        return classification;
-    }
-
-
-    /**
-     * Add a classification to an existing entity.
-     *
-     * @param sourceName        - source of the request (used for logging)
-     * @param entity            - entity to update
-     * @param newClassification - classification to update
-     * @param methodName        - calling method
-     * @return updated entity
-     */
-    public EntityDetail addClassificationToEntity(String sourceName,
-                                                  EntityDetail entity,
-                                                  Classification newClassification,
-                                                  String methodName)
-    {
-        EntityDetail updatedEntity = new EntityDetail(entity);
-
-        if (newClassification != null)
-        {
-            /*
-             * Duplicate classifications are not allowed so a hash map is used to remove duplicates.
-             */
-            HashMap<String, Classification> entityClassificationsMap = new HashMap<>();
-            List<Classification>            entityClassifications    = updatedEntity.getClassifications();
-
-            if (entityClassifications != null)
-            {
-                for (Classification existingClassification : entityClassifications)
-                {
-                    if (existingClassification != null)
-                    {
-                        entityClassificationsMap.put(existingClassification.getName(), existingClassification);
-                    }
-                }
-            }
-
-            entityClassificationsMap.put(newClassification.getName(), newClassification);
-
-            if (entityClassificationsMap.isEmpty())
-            {
-                updatedEntity.setClassifications(null);
-            }
-            else
-            {
-                entityClassifications = new ArrayList<>(entityClassificationsMap.values());
-
-                updatedEntity.setClassifications(entityClassifications);
-            }
-
-            return updatedEntity;
-        }
-        else
-        {
-            final String thisMethodName = "addClassificationToEntity";
-
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_CLASSIFICATION_CREATED;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(sourceName,
-                                                                                                     thisMethodName,
-                                                                                                     methodName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Return the names classification from an existing entity.
-     *
-     * @param sourceName         - source of the request (used for logging)
-     * @param entity             - entity to update
-     * @param classificationName - classification to retrieve
-     * @param methodName         - calling method
-     * @return located classification
-     * @throws ClassificationErrorException - the classification is not attached to the entity
-     */
-    public Classification getClassificationFromEntity(String sourceName,
-                                                      EntityDetail entity,
-                                                      String classificationName,
-                                                      String methodName) throws ClassificationErrorException
-    {
-        final String thisMethodName = "getClassificationFromEntity";
-
-        if ((entity == null) || (classificationName == null))
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.VALIDATION_LOGIC_ERROR;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(sourceName,
-                                                                                                     thisMethodName,
-                                                                                                     methodName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-
-        List<Classification> entityClassifications = entity.getClassifications();
-
-        if (entityClassifications != null)
-        {
-            for (Classification entityClassification : entityClassifications)
-            {
-                if (classificationName.equals(entityClassification.getName()))
-                {
-                    return entityClassification;
-                }
-            }
-        }
-
-        OMRSErrorCode errorCode = OMRSErrorCode.ENTITY_NOT_CLASSIFIED;
-        String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                 sourceName,
-                                                                                                 classificationName,
-                                                                                                 entity.getGUID());
-        throw new ClassificationErrorException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction());
-    }
-
-
-    /**
-     * Replace an existing classification with a new one
-     *
-     * @param sourceName        - source of the request (used for logging)
-     * @param userName          - name of the editor
-     * @param entity            - entity to update
-     * @param newClassification - classification to update
-     * @param methodName        - calling method
-     * @return updated entity
-     */
-    public EntityDetail updateClassificationInEntity(String sourceName,
-                                                     String userName,
-                                                     EntityDetail entity,
-                                                     Classification newClassification,
-                                                     String methodName)
-    {
-        if (newClassification != null)
-        {
-            Classification updatedClassification = new Classification(newClassification);
-
-            updatedClassification = incrementVersion(userName, newClassification, updatedClassification);
-
-            return this.addClassificationToEntity(sourceName, entity, updatedClassification, methodName);
-        }
-        else
-        {
-            final String thisMethodName = "updateClassificationInEntity";
-
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_CLASSIFICATION_CREATED;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(sourceName,
-                                                                                                     thisMethodName,
-                                                                                                     methodName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Return a oldClassification with the header and type information filled out.  The caller only needs to add properties
-     * to complete the set up of the oldClassification.
-     *
-     * @param sourceName            - source of the request (used for logging)
-     * @param entity                - entity to update
-     * @param oldClassificationName - classification to remove
-     * @param methodName            - calling method
-     * @return updated entity
-     * @throws ClassificationErrorException - the entity was not classified with this classification
-     */
-    public EntityDetail deleteClassificationFromEntity(String sourceName,
-                                                       EntityDetail entity,
-                                                       String oldClassificationName,
-                                                       String methodName) throws ClassificationErrorException
-    {
-        EntityDetail updatedEntity = new EntityDetail(entity);
-
-        if (oldClassificationName != null)
-        {
-            /*
-             * Duplicate classifications are not allowed so a hash map is used to remove duplicates.
-             */
-            HashMap<String, Classification> entityClassificationsMap = new HashMap<>();
-            List<Classification>            entityClassifications    = updatedEntity.getClassifications();
-
-            if (entityClassifications != null)
-            {
-                for (Classification existingClassification : entityClassifications)
-                {
-                    if (existingClassification != null)
-                    {
-                        entityClassificationsMap.put(existingClassification.getName(), existingClassification);
-                    }
-                }
-            }
-
-            Classification oldClassification = entityClassificationsMap.remove(oldClassificationName);
-
-            if (oldClassification == null)
-            {
-                OMRSErrorCode errorCode = OMRSErrorCode.ENTITY_NOT_CLASSIFIED;
-                String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName,
-                                                                                                         sourceName,
-                                                                                                         oldClassificationName,
-                                                                                                         entity.getGUID());
-                throw new ClassificationErrorException(errorCode.getHTTPErrorCode(),
-                                                       this.getClass().getName(),
-                                                       methodName,
-                                                       errorMessage,
-                                                       errorCode.getSystemAction(),
-                                                       errorCode.getUserAction());
-            }
-
-            if (entityClassificationsMap.isEmpty())
-            {
-                entity.setClassifications(null);
-            }
-            else
-            {
-                entityClassifications = new ArrayList<>(entityClassificationsMap.values());
-
-                updatedEntity.setClassifications(entityClassifications);
-            }
-
-            return updatedEntity;
-        }
-        else
-        {
-            final String thisMethodName = "deleteClassificationFromEntity";
-
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_CLASSIFICATION_NAME;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(sourceName,
-                                                                                                     thisMethodName,
-                                                                                                     methodName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Merge two sets of instance properties.
-     *
-     * @param sourceName         - source of the request (used for logging)
-     * @param existingProperties - current set of properties
-     * @param newProperties      - properties to add/update
-     * @return merged properties
-     */
-    public InstanceProperties mergeInstanceProperties(String             sourceName,
-                                                      InstanceProperties existingProperties,
-                                                      InstanceProperties newProperties)
-    {
-        InstanceProperties mergedProperties;
-
-        if (existingProperties == null)
-        {
-            mergedProperties = newProperties;
-        }
-        else
-        {
-            mergedProperties = existingProperties;
-
-            if (newProperties != null)
-            {
-                Iterator<String> newPropertyNames = newProperties.getPropertyNames();
-
-                while (newPropertyNames.hasNext())
-                {
-                    String newPropertyName = newPropertyNames.next();
-
-                    mergedProperties.setProperty(newPropertyName, newProperties.getPropertyValue(newPropertyName));
-                }
-            }
-        }
-
-        return mergedProperties;
-    }
-
-
-    /**
-     * Changes the control information to reflect an update in an instance.
-     *
-     * @param userId           - user making the change.
-     * @param originalInstance - original instance before the change
-     * @param updatedInstance  - new version of the instance that needs updating
-     */
-    public Relationship incrementVersion(String              userId,
-                                         InstanceAuditHeader originalInstance,
-                                         Relationship        updatedInstance)
-    {
-        updatedInstance.setUpdatedBy(userId);
-        updatedInstance.setUpdateTime(new Date());
-
-        long currentVersion = originalInstance.getVersion();
-        updatedInstance.setVersion(currentVersion++);
-
-        return updatedInstance;
-    }
-
-
-    /**
-     * Changes the control information to reflect an update in an instance.
-     *
-     * @param userId           - user making the change.
-     * @param originalInstance - original instance before the change
-     * @param updatedInstance  - new version of the instance that needs updating
-     */
-    public Classification incrementVersion(String              userId,
-                                           InstanceAuditHeader originalInstance,
-                                           Classification      updatedInstance)
-    {
-        updatedInstance.setUpdatedBy(userId);
-        updatedInstance.setUpdateTime(new Date());
-
-        long currentVersion = originalInstance.getVersion();
-        updatedInstance.setVersion(currentVersion++);
-
-        return updatedInstance;
-    }
-
-
-    /**
-     * Changes the control information to reflect an update in an instance.
-     *
-     * @param userId           - user making the change.
-     * @param originalInstance - original instance before the change
-     * @param updatedInstance  - new version of the instance that needs updating
-     */
-    public EntityDetail incrementVersion(String              userId,
-                                         InstanceAuditHeader originalInstance,
-                                         EntityDetail        updatedInstance)
-    {
-        updatedInstance.setUpdatedBy(userId);
-        updatedInstance.setUpdateTime(new Date());
-
-        long currentVersion = originalInstance.getVersion();
-        updatedInstance.setVersion(currentVersion++);
-
-        return updatedInstance;
-    }
-
-
-    /**
-     * Generate an entity proxy from an entity and its TypeDef.
-     *
-     * @param sourceName - source of the request (used for logging)
-     * @param entity     - entity instance
-     * @return - new entity proxy
-     * @throws RepositoryErrorException - logic error in the repository - corrupted entity
-     */
-    public EntityProxy getNewEntityProxy(String       sourceName,
-                                         EntityDetail entity) throws RepositoryErrorException
-    {
-        final String  methodName = "getNewEntityProxy";
-        final String  parameterName = "entity";
-
-        validateRepositoryContentManager(methodName);
-
-        if (entity != null)
-        {
-            InstanceType type = entity.getType();
-
-            if (type != null)
-            {
-                try
-                {
-                    TypeDef typeDef = repositoryContentManager.getTypeDef(sourceName,
-                                                                          parameterName,
-                                                                          parameterName,
-                                                                          type.getTypeDefGUID(),
-                                                                          type.getTypeDefName(),
-                                                                          methodName);
-
-                    EntityProxy            entityProxy          = new EntityProxy(entity);
-                    InstanceProperties     entityProperties     = entity.getProperties();
-                    List<TypeDefAttribute> propertiesDefinition = typeDef.getPropertiesDefinition();
-                    InstanceProperties     uniqueAttributes     = new InstanceProperties();
-
-                    for (TypeDefAttribute typeDefAttribute : propertiesDefinition)
-                    {
-                        if (typeDefAttribute != null)
-                        {
-                            String propertyName = typeDefAttribute.getAttributeName();
-
-                            if ((typeDefAttribute.isUnique()) && (propertyName != null))
-                            {
-                                InstancePropertyValue propertyValue = entityProperties.getPropertyValue(propertyName);
-
-                                if (propertyValue != null)
-                                {
-                                    uniqueAttributes.setProperty(propertyName, propertyValue);
-                                }
-                            }
-                        }
-                    }
-
-                    if (uniqueAttributes.getPropertyCount() > 0)
-                    {
-                        entityProxy.setUniqueProperties(uniqueAttributes);
-                    }
-
-                    return entityProxy;
-                }
-                catch (TypeErrorException error)
-                {
-                    OMRSErrorCode errorCode = OMRSErrorCode.REPOSITORY_LOGIC_ERROR;
-                    String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(sourceName,
-                                                                                                             methodName,
-                                                                                                             error.getErrorMessage());
-
-                    throw new RepositoryErrorException(errorCode.getHTTPErrorCode(),
-                                                       this.getClass().getName(),
-                                                       methodName,
-                                                       errorMessage,
-                                                       errorCode.getSystemAction(),
-                                                       errorCode.getUserAction());
-                }
-            }
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Return boolean true if entity is linked by this relationship.
-     *
-     * @param sourceName   - name of source requesting help
-     * @param entityGUID   - unique identifier of entity
-     * @param relationship - relationship to test
-     * @return boolean indicating whether the entity is mentioned in the relationship
-     */
-    public boolean relatedEntity(String sourceName,
-                                 String entityGUID,
-                                 Relationship relationship)
-    {
-        if (relationship != null)
-        {
-            EntityProxy entityOneProxy = relationship.getEntityOneProxy();
-            EntityProxy entityTwoProxy = relationship.getEntityTwoProxy();
-
-            if (entityOneProxy != null)
-            {
-                if (entityGUID.equals(entityOneProxy.getGUID()))
-                {
-                    return true;
-                }
-            }
-
-            if (entityTwoProxy != null)
-            {
-                if (entityGUID.equals(entityTwoProxy.getGUID()))
-                {
-                    return true;
-                }
-            }
-        }
-
-        return false;
-    }
-
-
-    /**
-     * Return the requested property or null if property is not found.  If the property is not
-     * a string property then a logic exception is thrown
-     *
-     * @param sourceName - source of call
-     * @param propertyName - name of requested property
-     * @param properties - properties from the instance.
-     * @param methodName - method of caller
-     * @return string property value or null
-     */
-    public String getStringProperty(String             sourceName,
-                                    String             propertyName,
-                                    InstanceProperties properties,
-                                    String             methodName)
-    {
-        final String  thisMethodName = "getStringProperty";
-
-        if (properties != null)
-        {
-            InstancePropertyValue instancePropertyValue = properties.getPropertyValue(propertyName);
-
-            try
-            {
-                if (instancePropertyValue.getInstancePropertyCategory() == InstancePropertyCategory.PRIMITIVE)
-                {
-                    PrimitivePropertyValue primitivePropertyValue = (PrimitivePropertyValue) instancePropertyValue;
-
-                    if (primitivePropertyValue.getPrimitiveDefCategory() == PrimitiveDefCategory.OM_PRIMITIVE_TYPE_STRING)
-                    {
-                        return primitivePropertyValue.getPrimitiveValue().toString();
-                    }
-                }
-            }
-            catch (Throwable  error)
-            {
-                throwHelperLogicError(sourceName, methodName, thisMethodName);
-            }
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Return the requested property or null if property is not found.  If the property is not
-     * a string property then a logic exception is thrown
-     *
-     * @param sourceName - source of call
-     * @param propertyName - name of requested property
-     * @param properties - properties from the instance.
-     * @param methodName - method of caller
-     * @return string property value or null
-     */
-    public InstanceProperties getMapProperty(String             sourceName,
-                                             String             propertyName,
-                                             InstanceProperties properties,
-                                             String             methodName)
-    {
-        final String  thisMethodName = "getMapProperty";
-
-        if (properties != null)
-        {
-            InstancePropertyValue instancePropertyValue = properties.getPropertyValue(propertyName);
-
-            try
-            {
-                if (instancePropertyValue.getInstancePropertyCategory() == InstancePropertyCategory.MAP)
-                {
-                    MapPropertyValue mapPropertyValue = (MapPropertyValue) instancePropertyValue;
-
-                    return mapPropertyValue.getMapValues();
-                }
-            }
-            catch (Throwable  error)
-            {
-                throwHelperLogicError(sourceName, methodName, thisMethodName);
-            }
-        }
-
-        return null;
-    }
-
-
-    /**
-     * Return the requested property or 0 if property is not found.  If the property is not
-     * a int property then a logic exception is thrown
-     *
-     * @param sourceName - source of call
-     * @param propertyName - name of requested property
-     * @param properties - properties from the instance.
-     * @param methodName - method of caller
-     * @return string property value or null
-     */
-    public int    getIntProperty(String             sourceName,
-                                 String             propertyName,
-                                 InstanceProperties properties,
-                                 String             methodName)
-    {
-        final String  thisMethodName = "getIntProperty";
-
-        if (properties != null)
-        {
-            InstancePropertyValue instancePropertyValue = properties.getPropertyValue(propertyName);
-
-            try
-            {
-                if (instancePropertyValue.getInstancePropertyCategory() == InstancePropertyCategory.PRIMITIVE)
-                {
-                    PrimitivePropertyValue primitivePropertyValue = (PrimitivePropertyValue) instancePropertyValue;
-
-                    if (primitivePropertyValue.getPrimitiveDefCategory() == PrimitiveDefCategory.OM_PRIMITIVE_TYPE_INT)
-                    {
-                        return Integer.valueOf(primitivePropertyValue.getPrimitiveValue().toString());
-                    }
-                }
-            }
-            catch (Throwable  error)
-            {
-                throwHelperLogicError(sourceName, methodName, thisMethodName);
-            }
-        }
-
-        return 0;
-    }
-
-
-    /**
-     * Return the requested property or false if property is not found.  If the property is not
-     * a boolean property then a logic exception is thrown
-     *
-     * @param sourceName - source of call
-     * @param propertyName - name of requested property
-     * @param properties - properties from the instance.
-     * @param methodName - method of caller
-     * @return string property value or null
-     */
-    public boolean getBooleanProperty(String             sourceName,
-                                      String             propertyName,
-                                      InstanceProperties properties,
-                                      String             methodName)
-    {
-        final String  thisMethodName = "getBooleanProperty";
-
-        if (properties != null)
-        {
-            InstancePropertyValue instancePropertyValue = properties.getPropertyValue(propertyName);
-
-            try
-            {
-                if (instancePropertyValue.getInstancePropertyCategory() == InstancePropertyCategory.PRIMITIVE)
-                {
-                    PrimitivePropertyValue primitivePropertyValue = (PrimitivePropertyValue) instancePropertyValue;
-
-                    if (primitivePropertyValue.getPrimitiveDefCategory() == PrimitiveDefCategory.OM_PRIMITIVE_TYPE_BOOLEAN)
-                    {
-                        return Boolean.valueOf(primitivePropertyValue.getPrimitiveValue().toString());
-                    }
-                }
-            }
-            catch (Throwable  error)
-            {
-                throwHelperLogicError(sourceName, methodName, thisMethodName);
-            }
-        }
-
-        return false;
-    }
-
-
-    /**
-     * Add the supplied property to an instance properties object.  If the instance property object
-     * supplied is null, a new instance properties object is created.
-     *
-     * @param sourceName - name of caller
-     * @param properties - properties object to add property to - may be null.
-     * @param propertyName - name of property
-     * @param propertyValue - value of property
-     * @param methodName - calling method name
-     * @return instance properties object.
-     */
-    public InstanceProperties addStringPropertyToInstance(String             sourceName,
-                                                          InstanceProperties properties,
-                                                          String             propertyName,
-                                                          String             propertyValue,
-                                                          String             methodName)
-    {
-        InstanceProperties  resultingProperties;
-
-        if (properties == null)
-        {
-            resultingProperties = new InstanceProperties();
-        }
-        else
-        {
-            resultingProperties = properties;
-        }
-
-
-        PrimitivePropertyValue primitivePropertyValue = new PrimitivePropertyValue();
-
-        primitivePropertyValue.setPrimitiveDefCategory(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_STRING);
-        primitivePropertyValue.setPrimitiveValue(propertyValue);
-
-        resultingProperties.setProperty(propertyName, primitivePropertyValue);
-
-        return resultingProperties;
-    }
-
-
-    /**
-     * Add the supplied property to an instance properties object.  If the instance property object
-     * supplied is null, a new instance properties object is created.
-     *
-     * @param sourceName - name of caller
-     * @param properties - properties object to add property to - may be null.
-     * @param propertyName - name of property
-     * @param propertyValue - value of property
-     * @param methodName - calling method name
-     * @return instance properties object.
-     */
-    public InstanceProperties addIntPropertyToInstance(String             sourceName,
-                                                       InstanceProperties properties,
-                                                       String             propertyName,
-                                                       int                propertyValue,
-                                                       String             methodName)
-    {
-        InstanceProperties  resultingProperties;
-
-        if (properties == null)
-        {
-            resultingProperties = new InstanceProperties();
-        }
-        else
-        {
-            resultingProperties = properties;
-        }
-
-
-        PrimitivePropertyValue primitivePropertyValue = new PrimitivePropertyValue();
-
-        primitivePropertyValue.setPrimitiveDefCategory(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_INT);
-        primitivePropertyValue.setPrimitiveValue(propertyValue);
-
-        resultingProperties.setProperty(propertyName, primitivePropertyValue);
-
-        return resultingProperties;
-    }
-
-
-    /**
-     * Add the supplied property to an instance properties object.  If the instance property object
-     * supplied is null, a new instance properties object is created.
-     *
-     * @param sourceName - name of caller
-     * @param properties - properties object to add property to - may be null.
-     * @param propertyName - name of property
-     * @param propertyValue - value of property
-     * @param methodName - calling method name
-     * @return instance properties object.
-     */
-    public InstanceProperties addBooleanPropertyToInstance(String             sourceName,
-                                                           InstanceProperties properties,
-                                                           String             propertyName,
-                                                           boolean            propertyValue,
-                                                           String             methodName)
-    {
-        InstanceProperties  resultingProperties;
-
-        if (properties == null)
-        {
-            resultingProperties = new InstanceProperties();
-        }
-        else
-        {
-            resultingProperties = properties;
-        }
-
-
-        PrimitivePropertyValue primitivePropertyValue = new PrimitivePropertyValue();
-
-        primitivePropertyValue.setPrimitiveDefCategory(PrimitiveDefCategory.OM_PRIMITIVE_TYPE_BOOLEAN);
-        primitivePropertyValue.setPrimitiveValue(propertyValue);
-
-        resultingProperties.setProperty(propertyName, primitivePropertyValue);
-
-        return resultingProperties;
-    }
-
-
-    /**
-     * Add the supplied property to an instance properties object.  If the instance property object
-     * supplied is null, a new instance properties object is created.
-     *
-     * @param sourceName - name of caller
-     * @param properties - properties object to add property to - may be null.
-     * @param propertyName - name of property
-     * @param ordinal - numeric value of property
-     * @param symbolicName - String value of property
-     * @param description - String description of property value
-     * @param methodName - calling method name
-     * @return instance properties object.
-     */
-    public InstanceProperties addEnumPropertyToInstance(String             sourceName,
-                                                        InstanceProperties properties,
-                                                        String             propertyName,
-                                                        int                ordinal,
-                                                        String             symbolicName,
-                                                        String             description,
-                                                        String             methodName)
-    {
-        InstanceProperties  resultingProperties;
-
-        if (properties == null)
-        {
-            resultingProperties = new InstanceProperties();
-        }
-        else
-        {
-            resultingProperties = properties;
-        }
-
-
-        EnumPropertyValue enumPropertyValue = new EnumPropertyValue();
-
-        enumPropertyValue.setOrdinal(ordinal);
-        enumPropertyValue.setSymbolicName(symbolicName);
-        enumPropertyValue.setDescription(description);
-
-        resultingProperties.setProperty(propertyName, enumPropertyValue);
-
-        return resultingProperties;
-    }
-
-
-    /**
-     * Throws a logic error exception when the repository helper is called with invalid parameters.
-     * Normally this means the repository helper methods have been called in the wrong order.
-     *
-     * @param sourceName - name of the calling repository or service
-     * @param originatingMethodName - method that called the repository validator
-     * @param localMethodName - local method that deleted the error
-     */
-    private void throwHelperLogicError(String     sourceName,
-                                       String     originatingMethodName,
-                                       String     localMethodName)
-    {
-        OMRSErrorCode errorCode = OMRSErrorCode.HELPER_LOGIC_ERROR;
-        String errorMessage     = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(sourceName,
-                                                                                                     localMethodName,
-                                                                                                     originatingMethodName);
-
-        throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                          this.getClass().getName(),
-                                          localMethodName,
-                                          errorMessage,
-                                          errorCode.getSystemAction(),
-                                          errorCode.getUserAction());
-    }
-
-
-    /**
-     * Throw a logic error exception if this object does not have a repository content manager.
-     * This would occur if if is being used in an environment where the OMRS has not been properly
-     * initialized.
-     *
-     * @param methodName - name of calling method.
-     */
-    private void validateRepositoryContentManager(String   methodName)
-    {
-        if (repositoryContentManager == null)
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.LOCAL_REPOSITORY_CONFIGURATION_ERROR;
-            String errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-}


[33/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Lineage.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Lineage.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Lineage.java
deleted file mode 100644
index adf97ea..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Lineage.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * Lineage shows the origin of the connected asset.  It covers:
- * <ul>
- *     <li>Design lineage - the known data movement and data stores that can supply data to this asset.</li>
- *     <li>Operational lineage - showing the jobs that ran to create this asset</li>
- * </ul>
- *
- * Currently lineage is not implemented in the ConnectedAssetProperties interface because more design work is needed.
- * This class is therefore a placeholder for lineage information.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Lineage extends PropertyBase
-{
-    /**
-     * Default constructor.
-     */
-    public Lineage()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor - - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the lineage clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param templateLineage - lineage object to copy.
-     */
-    public Lineage(Lineage   templateLineage)
-    {
-        super(templateLineage);
-
-        /*
-         * The open lineage design is still in progress so for the time being, this object does not do anything
-         * useful
-         */
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Location.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Location.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Location.java
deleted file mode 100644
index 8f4556a..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Location.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * Location describes where the asset is located.  The model allows a very flexible definition of location
- * that can be set up at different levels of granularity.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Location extends Referenceable
-{
-    /*
-     * Properties that make up the location of the asset.
-     */
-    private String displayName = null;
-    private String description = null;
-
-
-    /**
-     * Default constructor
-     */
-    public Location()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor
-     *
-     * @param templateLocation - template object to copy.
-     */
-    public Location(Location   templateLocation)
-    {
-        super(templateLocation);
-        if (templateLocation != null)
-        {
-            displayName = templateLocation.getDisplayName();
-            description = templateLocation.getDescription();
-        }
-    }
-
-
-    /**
-     * Returns the stored display name property for the location.
-     * If no display name is available then null is returned.
-     *
-     * @return displayName
-     */
-    public String getDisplayName()
-    {
-        return displayName;
-    }
-
-
-    /**
-     * Updates the display name property stored for the location.
-     * If a null is supplied it clears the display name.
-     *
-     * @param  newDisplayName - consumable name
-     */
-    public void setDisplayName(String  newDisplayName)
-    {
-        displayName = newDisplayName;
-    }
-
-
-    /**
-     * Returns the stored description property for the location.
-     * If no description is provided then null is returned.
-     *
-     * @return description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Updates the description property stored for the location.
-     * If a null is supplied it clears any saved description.
-     *
-     * @param  newDescription - description
-     */
-    public void setDescription(String  newDescription) { description = newDescription; }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/MapSchemaElement.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/MapSchemaElement.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/MapSchemaElement.java
deleted file mode 100644
index 2191318..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/MapSchemaElement.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * MapSchemaElement describes a schema element of type map.  It stores the type of schema element for the domain
- * (eg property name) for the map and the schema element for the range (eg property value) for the map.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class MapSchemaElement extends SchemaElement
-{
-    private   SchemaElement  mapFromElement = null;
-    private   SchemaElement  mapToElement = null;
-
-
-    /**
-     * Default constructor
-     */
-    public MapSchemaElement()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone Constructor - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the definitions clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param templateSchema - template object to copy.
-     */
-    public MapSchemaElement(MapSchemaElement templateSchema)
-    {
-        super(templateSchema);
-
-        if (templateSchema != null)
-        {
-            SchemaElement  templateMapFromElement = templateSchema.getMapFromElement();
-            SchemaElement  templateMapToElement = templateSchema.getMapToElement();
-
-            if (templateMapFromElement != null)
-            {
-                mapFromElement = templateMapFromElement.cloneSchemaElement();
-            }
-
-            if (templateMapToElement != null)
-            {
-                mapToElement = templateMapToElement.cloneSchemaElement();
-            }
-        }
-    }
-
-
-    /**
-     * Return the type of schema element that represents the key or property name for the map.
-     * This is also called the domain of the map.
-     *
-     * @return SchemaElement
-     */
-    public SchemaElement getMapFromElement()
-    {
-        return mapFromElement;
-    }
-
-
-    /**
-     * Set up the type of schema element that represents the key or property name for the map.
-     * This is also called the domain of the map.
-     *
-     * @param mapFromElement - SchemaElement
-     */
-    public void setMapFromElement(SchemaElement mapFromElement)
-    {
-        this.mapFromElement = mapFromElement;
-    }
-
-
-    /**
-     * Return the type of schema element that represents the property value for the map.
-     * This is also called the range of the map.
-     *
-     * @return SchemaElement
-     */
-    public SchemaElement getMapToElement()
-    {
-        return mapToElement;
-    }
-
-
-    /**
-     * Set up the type of schema element that represents the property value for the map.
-     * This is also called the range of the map.
-     *
-     * @param mapToElement - SchemaElement
-     */
-    public void setMapToElement(SchemaElement mapToElement)
-    {
-        this.mapToElement = mapToElement;
-    }
-
-
-    /**
-     * Returns a clone of this object as the abstract SchemaElement class.
-     *
-     * @return SchemaElement
-     */
-    @Override
-    public SchemaElement cloneSchemaElement()
-    {
-        return new MapSchemaElement(this);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Meaning.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Meaning.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Meaning.java
deleted file mode 100644
index 0988e70..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Meaning.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * Meaning is a cut-down summary of a glossary term to aid the asset consumer in understanding the content
- * of an asset.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Meaning extends Referenceable
-{
-    /*
-     * Attributes of a meaning object definition
-     */
-    private String      name = null;
-    private String      description = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public Meaning()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateMeaning - element to copy
-     */
-    public Meaning(Meaning templateMeaning)
-    {
-        super(templateMeaning);
-
-        if (templateMeaning != null)
-        {
-            /*
-             * Copy the values from the supplied meaning object.
-             */
-            name = templateMeaning.getName();
-            description = templateMeaning.getDescription();
-        }
-    }
-
-
-    /**
-     * Return the glossary term name.
-     *
-     * @return String name
-     */
-    public String getName()
-    {
-        return name;
-    }
-
-
-    /**
-     * Set up the name of the glossary term.
-     *
-     * @param name - String
-     */
-    public void setName(String name)
-    {
-        this.name = name;
-    }
-
-
-    /**
-     * Return the description of the glossary term.
-     *
-     * @return String description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Set up the description of the glossary term.
-     *
-     * @param description string
-     */
-    public void setDescription(String description)
-    {
-        this.description = description;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Note.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Note.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Note.java
deleted file mode 100644
index 6046da6..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Note.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.Date;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * Note defines the properties of a single note in a note log.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Note extends Referenceable
-{
-    /*
-     * Attributes of a Note
-     */
-    private String text = null;
-    private Date   lastUpdate = null;
-    private String user = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public Note()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateNote - note to copy
-     */
-    public Note(Note templateNote)
-    {
-        super(templateNote);
-
-        if (templateNote != null)
-        {
-            /*
-             * Copy the properties from the supplied note.
-             */
-            text = templateNote.getText();
-            user = templateNote.getUser();
-
-            Date templateLastUpdate = templateNote.getLastUpdate();
-            if (templateLastUpdate != null)
-            {
-                lastUpdate = new Date(templateLastUpdate.getTime());
-            }
-        }
-    }
-
-
-    /**
-     * Return the text of the note.
-     *
-     * @return String text
-     */
-    public String getText() { return text; }
-
-
-    /**
-     * Set up the text of the note.
-     *
-     * @param text - String
-     */
-    public void setText(String text) { this.text = text; }
-
-
-    /**
-     * Return the last time a change was made to this note.
-     *
-     * @return Date last update
-     */
-    public Date getLastUpdate()
-    {
-        if (lastUpdate == null)
-        {
-            return lastUpdate;
-        }
-        else
-        {
-            return new Date(lastUpdate.getTime());
-        }
-    }
-
-
-    /**
-     * Set up the last update data for the note.
-     *
-     * @param lastUpdate - Date
-     */
-    public void setLastUpdate(Date lastUpdate) { this.lastUpdate = lastUpdate; }
-
-
-    /**
-     * Return the user id of the person who created the like.  Null means the user id is not known.
-     *
-     * @return String - liking user
-     */
-    public String getUser() {
-        return user;
-    }
-
-
-    /**
-     * Set up the user id of the person who created the like. Null means the user id is not known.
-     *
-     * @param user - String - liking user
-     */
-    public void setUser(String user) {
-        this.user = user;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/NoteLog.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/NoteLog.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/NoteLog.java
deleted file mode 100644
index 8c1b34f..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/NoteLog.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * NoteLog manages a list of notes for an asset
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class NoteLog extends Referenceable
-{
-    /*
-     * Attributes of an note log
-     */
-    private String     displayName = null;
-    private String     description = null;
-    private List<Note> notes       = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public NoteLog()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateNotelog - note log to copy
-     */
-    public NoteLog(NoteLog templateNotelog)
-    {
-        super(templateNotelog);
-
-        if (templateNotelog != null)
-        {
-            /*
-             * Copy the values from the supplied template.
-             */
-            displayName = templateNotelog.getDisplayName();
-            description = templateNotelog.getDescription();
-
-            List<Note>     templateNotes = templateNotelog.getNotes();
-            if (templateNotes != null)
-            {
-                notes = new ArrayList<>(templateNotes);
-            }
-        }
-    }
-
-    /**
-     * Returns the stored display name property for the note log.
-     * If no display name is available then null is returned.
-     *
-     * @return displayName
-     */
-    public String getDisplayName()
-    {
-        return displayName;
-    }
-
-
-    /**
-     * Updates the display name property stored for the note log.
-     * If a null is supplied it clears the display name.
-     *
-     * @param  newDisplayName - consumable name
-     */
-    public void setDisplayName(String  newDisplayName)
-    {
-        displayName = newDisplayName;
-    }
-
-
-    /**
-     * Returns the stored description property for the note log.
-     * If no description is provided then null is returned.
-     *
-     * @return description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Updates the description property stored for the note log.
-     * If a null is supplied it clears any saved description.
-     *
-     * @param  newDescription - description
-     */
-    public void setDescription(String  newDescription) { description = newDescription; }
-
-
-    /**
-     * Return the list of notes defined for this note log.
-     *
-     * @return Notes - list of notes
-     */
-    public List<Note> getNotes()
-    {
-        if (notes == null)
-        {
-            return notes;
-        }
-        else
-        {
-            return new ArrayList<>(notes);
-        }
-    }
-
-    /**
-     * Set up the list of notes for this note log.
-     *
-     * @param notes - Notes list
-     */
-    public void setNotes(List<Note> notes) { this.notes = notes; }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/PrimitiveSchemaElement.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/PrimitiveSchemaElement.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/PrimitiveSchemaElement.java
deleted file mode 100644
index 7c8d9c2..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/PrimitiveSchemaElement.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * PrimitiveSchemaElement describes a schema element that has a primitive type.  This class stores which
- * type of primitive type it is an a default value if supplied.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class PrimitiveSchemaElement extends SchemaElement
-{
-    private  String     dataType = null;
-    private  String     defaultValue = null;
-
-    /**
-     * Defauly constructor
-     */
-    public PrimitiveSchemaElement()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone Constructor - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the definitions clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param templateSchemaElement - schema element to copy
-     */
-    public PrimitiveSchemaElement(PrimitiveSchemaElement templateSchemaElement)
-    {
-        super(templateSchemaElement);
-
-        if (templateSchemaElement != null)
-        {
-            dataType = templateSchemaElement.getDataType();
-            defaultValue = templateSchemaElement.getDefaultValue();
-        }
-    }
-
-
-    /**
-     * Return the data type for this element.  Null means unknown data type.
-     *
-     * @return String DataType
-     */
-    public String getDataType() { return dataType; }
-
-
-    /**
-     * Set up the name of the data type for this element.  Null means unknown data type.
-     *
-     * @param dataType - String DataType
-     */
-    public void setDataType(String dataType) { this.dataType = dataType; }
-
-
-    /**
-     * Return the default value for the element.  Null means no default value set up.
-     *
-     * @return String containing default value
-     */
-    public String getDefaultValue() { return defaultValue; }
-
-
-    /**
-     * Set up the default value for the element.  Null means no default value.
-     *
-     * @param defaultValue - String containing default value
-     */
-    public void setDefaultValue(String defaultValue) { this.defaultValue = defaultValue; }
-
-
-    /**
-     * Returns a clone of this object as the abstract SchemaElement class.
-     *
-     * @return PrimitiveSchemaElement object
-     */
-    @Override
-    public SchemaElement cloneSchemaElement()
-    {
-        return new PrimitiveSchemaElement(this);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/PropertyBase.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/PropertyBase.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/PropertyBase.java
deleted file mode 100644
index e2c6d7b..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/PropertyBase.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-import java.util.UUID;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-
-/**
- * This property header implements any common mechanisms that all property objects need.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public abstract class PropertyBase implements Serializable
-{
-    private static final long     serialVersionUID = 1L;
-    private static final int      hashCode = UUID.randomUUID().hashCode();
-
-
-    /**
-     * Typical Constructor
-     */
-    public PropertyBase()
-    {
-        /*
-         * Nothing to do.  This constructor is included so variables are added in this class at a later date
-         * without impacting the subclasses.
-         */
-    }
-
-
-    /**
-     * Copy/clone Constructor
-     *
-     * @param template - object being copied
-     */
-    public PropertyBase(PropertyBase template)
-    {
-        /*
-         * Nothing to do.  This constructor is included so variables are added in this class at a later date
-         * without impacting the subclasses.
-         */
-    }
-
-
-    /**
-     * Provide a common implementation of hashCode for all OCF properties objects.  The UUID is unique and
-     * is randomly assigned and so its hashCode is as good as anything to describe the hash code of the properties
-     * object.
-     */
-    public int hashCode()
-    {
-        return hashCode;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Rating.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Rating.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Rating.java
deleted file mode 100644
index 3eb44b6..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Rating.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * Stores information about a rating connected to an asset.  Ratings provide informal feedback on the quality of assets
- * and can be added at any time.
- *
- * Ratings have the userId of the person who added it, a star rating and an optional review comment.
- *
- * The content of the rating is a personal judgement (which is why the user's id is in the object)
- * and there is no formal review of the ratings.  However, they can be used as a basis for crowd-sourcing
- * feedback to asset owners.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Rating extends ElementHeader
-{
-    /*
-     * Attributes of a Rating
-     */
-    private StarRating starRating = null;
-    private String     review = null;
-    private String     user = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public Rating()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateRating - element to copy
-     */
-    public Rating(Rating templateRating)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(templateRating);
-
-        if (templateRating != null)
-        {
-            /*
-             * Copy the values from the supplied tag.
-             */
-            user = templateRating.getUser();
-            starRating = templateRating.getStarRating();
-            review = templateRating.getReview();
-        }
-    }
-
-
-    /**
-     * Return the user id of the person who created the rating.  Null means the user id is not known.
-     *
-     * @return String - user
-     */
-    public String getUser() {
-        return user;
-    }
-
-
-    /**
-     * Set up the user id of the person who created the rating. Null means the user id is not known.
-     *
-     * @param user - String - user id of person providing the rating
-     */
-    public void setUser(String user) {
-        this.user = user;
-    }
-
-
-    /**
-     * Return the stars for the rating.
-     *
-     * @return StarRating - starRating
-     */
-    public StarRating getStarRating() {
-        return starRating;
-    }
-
-
-    /**
-     * Set up the star value for the rating. Null means no rating is supplied
-     *
-     * @param starRating - StarRating enum
-     */
-    public void setStarRating(StarRating starRating) { this.starRating = starRating; }
-
-    /**
-     * Return the review comments - null means no review is available.
-     *
-     * @return String - review comments
-     */
-    public String getReview()
-    {
-        return review;
-    }
-
-
-    /**
-     * Set up the review comments - null means no review is available.
-     *
-     * @param review - String - review comments
-     */
-    public void setReview(String review) {
-        this.review = review;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Referenceable.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Referenceable.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Referenceable.java
deleted file mode 100644
index d38ffb6..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Referenceable.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * Many open metadata entities are referenceable.  It means that they have a qualified name and additional
- * properties.  In addition the Referenceable class adds support for the parent asset, guid, url and type
- * for the entity through extending ElementHeader.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Referenceable extends ElementHeader
-{
-    protected String                 qualifiedName = null;
-    protected AdditionalProperties   additionalProperties = null;
-    protected List<Meaning>          meanings = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public Referenceable()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateReferenceable - element to copy
-     */
-    public Referenceable(Referenceable templateReferenceable)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(templateReferenceable);
-
-        if (templateReferenceable != null)
-        {
-            /*
-             * Copy the qualified name from the supplied template.
-             */
-            qualifiedName = templateReferenceable.getQualifiedName();
-
-            /*
-             * Create a copy of the additional properties since the parent asset may have changed.
-             */
-            AdditionalProperties   templateAdditionalProperties = templateReferenceable.getAdditionalProperties();
-            if (templateAdditionalProperties != null)
-            {
-                additionalProperties = new AdditionalProperties(templateAdditionalProperties);
-            }
-
-
-            /*
-             * Create a copy of any glossary terms
-             */
-            List<Meaning>  templateMeanings = templateReferenceable.getMeanings();
-            if (templateMeanings != null)
-            {
-                meanings = new ArrayList<>(templateMeanings);
-            }
-        }
-    }
-
-
-    /**
-     * Returns the stored qualified name property for the metadata entity.
-     * If no qualified name is available then the empty string is returned.
-     *
-     * @return qualifiedName
-     */
-    public String getQualifiedName()
-    {
-        return qualifiedName;
-    }
-
-
-    /**
-     * Updates the qualified name property stored for the metadata entity.
-     * If a null is supplied it means no qualified name is available.
-     *
-     * @param  newQualifiedName - unique name
-     */
-    public void setQualifiedName(String  newQualifiedName) { qualifiedName = newQualifiedName; }
-
-
-    /**
-     * Return a copy of the additional properties.  Null means no additional properties are available.
-     *
-     * @return AdditionalProperties
-     */
-    public AdditionalProperties getAdditionalProperties()
-    {
-        if (additionalProperties == null)
-        {
-            return additionalProperties;
-        }
-        else
-        {
-            return new AdditionalProperties(additionalProperties);
-        }
-    }
-
-
-    /**
-     * Set up a new additional properties object.
-     *
-     * @param newAdditionalProperties - additional properties for the referenceable object.
-     */
-    public void setAdditionalProperties(AdditionalProperties newAdditionalProperties)
-    {
-        additionalProperties = newAdditionalProperties;
-    }
-
-
-    /**
-     * Return a list of the glossary terms attached to this referenceable object.  Null means no terms available.
-     *
-     * @return list of glossary terms (summary)
-     */
-    public List<Meaning> getMeanings()
-    {
-        if (meanings == null)
-        {
-            return meanings;
-        }
-        else
-        {
-            return new ArrayList<>(meanings);
-        }
-    }
-
-    /**
-     * Set up a list of the glossary terms attached to this referenceable object.  Null means no terms available.
-     *
-     * @param meanings - list of glossary terms (summary)
-     */
-    public void setMeanings(List<Meaning> meanings) { this.meanings = meanings; }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedAsset.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedAsset.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedAsset.java
deleted file mode 100644
index ccc5028..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedAsset.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * RelatedAsset describes assets that are related to this asset.  For example, if the asset is a data store, the
- * related assets could be its supported data sets.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class RelatedAsset extends Referenceable
-{
-    /*
-     * Properties that make up the summary properties of the related asset.
-     */
-    private String displayName = null;
-    private String description = null;
-    private String owner = null;
-
-
-    /**
-     * Default constructor
-     */
-    public RelatedAsset()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor
-     *
-     * @param templateRelatedAsset - template object to copy.
-     */
-    public RelatedAsset(RelatedAsset templateRelatedAsset)
-    {
-        super(templateRelatedAsset);
-        if (templateRelatedAsset != null)
-        {
-            displayName = templateRelatedAsset.getDisplayName();
-            description = templateRelatedAsset.getDescription();
-            owner = templateRelatedAsset.getOwner();
-        }
-    }
-
-
-    /**
-     * Returns the stored display name property for the related asset.
-     * If no display name is available then null is returned.
-     *
-     * @return displayName
-     */
-    public String getDisplayName()
-    {
-        return displayName;
-    }
-
-
-    /**
-     * Updates the display name property stored for the related asset.
-     * If a null is supplied it clears the display name.
-     *
-     * @param  newDisplayName - consumable name
-     */
-    public void setDisplayName(String  newDisplayName)
-    {
-        displayName = newDisplayName;
-    }
-
-
-    /**
-     * Returns the stored description property for the related asset.
-     * If no description is provided then null is returned.
-     *
-     * @return description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Updates the description property stored for the related asset.
-     * If a null is supplied it clears any saved description.
-     *
-     * @param  newDescription - description
-     */
-    public void setDescription(String  newDescription) { description = newDescription; }
-
-
-    /**
-     * Returns the details of the owner for this related asset.
-     *
-     * @return String owner
-     */
-    public String getOwner() { return owner; }
-
-
-    /**
-     * Set up the owner details for this related asset.  This could be the name of the owner, website, userid ...
-     * If null is supplied, it clears any saved owner details.
-     *
-     * @param owner - String
-     */
-    public void setOwner(String owner) { this.owner = owner; }
-
-
-    /**
-     * Return the detailed properties for a related asset.
-     *
-     * @return RelatedAssetProperties
-     */
-    public RelatedAssetProperties getRelatedAssetProperties()
-    {
-        return new RelatedAssetProperties(this);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedAssetProperties.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedAssetProperties.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedAssetProperties.java
deleted file mode 100644
index ad6a7bc..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedAssetProperties.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.omas.connectedasset.ffdc.exceptions.PropertyServerException;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-
-/**
- * RelatedAssetProperties returns detailed information about an asset that is related to a connected asset.
- *
- * It is a generic interface for all types of open metadata assets.  However, it assumes the asset's metadata model
- * inherits from <b>Asset</b> (see model 0010 in Area 0).
- *
- * The RelatedAssetProperties returns metadata about the asset at three levels of detail:
- * <ul>
- *     <li><b>assetSummary</b> - used for displaying details of the asset in summary lists or hover text</li>
- *     <li><b>assetDetail</b> - used to display all of the information known about the asset with summaries
- *     of the relationships to other metadata entities</li>
- *     <li><b>assetUniverse</b> - used to define the broader context for the asset</li>
- * </ul>
- *
- * RelatedAssetProperties is a base class for the asset information that returns null,
- * for the asset's properties.  Metadata repository implementations extend this class to add their
- * implementation of the refresh() method that calls to the metadata repository to populate the metadata properties.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class RelatedAssetProperties extends PropertyBase
-{
-    /*
-     * AssetUniverse extends AssetDetails which extends AssetSummary.  The interaction with the metadata repository
-     * pulls the asset universe in one single network interaction and the caller can then explore the metadata
-     * property by property without incurring many network interactions (unless there are too many instances
-     * of a particular type of property and one of the iterators is forced to use paging).
-     *
-     * If null is returned, the caller is not linked to a metadata repository.
-     */
-    protected  AssetUniverse     assetProperties = null;
-    protected  AssetDescriptor   connectedAsset = null;
-    protected  RelatedAsset      relatedAsset = null;
-
-
-    /**
-     * Default constructor
-     */
-    public RelatedAssetProperties()
-    {
-    }
-
-    /**
-     * Typical constructor.
-     *
-     * @param relatedAsset - asset to extract the full set of properties.
-     */
-    public RelatedAssetProperties(RelatedAsset  relatedAsset)
-    {
-        this.relatedAsset = relatedAsset;
-    }
-
-
-    /**
-     * Copy/clone constructor*
-     *
-     * @param templateProperties - template to copy
-     */
-    public RelatedAssetProperties(RelatedAssetProperties templateProperties)
-    {
-        if (templateProperties != null)
-        {
-            AssetUniverse   templateAssetUniverse = templateProperties.getAssetUniverse();
-            if (templateAssetUniverse != null)
-            {
-                assetProperties = new AssetUniverse(templateAssetUniverse);
-                connectedAsset = templateProperties.connectedAsset;
-                relatedAsset = templateProperties.relatedAsset;
-            }
-        }
-    }
-
-
-    /**
-     * Returns the summary information organized in the assetSummary structure.
-     *
-     * @return AssetSummary - summary object
-     */
-    public AssetSummary getAssetSummary() { return assetProperties; }
-
-
-
-    /**
-     * Returns detailed information about the asset organized in the assetDetail structure.
-     *
-     * @return AssetDetail - detail object
-     */
-    public AssetDetail getAssetDetail() { return assetProperties; }
-
-
-    /**
-     * Returns all of the detail of the asset and information connected to it in organized in the assetUniverse
-     * structure.
-     *
-     * @return AssetUniverse - universe object
-     */
-    public AssetUniverse getAssetUniverse() { return assetProperties; }
-
-
-    /**
-     * Request the values in the RelatedAssetProperties are refreshed with the current values from the
-     * metadata repository.
-     *
-     * @throws PropertyServerException - there is a problem connecting to the server to retrieve metadata.
-     */
-    public void refresh() throws PropertyServerException
-    {
-        /*
-         * Do nothing - sub classes will override this method.
-         */
-    }
-}
-

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedMediaReference.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedMediaReference.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedMediaReference.java
deleted file mode 100644
index c547390..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedMediaReference.java
+++ /dev/null
@@ -1,253 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * RelatedMediaReference stores information about an link to an external media file that
- * is relevant to this asset.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class RelatedMediaReference extends Referenceable
-{
-    /*
-     * Attributes of a related media reference
-     */
-    private String                       mediaId = null;
-    private String                       linkDescription = null;
-    private String                       displayName = null;
-    private String                       uri = null;
-    private String                       resourceDescription = null;
-    private String                       version = null;
-    private String                       organization = null;
-    private RelatedMediaType             mediaType = null;
-    private List<RelatedMediaUsage> mediaUsageList = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public RelatedMediaReference()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateRelatedMediaReference - element to copy
-     */
-    public RelatedMediaReference(RelatedMediaReference templateRelatedMediaReference)
-    {
-        /*
-         * Initialize the super class.
-         */
-        super(templateRelatedMediaReference);
-
-        if (templateRelatedMediaReference != null)
-        {
-            /*
-             * Copy the values from the supplied template.
-             */
-            mediaId = templateRelatedMediaReference.getMediaId();
-            linkDescription = templateRelatedMediaReference.getLinkDescription();
-            displayName = templateRelatedMediaReference.getDisplayName();
-            uri = templateRelatedMediaReference.getURI();
-            resourceDescription = templateRelatedMediaReference.getResourceDescription();
-            version = templateRelatedMediaReference.getVersion();
-            organization = templateRelatedMediaReference.getOrganization();
-            mediaType = templateRelatedMediaReference.getMediaType();
-
-            List<RelatedMediaUsage> templateMediaUsageList = templateRelatedMediaReference.getMediaUsageList();
-            if (templateMediaUsageList != null)
-            {
-                mediaUsageList = new ArrayList<RelatedMediaUsage>(templateMediaUsageList);
-            }
-        }
-    }
-
-
-    /**
-     * Return the identifier given to this reference (with respect to this asset).
-     *
-     * @return String mediaId
-     */
-    public String getMediaId() { return mediaId; }
-
-
-    /**
-     * Set up the reference identifier for this asset's related media.
-     *
-     * @param mediaId String
-     */
-    public void setReferenceId(String mediaId) { this.mediaId = mediaId; }
-
-
-    /**
-     * Return the description of the reference (with respect to this asset).
-     *
-     * @return String link description.
-     */
-    public String getLinkDescription() { return linkDescription; }
-
-
-    /**
-     * Set up the description of the reference (with respect to this asset).
-     *
-     * @param linkDescription - String
-     */
-    public void setLinkDescription(String linkDescription) { this.linkDescription = linkDescription; }
-
-
-    /**
-     * Return the display name of this media reference.
-     *
-     * @return String display name.
-     */
-    public String getDisplayName() { return displayName; }
-
-
-    /**
-     * Set up the display name for this media reference.
-     *
-     * @param displayName - String
-     */
-    public void setDisplayName(String displayName) { this.displayName = displayName; }
-
-
-    /**
-     * Return the URI used to retrieve the resource for this media reference.
-     *
-     * @return String URI
-     */
-    public String getURI() { return uri; }
-
-
-    /**
-     * Set up the URI used to retrieve the resource for this media reference.
-     *
-     * @param uri - String
-     */
-    public void setURI(String uri) { this.uri = uri; }
-
-
-    /**
-     * Return the description of this external media.
-     *
-     * @return String resource description
-     */
-    public String getResourceDescription() { return resourceDescription; }
-
-
-    /**
-     * Set up the description of this external media.
-     *
-     * @param resourceDescription String
-     */
-    public void setResourceDescription(String resourceDescription) { this.resourceDescription = resourceDescription; }
-
-
-    /**
-     * Return the version of the resource that this media reference represents.
-     *
-     * @return String version
-     */
-    public String getVersion() { return version; }
-
-
-    /**
-     * Set up the version of the resource that this external reference represents.
-     *
-     * @param version - String
-     */
-    public void setVersion(String version) { this.version = version; }
-
-
-    /**
-     * Return the name of the organization that owns the resource that this external reference represents.
-     *
-     * @return String organization name
-     */
-    public String getOrganization() { return organization; }
-
-
-    /**
-     * Set up the name of the organization that owns the resource that this external reference represents.
-     *
-     * @param organization - String
-     */
-    public void setOrganization(String organization) { this.organization = organization; }
-
-
-    /**
-     * Return the type of media referenced.
-     *
-     * @return RelatedMediaType
-     */
-    public RelatedMediaType getMediaType() { return mediaType; }
-
-
-    /**
-     * Set up the media type.
-     *
-     * @param mediaType - RelatedMediaType
-     */
-    public void setMediaType(RelatedMediaType mediaType) { this.mediaType = mediaType; }
-
-
-    /**
-     * Return the list of recommended usage for the related media.  Null means no usage guidance is available.
-     *
-     * @return List of RelatedMediaUsage
-     */
-    public List<RelatedMediaUsage> getMediaUsageList()
-    {
-        if (mediaUsageList != null)
-        {
-            return mediaUsageList;
-        }
-        else
-        {
-            return new ArrayList<RelatedMediaUsage>(mediaUsageList);
-        }
-    }
-
-
-    /**
-     * Set up the media usage list.
-     *
-     * @param mediaUsageList - List of RelatedMediaUsage
-     */
-    public void setMediaUsageList(List<RelatedMediaUsage> mediaUsageList)
-    {
-        this.mediaUsageList = new ArrayList<RelatedMediaUsage>(mediaUsageList);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedMediaType.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedMediaType.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedMediaType.java
deleted file mode 100644
index 7deee26..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedMediaType.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The RelatedMediaType defines the type of resource referenced in a related media reference.
- * <ul>
- *     <li>Image</li>
- *     <li>Audio</li>
- *     <li>Document</li>
- *     <li>Video</li>
- *     <li>Other</li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum RelatedMediaType implements Serializable
-{
-    IMAGE(0, "Image"),
-    AUDIO(1, "Audio"),
-    DOCUMENT(2, "Document"),
-    VIDEO(3, "Video"),
-    OTHER(99, "Other");
-
-    private static final long     serialVersionUID = 1L;
-
-    private int            mediaTypeCode;
-    private String         mediaTypeName;
-
-
-    /**
-     * Typical Constructor
-     */
-    RelatedMediaType(int     mediaTypeCode, String   mediaTypeName)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.mediaTypeCode = mediaTypeCode;
-        this.mediaTypeName = mediaTypeName;
-
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - media type code
-     */
-    public int getMediaUsageCode()
-    {
-        return mediaTypeCode;
-    }
-
-
-    /**
-     * Return the default name for this enum instance.
-     *
-     * @return String - default name
-     */
-    public String getMediaUsageName()
-    {
-        return mediaTypeName;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedMediaUsage.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedMediaUsage.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedMediaUsage.java
deleted file mode 100644
index a429416..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/RelatedMediaUsage.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The RelatedMediaUsage defines how a related media reference can be used in conjunction with the asset properties.
- * These usage options are not mutually exclusive.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum RelatedMediaUsage implements Serializable
-{
-    ICON(0, "Icon", "Provides a small image to represent the asset in tree views and graphs."),
-    THUMBNAIL(1, "Thumbnail", "Provides a small image about the asset that can be used in lists."),
-    ILLUSTRATION(2, "Illustration", "Illustrates how the asset works or what it contains. It is complementary to the asset's description."),
-    USAGE_GUIDANCE(3, "Usage Guidance", "Provides guidance to a person on how to use the asset."),
-    OTHER(99, "Other", "Another usage.");
-
-    private static final long     serialVersionUID = 1L;
-
-    private int            mediaUsageCode;
-    private String         mediaUsageName;
-    private String         mediaUsageDescription;
-
-
-    /**
-     * Typical Constructor
-     */
-    RelatedMediaUsage(int     mediaUsageCode, String   mediaUsageName, String   mediaUsageDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.mediaUsageCode = mediaUsageCode;
-        this.mediaUsageName = mediaUsageName;
-        this.mediaUsageDescription = mediaUsageDescription;
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - media usage code
-     */
-    public int getMediaUsageCode()
-    {
-        return mediaUsageCode;
-    }
-
-
-    /**
-     * Return the default name for this enum instance.
-     *
-     * @return String - default name
-     */
-    public String getMediaUsageName()
-    {
-        return mediaUsageName;
-    }
-
-
-    /**
-     * Return the default description for the media usage pattern for this enum instance.
-     *
-     * @return String - default description
-     */
-    public String getMediaUsageDescription()
-    {
-        return mediaUsageDescription;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Schema.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Schema.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Schema.java
deleted file mode 100644
index 723e51b..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Schema.java
+++ /dev/null
@@ -1,218 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The Schema object provides information about how the asset structures the data it supports.  Schemas are typically
- * described as nested structures of linked schema elements.  Schemas can also be reused in other schemas.
- *
- * The schema object can be used to represent a Struct, Array, Set or Map.
- * <ul>
- *     <li>
- *         A Struct has an ordered list of attributes - the position of an attribute is set up as one of its properties.
- *     </li>
- *     <li>
- *         An Array has one schema attribute and a maximum size plus element count.
- *     </li>
- *     <li>
- *         A Set also has one schema attribute and a maximum size plus element count.
- *     </li>
- *     <li>
- *         A Map is a Set of MapSchemaElements
- *     </li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Schema extends SchemaElement
-{
-    public enum  SchemaType{ UNKNOWN, STRUCT, ARRAY, SET};
-
-    /*
-     * Properties specific to a Schema
-     */
-    SchemaType            schemaType       = SchemaType.UNKNOWN;
-    List<SchemaAttribute> schemaAttributes = null;
-    int                   maximumElements  = 0;
-    List<SchemaLink>      schemaLinks      = null;
-
-
-    /**
-     * Default constructor
-     */
-    public Schema()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone Constructor - the parentAsset is passed separately to the template because it is also
-     * likely to be being cloned in the same operation and we want the definitions clone to point to the
-     * asset clone and not the original asset.
-     *
-     * @param templateSchema - template object to copy.
-     */
-    public Schema(Schema templateSchema)
-    {
-        super(templateSchema);
-
-        if (templateSchema != null)
-        {
-            List<SchemaAttribute>          templateSchemaAttributes = templateSchema.getSchemaAttributes();
-
-            if (templateSchemaAttributes != null)
-            {
-                schemaAttributes = new ArrayList<>(templateSchemaAttributes);
-            }
-            schemaType  = templateSchema.getSchemaType();
-            maximumElements = templateSchema.getMaximumElements();
-
-            List<SchemaLink>     templateSchemaLinks = templateSchema.getSchemaLinks();
-
-            if (templateSchemaLinks != null)
-            {
-                schemaLinks = new ArrayList<>(templateSchemaLinks);
-            }
-        }
-    }
-
-
-    /**
-     * Return the type of the schema.
-     *
-     * @return SchemaType
-     */
-    public SchemaType getSchemaType() { return schemaType; }
-
-
-    /**
-     * Set up the type of the schema.
-     *
-     * @param schemaType - Struct, Array or Set
-     */
-    public void setSchemaType(SchemaType schemaType) { this.schemaType = schemaType; }
-
-
-    /**
-     * Return the list of schema attributes in this schema.
-     *
-     * @return SchemaAttributes
-     */
-    public List<SchemaAttribute> getSchemaAttributes()
-    {
-        if (schemaAttributes == null)
-        {
-            return schemaAttributes;
-        }
-        else
-        {
-            return new ArrayList<>(schemaAttributes);
-        }
-    }
-
-
-    /**
-     * Set up the list of schema attributes in this schema.
-     *
-     * @param schemaAttributes - list of attributes
-     */
-    public void setSchemaAttributes(List<SchemaAttribute> schemaAttributes) { this.schemaAttributes = schemaAttributes; }
-
-
-    /**
-     * Return the maximum elements that can be stored in this schema.  This is set up by the caller.
-     * Zero means not bounded.  For a STRUCT the max elements are the number of elements in
-     * the structure.
-     *
-     * @return int maximum number of elements
-     */
-    public int getMaximumElements()
-    {
-        if (schemaType == SchemaType.STRUCT)
-        {
-            maximumElements = schemaAttributes.size();
-        }
-
-        return maximumElements;
-    }
-
-
-    /**
-     * Set up the maximum elements that can be stored in this schema.  This is set up by the caller.
-     * Zero means not bounded.  For a STRUCT the max elements are the number of elements in
-     * the structure.
-     *
-     * @param maximumElements - int maximum number of elements
-     */
-    public void setMaximumElements(int maximumElements) { this.maximumElements = maximumElements; }
-
-
-    /**
-     * Return a list of any links that exist between the schema attributes of this schema (or others).
-     * These links are typically used for network type schemas such as a grpah schema - or may be used to show
-     * linkage to an element in another schema.
-     *
-     * @return SchemaLinks - list of linked schema attributes
-     */
-    public List<SchemaLink> getSchemaLinks()
-    {
-        if (schemaLinks == null)
-        {
-            return schemaLinks;
-        }
-        else
-        {
-            return new ArrayList<>(schemaLinks);
-        }
-    }
-
-
-    /**
-     * Set up a list of any links that exist between the schema attributes of this schema (or others).
-     * These links are typically used for network type schemas such as a graph schema - or may be used to show
-     * linkage to an element in another schema.
-     *
-     * @param schemaLinks - list of linked schema attributes
-     */
-    public void setSchemaLinks(List<SchemaLink> schemaLinks) { this.schemaLinks = schemaLinks; }
-
-    /**
-     * Returns a clone of this object as the abstract SchemaElement class.
-     *
-     * @return a copy of this schema as a SchemaElement
-     */
-    @Override
-    public SchemaElement cloneSchemaElement()
-    {
-        return new Schema(this);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaAttribute.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaAttribute.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaAttribute.java
deleted file mode 100644
index c151edf..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/SchemaAttribute.java
+++ /dev/null
@@ -1,182 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * <p>
- *     SchemaAttribute describes a single attribute within a schema.  The attribute has a name, order in the
- *     schema and cardinality.
- *     Its type is another SchemaElement (either Schema or PrimitiveSchemaElement).
- * </p>
- * <p>
- *     If it is a PrimitiveSchemaElement it may have an override for the default value within.
- * </p>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class SchemaAttribute extends PropertyBase
-{
-    String        attributeName        = null;
-    int           elementPosition      = 0;
-    String        cardinality          = null;
-    String        defaultValueOverride = null;
-    SchemaElement attributeType        = null;
-
-
-    /**
-     * Default Constructor - sets attribute to null.
-     */
-    public SchemaAttribute()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param template - template schema attribute to copy.
-     */
-    public SchemaAttribute(SchemaAttribute   template)
-    {
-        super(template);
-
-        if (template != null)
-        {
-            attributeName = template.getAttributeName();
-            elementPosition = template.getElementPosition();
-            cardinality = template.getCardinality();
-            defaultValueOverride = template.getDefaultValueOverride();
-
-            SchemaElement  templateAttributeType = template.getAttributeType();
-            if (templateAttributeType != null)
-            {
-                /*
-                 * SchemaElement is an abstract class with a placeholder method to clone an object
-                 * of its sub-class.  When cloneSchemaElement() is called, the implementation in the
-                 * sub-class is called.
-                 */
-                attributeType = templateAttributeType.cloneSchemaElement();
-            }
-        }
-    }
-
-
-    /**
-     * Return the name of this schema attribute.
-     *
-     * @return String attribute name
-     */
-    public String getAttributeName() { return attributeName; }
-
-
-    /**
-     * Set up the name of this attribute.
-     *
-     * @param attributeName - String
-     */
-    public void setAttributeName(String attributeName) { this.attributeName = attributeName; }
-
-
-    /**
-     * Return the position of this schema attribute in its parent schema.
-     *
-     * @return int position in schema - 0 means first
-     */
-    public int getElementPosition() { return elementPosition; }
-
-
-    /**
-     * Set up the position of this schema attribute in its parent schema.
-     *
-     * @param elementPosition - int position in schema - 0 means first
-     */
-    public void setElementPosition(int elementPosition) { this.elementPosition = elementPosition; }
-
-
-    /**
-     * Return the cardinality defined for this schema attribute.
-     *
-     * @return String cardinality defined for this schema attribute.
-     */
-    public String getCardinality() { return cardinality; }
-
-
-    /**
-     * Set up the cardinality defined for this schema attribute.
-     *
-     * @param cardinality - String cardinality defined for this schema attribute.
-     */
-    public void setCardinality(String cardinality) { this.cardinality = cardinality; }
-
-
-    /**
-     * Return any default value for this attribute that would override the default defined in the
-     * schema element for this attribute's type (note only used is type is primitive).
-     *
-     * @return String default value override
-     */
-    public String getDefaultValueOverride() { return defaultValueOverride; }
-
-
-    /**
-     * Set up any default value for this attribute that would override the default defined in the
-     * schema element for this attribute's type (note only used is type is primitive).
-     *
-     * @param defaultValueOverride - String default value override
-     */
-    public void setDefaultValueOverride(String defaultValueOverride)
-    {
-        this.defaultValueOverride = defaultValueOverride;
-    }
-
-
-    /**
-     * Return the SchemaElement that relates to the type of this attribute.
-     *
-     * @return SchemaElement
-     */
-    public SchemaElement getAttributeType()
-    {
-        if (attributeType == null)
-        {
-            return attributeType;
-        }
-        else
-        {
-            return attributeType.cloneSchemaElement();
-        }
-    }
-
-
-    /**
-     * Set up the SchemaElement that relates to the type of this attribute.
-     *
-     * @param attributeType SchemaElement
-     */
-    public void setAttributeType(SchemaElement attributeType) { this.attributeType = attributeType; }
-}
\ No newline at end of file


[50/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/ConnectionCheckedException.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/ConnectionCheckedException.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/ConnectionCheckedException.java
deleted file mode 100644
index ef28352..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/ConnectionCheckedException.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.ffdc;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * ConnectionCheckedException provides a checked exception for reporting errors found in connection objects.
- * Typically these errors are configuration errors that can be fixed by an administrator or power user.
- * The connection object has a complex structure and the aim of this exception, in conjunction with
- * OCFErrorCode, is to identify exactly what is wrong with the contents of the connection object
- * and the consequences of this error.
- */
-public class ConnectionCheckedException extends OCFCheckedExceptionBase
-{
-    private static final Logger log = LoggerFactory.getLogger(ConnectionCheckedException.class);
-
-    /**
-     * This is the typical constructor for creating a ConnectionCheckedException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public ConnectionCheckedException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(httpCode + ", " + className + ", " + actionDescription);
-        }
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * ConnectionCheckedException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode code to use across a REST interface
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     * @param caughtError the exception/error that caused this exception to be raised
-     */
-    public ConnectionCheckedException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(httpCode + ", " + className + ", " + actionDescription + ", " + caughtError.toString());
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/ConnectorCheckedException.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/ConnectorCheckedException.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/ConnectorCheckedException.java
deleted file mode 100644
index d45e944..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/ConnectorCheckedException.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.ffdc;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * ConnectorCheckedException provides a checked exception for reporting errors found when using OCF connectors.
- * Typically these errors are either configuration or operational errors that can be fixed by an administrator
- * or power user.  However, there may be the odd bug that surfaces here. The OCFErrorCode can be used with
- * this exception to populate it with standard messages.  Otherwise messages defined uniquely for a
- * ConnectorProvider/Connector implementation can be used.  The aim is to be able to uniquely identify the cause
- * and remedy for the error.
- */
-public class ConnectorCheckedException extends OCFCheckedExceptionBase
-{
-    private static final Logger log = LoggerFactory.getLogger(ConnectorCheckedException.class);
-
-    /**
-     * This is the typical constructor used for creating a ConnectorCheckedException.
-     *
-     * @param httpCode http response code to use if this exception flows over a REST call
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage description of error
-     * @param systemAction actions of the system as a result of the error
-     * @param userAction instructions for correcting the error
-     */
-    public ConnectorCheckedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(httpCode + ", " + className + ", " + actionDescription);
-        }
-    }
-
-
-    /**
-     * This is the constructor used for creating a ConnectorCheckedException in response to a previous exception.
-     *
-     * @param httpCode http response code to use if this exception flows over a REST call
-     * @param className name of class reporting error
-     * @param actionDescription description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     */
-    public ConnectorCheckedException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(httpCode + ", " + className + ", " + actionDescription + ", " + caughtError.toString());
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/OCFCheckedExceptionBase.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/OCFCheckedExceptionBase.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/OCFCheckedExceptionBase.java
deleted file mode 100644
index bf0e2c2..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/OCFCheckedExceptionBase.java
+++ /dev/null
@@ -1,178 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.ffdc;
-
-
-import java.util.UUID;
-
-/**
- * OCFCheckedExceptionBase provides a checked exception for reporting errors found when using OCF connectors.
- * Typically these errors are either configuration or operational errors that can be fixed by an administrator
- * or power user.  However, there may be the odd bug that surfaces here. The OCFErrorCode can be used with
- * this exception to populate it with standard messages.  Otherwise messages defined uniquely for a
- * ConnectorProvider/Connector implementation can be used.  The aim is to be able to uniquely identify the cause
- * and remedy for the error.
- */
-public class OCFCheckedExceptionBase extends Exception
-{
-    private static final int      hashCode = UUID.randomUUID().hashCode();
-
-    /*
-     * These default values are only seen if this exception is initialized using one of its superclass constructors.
-     */
-    private int       reportedHTTPCode = 500;
-    private String    reportingClassName = "<Unknown>";
-    private String    reportingActionDescription = "<Unknown>";
-    private String    reportedErrorMessage = "<Unknown>";
-    private String    reportedSystemAction = "<Unknown>";
-    private String    reportedUserAction = "<Unknown>";
-    private Throwable reportedCaughtException = null;
-
-
-
-    /**
-     * This is the typical constructor used for creating an OCFCheckedException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public OCFCheckedExceptionBase(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(errorMessage);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-    }
-
-
-    /**
-     * This is the constructor used for creating an OCFCheckedException when an unexpected error has been caught.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - previous error causing this exception
-     */
-    public OCFCheckedExceptionBase(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(errorMessage, caughtError);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtException = caughtError;
-    }
-
-
-    /**
-     * Return the HTTP response code to use with this exception.
-     *
-     * @return reportedHTTPCode
-     */
-    public int getReportedHTTPCode()
-    {
-        return reportedHTTPCode;
-    }
-
-    /**
-     * The class that created this exception.
-     *
-     * @return reportingClassName
-     */
-    public String getReportingClassName()
-    {
-        return reportingClassName;
-    }
-
-
-    /**
-     * The type of request that the class was performing when the condition occurred that resulted in this
-     * exception.
-     *
-     * @return reportingActionDescription
-     */
-    public String getReportingActionDescription()
-    {
-        return reportingActionDescription;
-    }
-
-
-    /**
-     * A formatted short description of the cause of the condition that resulted in this exception.
-     *
-     * @return reportedErrorMessage
-     */
-    public String getErrorMessage()
-    {
-        return reportedErrorMessage;
-    }
-
-
-    /**
-     * A description of the action that the system took as a result of the error condition.
-     *
-     * @return reportedSystemAction
-     */
-    public String getReportedSystemAction()
-    {
-        return reportedSystemAction;
-    }
-
-
-    /**
-     * A description of the action necessary to correct the error.
-     *
-     * @return reportedUserAction
-     */
-    public String getReportedUserAction()
-    {
-        return reportedUserAction;
-    }
-
-
-    /**
-     * An exception that was caught and wrapped by this exception.  If a null is returned, then this exception is
-     * newly created and not the result of a previous exception.
-     *
-     * @return reportedCaughtException
-     */
-    public Throwable getReportedCaughtException() { return reportedCaughtException; }
-
-
-    /**
-     * Provide a common implementation of hashCode for all OCF properties objects.  The UUID is unique and
-     * is randomly assigned and so its hashCode is as good as anything to describe the hash code of the properties
-     * object.
-     */
-    public int hashCode()
-    {
-        return hashCode;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/OCFErrorCode.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/OCFErrorCode.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/OCFErrorCode.java
deleted file mode 100644
index e6fad57..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/OCFErrorCode.java
+++ /dev/null
@@ -1,270 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.ffdc;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.text.MessageFormat;
-import java.util.Arrays;
-
-/**
- * The OCF error code is used to define first failure data capture (FFDC) for errors that occur when working with
- * OCF Connectors.  It is used in conjunction with all OCF Exceptions, both Checked and Runtime (unchecked).
- *
- * The 5 fields in the enum are:
- * <ul>
- *     <li>HTTP Error Code - for translating between REST and JAVA - Typically the numbers used are:</li>
- *     <li><ul>
- *         <li>500 - internal error</li>
- *         <li>400 - invalid parameters</li>
- *         <li>404 - not found</li>
- *         <li>409 - data conflict errors - eg item already defined</li>
- *     </ul></li>
- *     <li>Error Message Id - to uniquely identify the message</li>
- *     <li>Error Message Text - includes placeholder to allow additional values to be captured</li>
- *     <li>SystemAction - describes the result of the error</li>
- *     <li>UserAction - describes how a user should correct the error</li>
- * </ul>
- */
-public enum OCFErrorCode
-{
-    NULL_CONNECTION(400, "OCF-CONNECTION-400-001 ",
-            "Null connection object passed on request for new connector instance",
-            "The system is unable to create the requested connector instance without the connection information that describes which type of connector is required.",
-            "Recode call to system to include a correctly formatted connection object and retry the request."),
-    UNNAMED_CONNECTION(400, "OCF-CONNECTION-400-002 ",
-            "Unnamed connection object passed to requested action {0}",
-            "The system is unable to perform the requested action without a connection name.",
-            "Update connection configuration to include a value for at least one of the following name properties: qualifiedName, displayName, guid. Then retry the request."),
-    NULL_CONNECTOR_TYPE(400, "OCF-CONNECTION-400-003 ",
-            "Null connectorType property passed in connection {0}",
-            "The system is unable to create the requested connector instance without information on the type of connection required.",
-            "Update the connection configuration to include a valid connectorType definition.  Then retry the request."),
-    NULL_CONNECTOR_PROVIDER(400, "OCF-CONNECTION-400-004 ",
-            "Null Connector Provider passed in connection {0}",
-            "The system is unable to create the requested connector instance without information on the type of connection required.",
-            "Update the connection configuration to include a valid Java class name for the connector provider in the connectorProviderClassName property of the connection's connectorType. Then retry the request."),
-    UNKNOWN_CONNECTOR_PROVIDER(400, "OCF-CONNECTION-400-005 ",
-            "Unknown Connector Provider class {0} passed in connection {1}",
-            "The system is unable to create the requested connector instance because the Connector Provider's class is not known to the JVM.  This may be because the Connector Provider's jar is not installed in the local JVM or the wrong Java class name has been configured in the connection. ",
-            "Verify that the Connector Provider and Connector jar files are properly configured in the process.  Update the connection configuration to include a valid Java class name for the connector provider in the connectorProviderClassName property of the connection's connectorType. Then retry the request."),
-    NOT_CONNECTOR_PROVIDER(400, "OCF-CONNECTION-400-006 ",
-            "Class {0} passed in connection {1} is not a Connector Provider",
-            "The system is unable to create the requested connector instance because the Connector Provider's class does not implement org.apache.atlas.ocf.ConnectorProvider. ",
-            "Update the connection configuration to include a valid Java class name for the connector provider in the connectorProviderClassName property of the connection's connectorType. Then retry the request."),
-    INCOMPLETE_CONNECTOR_PROVIDER(400, "OCF-CONNECTION-400-007 ",
-            "Unable to load Connector Provider class {0} passed in connection {1}",
-            "The system is unable to create the requested connector instance because the Connector Provider's class is failing to load in the JVM.  This has resulted in an exception in the class loader.",
-            "Verify that the Connector Provider and Connector jar files are properly configured in the process.  Update the connection configuration to include a valid Java class name for the connector provider in the connectorProviderClassName property of the connection's connectorType. Then retry the request."),
-    INVALID_CONNECTOR_PROVIDER(400, "OCF-CONNECTION-400-008 ",
-            "Invalid Connector Provider class {0} passed in connection {1}",
-            "The system is unable to create the requested connector instance because the Connector Provider's class is failing to initialize in the JVM.  This has resulted in an exception in the class loader.",
-            "Verify that the Connector Provider and Connector jar files are properly configured in the process.  Update the connection configuration to include a valid Java class name for the connector provider in the connectorProviderClassName property of the connection's connectorType. Then retry the request."),
-    NULL_ENDPOINT_IN_CONNECTION(400, "OCF-CONNECTION-400-009 ",
-            "Null endpoint detected in connection {0}",
-            "The system is unable to initialize the requested connector because the endpoint information in the connection is missing.",
-            "Add the endpoint information into the connection object and retry the request."),
-    MALFORMED_ENDPOINT(400, "OCF-CONNECTION-400-010 ",
-            "The endpoint attribute {0} in connection {1} is set to \"{2}\" which is invalid",
-            "The system is unable to initialize the requested connector because the endpoint information in the connection is not formatted correctly for this type of connection.",
-            "Correct the endpoint information into the connection object and retry the request."),
-    NULL_PROPERTY_NAME(400, "OCF-PROPERTIES-400-011 ",
-            "Null property name passed to entity {0} of type {1}",
-            "A request to set an additional property failed because the property name passed was null",
-            "Recode the call to the property object with a valid property name and retry."),
-    INVALID_PROPERTY_NAMES(400, "OCF-PROPERTIES-400-012 ",
-            "Non-string property names stored in entity {0} of type {1}",
-            "A request to retrieve additional properties failed because the properties have become corrupted.",
-            "Debug the calls to the properties object."),
-    NULL_SECURED_PROPERTY_NAME(400, "OCF-CONNECTION-400-013 ",
-            "Null securedProperty name passed to connection {0})",
-            "A request to set a secured property failed because the property name passed was null",
-            "Recode the call to the connection object with a valid property name and retry."),
-    NO_MORE_ELEMENTS(400, "OCF-PROPERTIES-400-014 ",
-            "No more elements in {0} iterator for entity {1} of type {2}",
-            "A caller stepping through an iterator has requested more elements when there are none left.",
-            "Recode the caller to use the hasNext() method to check for more elements before calling next() and then retry."),
-    NO_ITERATOR(400, "OCF-PROPERTIES-400-015 ",
-            "No type-specific iterator for {0} paging iterator for entity {1} of type {2}",
-            "A caller requesting a paging iterator has not supplied a type-specific iterator in the constructor.",
-            "Recode the caller to use the hasNext() method to check for more elements before calling next() and then retry."),
-    NULL_CLASSIFICATION_NAME(400, "OCF-PROPERTIES-400-016 ",
-            "No classification name for entity {0} of type {1}",
-            "A classification with a null name is assigned to an entity.   This value should come from a metadata repository, and always be filled in.",
-            "Look for other error messages to identify the source of the problem.  Identify the metadata repository where the asset came from.  Correct the cause of the error and then retry."),
-    NULL_TAG_NAME(400, "OCF-PROPERTIES-400-017 ",
-            "No tag name for entity {0} of type {1}",
-            "A tag with a null name is assigned to an entity.   This value should come from a metadata repository, and always be filled in.",
-            "Look for other error messages to identify the source of the problem.  Identify the metadata repository where the asset came from.  Correct the cause of the error and then retry."),
-    UNKNOWN_ENDPOINT(404, "OCF-CONNECTOR-404-001 ",
-            "Endpoint {0} in connection {1} for connector instance {2} is either unknown or unavailable",
-            "The requested action is not able to complete because the remote endpoint where the assets are located is not responding.  It may be unavailable or unknown.",
-            "Verify that the endpoint information is correct and the server that supports it is operational, then retry the request."),
-    PROPERTIES_NOT_AVAILABLE(404, "OCF-PROPERTIES-404-002 ",
-            "Exception with error message \"{0}\" was returned to object {1} resulted from a request for connected asset properties",
-            "The requested action is not able to complete which may mean that the server is not able to return all of the properties associated with the asset.",
-                     "Verify that the endpoint information is correct and the server that supports it is operational, then retry the request."),
-    CAUGHT_EXCEPTION(500, "OCF-CONNECTION-500-001 ",
-            "OCF method detected an unexpected exception",
-            "The system detected an error during connector processing.",
-            "The root cause of the error is captured in previous reported messages."),
-    CAUGHT_EXCEPTION_WITHMSG(500, "OCF-CONNECTION-500-002 ",
-            "OCF method {0} detected an unexpected exception, message was {1}",
-            "The system detected an error during connector processing.",
-            "The root cause of the error is captured in previous reported messages."),
-    NOT_IMPLEMENTED(500, "OCF-CONNECTION-500-003 ",
-            "OCF method {0} not yet implemented",
-            "The system is not able to process a request because a feature is not yet implemented.",
-            "Contact your support organization for help in discovering a workaround, fix or upgrade to the system."),
-    UNKNOWN_ERROR(500, "OCF-CONNECTION-500-004 ",
-            "Connection error detected",
-            "The system detected an error during connection processing.",
-            "The root cause of the error is captured in previous reported messages."),
-    INTERNAL_ERROR(500, "OCF-CONNECTION-500-005 ",
-            "Internal error in OCF method {0}",
-            "The system detected an error during connection processing.",
-            "The root cause of the error is captured in previous reported messages."),
-    NULL_CONNECTOR_CLASS(500, "OCF-CONNECTOR-500-006 ",
-            "The class name for the connector is not set up",
-            "The system is unable to create the requested connector instance without the name of the Java class for the connector.",
-            "Update the implementation of the connector provider to ensure the connector's java class is intitialized correctly"),
-    UNKNOWN_CONNECTOR(500,"OCF-CONNECTOR-500-007 ",
-            "Unknown Connector Java class {0}",
-            "The system is unable to create the requested connector instance because the Connector's class is not known to the JVM.  This may be because the Connector Provider's jar is not installed in the local JVM or the wrong Java class name has been configured in the connection. ",
-            "Verify that the Connector Provider and Connector jar files are properly configured in the process.  Update the connection configuration to include a valid Java class name for the connector provider in the connectorProviderClassName property of the connection's connectorType. Then retry the request."),
-    NOT_CONNECTOR(500,"OCF-CONNECTOR-500-008 ",
-            "Java class {0} is not a Connector",
-            "The system is unable to create the requested connector instance because the Connector's class does not implement org.apache.atlas.ocf.Connector. ",
-            "Update the connection configuration to include a valid Java class name for the connector provider in the connectorProviderClassName property of the connection's connectorType. Then retry the request."),
-    INCOMPLETE_CONNECTOR(500,"OCF-CONNECTOR-500-009 ",
-            "Unable to load Connector Java class {0}",
-            "The system is unable to create the requested connector instance because the Connector's class is failing to load in the JVM.  This has resulted in an exception in the class loader.",
-            "Verify that the Connector Provider and Connector jar files are properly configured in the process. Then retry the request."),
-    INVALID_CONNECTOR(500, "OCF-CONNECTION-500-010 ",
-            "Invalid Connector class {0}",
-            "The system is unable to create the requested connector instance because the Connector's class is failing to initialize in the JVM.  This has resulted in an exception in the class loader.",
-            "Verify that the Connector Provider and Connector jar files are properly configured in the process.  Then retry the request."),
-    NULL_CONNECTOR(500, "OCF-CONNECTION-500-011 ",
-            "Connector Provider {0} returned a null connector instance for connection {1}",
-            "The system detected an error during connector processing and was unable to create a connector.",
-            "The root cause of the error is captured in previous reported messages.");
-
-    private int    httpErrorCode;
-    private String errorMessageId;
-    private String errorMessage;
-    private String systemAction;
-    private String userAction;
-
-    private static final Logger log = LoggerFactory.getLogger(OCFErrorCode.class);
-
-
-    /**
-     * The constructor for OCFErrorCode expects to be passed one of the enumeration rows defined in
-     * OCFErrorCode above.   For example:
-     *
-     *     OCFErrorCode   errorCode = OCFErrorCode.UNKNOWN_ENDPOINT;
-     *
-     * This will expand out to the 5 parameters shown below.
-     *
-     * @param httpErrorCode - error code to use over REST calls
-     * @param errorMessageId - unique Id for the message
-     * @param errorMessage - text for the message
-     * @param systemAction - description of the action taken by the system when the error condition happened
-     * @param userAction - instructions for resolving the error
-     */
-    OCFErrorCode(int  httpErrorCode, String errorMessageId, String errorMessage, String systemAction, String userAction)
-    {
-        this.httpErrorCode = httpErrorCode;
-        this.errorMessageId = errorMessageId;
-        this.errorMessage = errorMessage;
-        this.systemAction = systemAction;
-        this.userAction = userAction;
-    }
-
-
-    public int getHTTPErrorCode()
-    {
-        return httpErrorCode;
-    }
-
-
-    /**
-     * Returns the unique identifier for the error message.
-     *
-     * @return errorMessageId
-     */
-    public String getErrorMessageId()
-    {
-        return errorMessageId;
-    }
-
-
-    /**
-     * Returns the error message with placeholders for specific details.
-     *
-     * @return errorMessage (unformatted)
-     */
-    public String getUnformattedErrorMessage()
-    {
-        return errorMessage;
-    }
-
-
-    /**
-     * Returns the error message with the placeholders filled out with the supplied parameters.
-     *
-     * @param params - strings that plug into the placeholders in the errorMessage
-     * @return errorMessage (formatted with supplied parameters)
-     */
-    public String getFormattedErrorMessage(String... params)
-    {
-        MessageFormat mf = new MessageFormat(errorMessage);
-        String result = mf.format(params);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(String.format("OCFErrorCode.getMessage(%s): %s", Arrays.toString(params), result));
-        }
-
-        return result;
-    }
-
-
-    /**
-     * Returns a description of the action taken by the system when the condition that caused this exception was
-     * detected.
-     *
-     * @return systemAction
-     */
-    public String getSystemAction()
-    {
-        return systemAction;
-    }
-
-
-    /**
-     * Returns instructions of how to resolve the issue reported in this exception.
-     *
-     * @return userAction
-     */
-    public String getUserAction()
-    {
-        return userAction;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/OCFRuntimeException.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/OCFRuntimeException.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/OCFRuntimeException.java
deleted file mode 100644
index 3d66271..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/OCFRuntimeException.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.ffdc;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.UUID;
-
-/**
- * OCFRuntimeException is used for all runtime exceptions generated by the OCF.  The OCFErrorCode provides
- * first failure data capture information for this exception, although this information can also be provided
- * using custom values.
- */
-public class OCFRuntimeException extends RuntimeException
-{
-    private static final int      hashCode = UUID.randomUUID().hashCode();
-
-
-    /*
-     * These default values are only seen if this exception is initialized using one of its superclass constructors.
-     */
-    private int       reportedHTTPCode = 500;
-    private String    reportingClassName = "<Unknown>";
-    private String    reportingActionDescription = "<Unknown>";
-    private String    reportedErrorMessage = "<Unknown>";
-    private String    reportedSystemAction = "<Unknown>";
-    private String    reportedUserAction = "<Unknown>";
-    private Throwable reportedCaughtException = null;
-
-    private static final Logger log = LoggerFactory.getLogger(OCFRuntimeException.class);
-
-    /**
-     * This is the typical constructor used for creating an OCFRuntimeException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public OCFRuntimeException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(errorMessage);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(httpCode + ", " + className + ", " + actionDescription);
-        }
-    }
-
-
-    /**
-     * This is the constructor used for creating a OCFRuntimeException that results from a previous error/exception
-     * being thrown.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - previous error causing this exception
-     */
-    public OCFRuntimeException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(errorMessage, caughtError);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtException = caughtError;
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(httpCode + ", " + className + ", " + actionDescription + ", " + caughtError.toString());
-        }
-    }
-
-
-    /**
-     * Return the HTTP response code to use with this exception.
-     *
-     * @return reportedHTTPCode
-     */
-    public int getReportedHTTPCode()
-    {
-        return reportedHTTPCode;
-    }
-
-    /**
-     * The class that created this exception.
-     *
-     * @return reportingClassName
-     */
-    public String getReportingClassName()
-    {
-        return reportingClassName;
-    }
-
-
-    /**
-     * The type of request that the class was performing when the condition occurred that resulted in this
-     * exception.
-     *
-     * @return reportingActionDescription
-     */
-    public String getReportingActionDescription()
-    {
-        return reportingActionDescription;
-    }
-
-
-    /**
-     * A formatted short description of the cause of the condition that resulted in this exception.
-     *
-     * @return reportedErrorMessage
-     */
-    public String getErrorMessage()
-    {
-        return reportedErrorMessage;
-    }
-
-
-    /**
-     * A description of the action that the system took as a result of the error condition.
-     *
-     * @return reportedSystemAction
-     */
-    public String getReportedSystemAction()
-    {
-        return reportedSystemAction;
-    }
-
-
-    /**
-     * A description of the action necessary to correct the error.
-     *
-     * @return reportedUserAction
-     */
-    public String getReportedUserAction()
-    {
-        return reportedUserAction;
-    }
-
-
-    /**
-     * An exception that was caught and wrapped by this exception.  If a null is returned, then this exception is
-     * newly created and not the result of a previous exception.
-     *
-     * @return reportedCaughtException
-     */
-    public Throwable getReportedCaughtException() { return reportedCaughtException; }
-
-
-    /**
-     * Provide a common implementation of hashCode for all OCF properties objects.  The UUID is unique and
-     * is randomly assigned and so its hashCode is as good as anything to describe the hash code of the properties
-     * object.
-     */
-    public int hashCode()
-    {
-        return hashCode;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/PropertyServerException.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/PropertyServerException.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/PropertyServerException.java
deleted file mode 100644
index f78eba9..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/PropertyServerException.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.ffdc;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * PropertyServerException provides a checked exception for reporting errors when connecting to a
- * metadata repository to retrieve properties about the connected asset.
- * It may be a configuration error or temporary outage.  The parameters captured by the constructors
- * pinpoint the type an cause of the error.
- */
-public class PropertyServerException extends OCFCheckedExceptionBase
-{
-    private static final Logger log = LoggerFactory.getLogger(PropertyServerException.class);
-
-    /**
-     * This is the typical constructor for creating a PropertyServerException.  It captures the essential details
-     * about the error, where it occurred and how to fix it.
-     *
-     * @param httpCode - code to use on a REST interface
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public PropertyServerException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(httpCode + ", " + className + ", " + actionDescription);
-        }
-    }
-
-
-    /**
-     * This constructor is used when an unexpected exception has been caught that needs to be wrapped in a
-     * PropertyServerException in order to add the essential details about the error, where it occurred and
-     * how to fix it.
-     *
-     * @param httpCode -- code to use on a REST interface
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the exception/error that caused this exception to be raised
-     */
-    public PropertyServerException(int httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(httpCode + ", " + className + ", " + actionDescription + ", " + caughtError.toString());
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/README.md
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/README.md b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/README.md
deleted file mode 100644
index 40e4d12..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/ffdc/README.md
+++ /dev/null
@@ -1,46 +0,0 @@
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you 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.
-  -->
-
-# Open Connector Framework (OCF) FFDC
-
-Package org.apache.atlas.ocf.ffdc provides the first failure data capture
-(FFDC) support for the OCF module.  This includes an error code enum,
-a runtime exception, a base class for checked exceptions plus
-implementation of each specific checked exception.
-
-The error code enum (OCFErrorCode) has an entry for each unique situation
-where an exception is returned.  Each entry defines:
-
-* A unique id for the error
-* An HTTP error code for rest calls
-* A unique message Id
-* Message text with place holders for specific values
-* A description of the cause of the error and system action as a result.
-* A description of how to correct the error (if known)
-
-Each exception (whether a checked or runtime exception) has two constructors.
-
-* The first constructor is used when a new error has been detected.
-* The second constructor is used when another exception has been caught.
-This caught exception is passed on the constructor so it is effectively
-embedded in the OCF exception.
-
-Both constructors take the values from the OCFErrorCode
-enum to define the cause and resolution.  These values are passed
-as individual parameters so that subclasses implemented outside of
-the OCF packages can define their own FFDC values.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AdditionalProperties.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AdditionalProperties.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AdditionalProperties.java
deleted file mode 100644
index 1a3a35a..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AdditionalProperties.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.*;
-
-
-/**
- * The AdditionalProperties class provides support for arbitrary properties to be added to a properties object.
- * It wraps a java.util.Map map object built around HashMap.
- */
-public class AdditionalProperties extends AssetPropertyBase
-{
-    protected Map<String,Object>  additionalProperties = new HashMap<>();
-
-
-    /**
-     * Constructor for a new set of additional properties that are not connected either directly or indirectly to an asset.
-     *
-     * @param additionalProperties - map of properties for the metadata element.
-     */
-    public AdditionalProperties(Map<String,Object>  additionalProperties)
-    {
-        this(null, additionalProperties);
-    }
-
-
-    /**
-     * Constructor for a new set of additional properties that are connected either directly or indirectly to an asset.
-     *
-     * @param parentAsset - description of the asset that these additional properties are attached to.
-     * @param additionalProperties - map of properties for the metadata element.
-     */
-    public AdditionalProperties(AssetDescriptor     parentAsset,
-                                Map<String,Object>  additionalProperties)
-    {
-        super(parentAsset);
-
-        if (additionalProperties != null)
-        {
-            this.additionalProperties = new HashMap<>(additionalProperties);
-        }
-    }
-
-
-    /**
-     * Copy/clone Constructor for additional properties that are connected to an asset.
-     *
-     * @param parentAsset - description of the asset that these additional properties are attached to.
-     * @param templateProperties - template object to copy.
-     */
-    public AdditionalProperties(AssetDescriptor   parentAsset, AdditionalProperties templateProperties)
-    {
-        super(parentAsset, templateProperties);
-
-        /*
-         * An empty properties object is created in the private variable declaration so nothing to do.
-         */
-        if (templateProperties != null)
-        {
-            /*
-             * Process templateProperties if they are not null
-             */
-            Iterator<String> propertyNames = templateProperties.getPropertyNames();
-
-            if (propertyNames != null)
-            {
-                while (propertyNames.hasNext())
-                {
-                    String newPropertyName = propertyNames.next();
-                    Object newPropertyValue = templateProperties.getProperty(newPropertyName);
-
-                    additionalProperties.put(newPropertyName, newPropertyValue);
-                }
-            }
-        }
-    }
-
-
-    /**
-     * Returns a list of the additional stored properties for the element.
-     * If no stored properties are present then null is returned.
-     *
-     * @return list of additional properties
-     */
-    public Iterator<String> getPropertyNames()
-    {
-        return additionalProperties.keySet().iterator();
-    }
-
-
-    /**
-     * Returns the requested additional stored property for the element.
-     * If no stored property with that name is present then null is returned.
-     *
-     * @param name - String name of the property to return.
-     * @return requested property value.
-     */
-    public Object getProperty(String name)
-    {
-        return additionalProperties.get(name);
-    }
-
-
-    /**
-     * Test whether the supplied object is equal to this object.
-     *
-     * @param testObject - object to test
-     * @return boolean indicating if the supplied object represents the same content as this object.
-     */
-    @Override
-    public boolean equals(Object testObject)
-    {
-        if (this == testObject)
-        {
-            return true;
-        }
-        if (testObject == null || getClass() != testObject.getClass())
-        {
-            return false;
-        }
-
-        AdditionalProperties that = (AdditionalProperties) testObject;
-
-        return additionalProperties != null ? additionalProperties.equals(that.additionalProperties) : that.additionalProperties == null;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "AdditionalProperties{" +
-                "additionalProperties=" + additionalProperties +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Annotation.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Annotation.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Annotation.java
deleted file mode 100644
index c9394a4..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Annotation.java
+++ /dev/null
@@ -1,377 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Date;
-
-/**
- * An annotation describes the results of an analysis undertaken by an Open Discovery Framework (ODF) discovery service.
- * It describes when the analysis happened, the type of analysis and the results.
- */
-public class Annotation extends ElementHeader
-{
-    /*
-     * Details from the AnnotationReport entity
-     */
-    private String               reportName = null;
-    private String               reportDescription = null;
-    private Date                 creationDate = null;
-    private AdditionalProperties analysisParameters = null;
-
-    /*
-     * Details from the Annotation entity itself
-     */
-    private String               annotationType = null;
-    private String               summary = null;
-    private int                  confidenceLevel = 0;
-    private String               expression = null;
-    private String               explanation = null;
-    private String               analysisStep = null;
-    private String               jsonProperties = null;
-    private AnnotationStatus     annotationStatus = null;
-
-    /*
-     * Details from the latest AnnotationReview entity.
-     */
-    private Date                 reviewDate = null;
-    private String               steward = null;
-    private String               reviewComment = null;
-
-    /*
-     * Additional properties added directly to the Annotation entity and supported by
-     * the sub-types of Annotation.
-     */
-    private AdditionalProperties  additionalProperties = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset - description of the asset that this annotation is attached to.
-     * @param type - details of the metadata type for this properties object
-     * @param guid - String - unique id
-     * @param url - String - URL
-     * @param classifications - List of classifications
-     * @param reportName - report name string
-     * @param reportDescription - String for the report description
-     * @param creationDate - Date that annotation was created.
-     * @param analysisParameters - Properties that hold the parameters used to drive the discovery service's analysis.
-     * @param annotationType - String for annotation type
-     * @param summary - String for summary
-     * @param confidenceLevel - int for confidence level
-     * @param expression - String for the expression that represent the relationship between the annotation and the asset.
-     * @param explanation - String for the explanation for the annotation
-     * @param analysisStep - String describing the analysis step that the discovery service was in when it created the annotation.
-     * @param jsonProperties String - JSON properties associated with the annotation
-     * @param annotationStatus - AnnotationStatus enum
-     * @param reviewDate - date that this annotation was reviewed.  If no review has taken place then this property is null.
-     * @param steward String name of steward that reviewed the annotation.
-     * @param reviewComment - string comment made by the steward as part of the review of the annotation. The comment covers the
-     * whole review which may have looked at multiple annotations so the comment may not necessarily refer only to this annotation.
-     * @param additionalProperties - additional properties object for annotation.  These are a combination of the additional
-     * properties from the Annotation entity and any properties introduced by the subtypes of annotation.
-     * The naming convention for subtype property names is entityName.attributeName.value.  If the property
-     * is a map then the map contents are named entityName.attributeName.propertyName.propertyValue.
-     */
-
-
-    public Annotation(AssetDescriptor       parentAsset,
-                      ElementType           type,
-                      String                guid,
-                      String                url,
-                      Classifications       classifications,
-                      String                reportName,
-                      String                reportDescription,
-                      Date                  creationDate,
-                      AdditionalProperties  analysisParameters,
-                      String                annotationType,
-                      String                summary,
-                      int                   confidenceLevel,
-                      String                expression,
-                      String                explanation,
-                      String                analysisStep,
-                      String                jsonProperties,
-                      AnnotationStatus      annotationStatus,
-                      Date                  reviewDate,
-                      String                steward,
-                      String                reviewComment,
-                      AdditionalProperties  additionalProperties)
-    {
-        super(parentAsset, type, guid, url, classifications);
-
-        this.reportName = reportName;
-        this.reportDescription = reportDescription;
-        this.creationDate = creationDate;
-        this.analysisParameters = analysisParameters;
-        this.annotationType = annotationType;
-        this.summary = summary;
-        this.confidenceLevel = confidenceLevel;
-        this.expression = expression;
-        this.explanation = explanation;
-        this.analysisStep = analysisStep;
-        this.jsonProperties = jsonProperties;
-        this.annotationStatus = annotationStatus;
-        this.reviewDate = reviewDate;
-        this.steward = steward;
-        this.reviewComment = reviewComment;
-        this.additionalProperties = additionalProperties;
-    }
-
-    /**
-     * Copy/clone Constructor
-     *
-     * @param parentAsset - description of the asset that this annotation is attached to.
-     * @param templateAnnotation - template object to copy.
-     */
-    public Annotation(AssetDescriptor    parentAsset, Annotation   templateAnnotation)
-    {
-        /*
-         * Remember the parent
-         */
-        super(parentAsset, templateAnnotation);
-
-        if (templateAnnotation != null)
-        {
-            /*
-             * Copy the properties from the template into this annotation.
-             */
-            this.reportName = templateAnnotation.getReportName();
-            this.reportDescription = templateAnnotation.getReportDescription();
-            this.creationDate = templateAnnotation.getCreationDate();
-            this.analysisParameters = templateAnnotation.getAnalysisParameters();
-            this.annotationType = templateAnnotation.getAnnotationType();
-            this.summary = templateAnnotation.getSummary();
-            this.confidenceLevel = templateAnnotation.getConfidenceLevel();
-            this.expression = templateAnnotation.getExpression();
-            this.explanation = templateAnnotation.getExplanation();
-            this.analysisStep = templateAnnotation.getAnalysisStep();
-            this.jsonProperties = templateAnnotation.getJsonProperties();
-            this.annotationStatus = templateAnnotation.getAnnotationStatus();
-            this.reviewDate = templateAnnotation.getReviewDate();
-            this.steward = templateAnnotation.getSteward();
-            this.reviewComment = templateAnnotation.getReviewComment();
-            this.additionalProperties = new AdditionalProperties(parentAsset, templateAnnotation.getAdditionalProperties());
-        }
-    }
-
-
-    /**
-     * Return the name of the discovery analysis report that created this annotation.
-     *
-     * @return String - report name
-     */
-    public String getReportName()
-    {
-        return reportName;
-    }
-
-
-    /**
-     * Return the discovery analysis report description that this annotation is a part of.
-     *
-     * @return String - report description
-     */
-    public String getReportDescription()
-    {
-        return reportDescription;
-    }
-
-
-    /**
-     * Return the creation date for the annotation.  If this date is not known then null is returned.
-     *
-     * @return Date that the annotation was created.
-     */
-    public Date getCreationDate() {
-        return creationDate;
-    }
-
-
-    /**
-     * Return the properties that hold the parameters used to drive the discovery service's analysis.
-     *
-     * @return AdditionalProperties - object storing the analysis parameters
-     */
-    public AdditionalProperties getAnalysisParameters()
-    {
-        return analysisParameters;
-    }
-
-
-    /**
-     * Return the informal name for the type of annotation.
-     *
-     * @return String - annotation type
-     */
-    public String getAnnotationType()
-    {
-        return annotationType;
-    }
-
-
-    /**
-     * Return the summary description for the annotation.
-     *
-     * @return String - summary of annotation
-     */
-    public String getSummary()
-    {
-        return summary;
-    }
-
-
-    /**
-     * Return the confidence level of the discovery service that the annotation is correct.
-     *
-     * @return int - confidence level
-     */
-    public int getConfidenceLevel()
-    {
-        return confidenceLevel;
-    }
-
-
-    /**
-     * Return the expression that represent the relationship between the annotation and the asset.
-     *
-     * @return String - expression
-     */
-    public String getExpression()
-    {
-        return expression;
-    }
-
-
-    /**
-     * Return the explanation for the annotation.
-     *
-     * @return String - explanation
-     */
-    public String getExplanation() {
-        return explanation;
-    }
-
-
-    /**
-     * Return a description of the analysis step that the discovery service was in when it created the annotation.
-     *
-     * @return String - analysis step
-     */
-    public String getAnalysisStep()
-    {
-        return analysisStep;
-    }
-
-
-    /**
-     * Return the JSON properties associated with the annotation.
-     *
-     * @return String - JSON properties of annotation
-     */
-    public String getJsonProperties()
-    {
-        return jsonProperties;
-    }
-
-
-    /**
-     * Return the current status of the annotation.
-     *
-     * @return AnnotationStatus - current status of annotation
-     */
-    public AnnotationStatus getAnnotationStatus()
-    {
-        return annotationStatus;
-    }
-
-
-    /**
-     * Return the date that this annotation was reviewed.  If no review has taken place then this property is null.
-     *
-     * @return Date - review date
-     */
-    public Date getReviewDate()
-    {
-        return reviewDate;
-    }
-
-
-    /**
-     * Return the name of the steward that reviewed the annotation.
-     *
-     * @return String - steward's name.
-     */
-    public String getSteward()
-    {
-        return steward;
-    }
-
-
-    /**
-     * Return any comments made by the steward during the review.
-     *
-     * @return String - review comment
-     */
-    public String getReviewComment()
-    {
-        return reviewComment;
-    }
-
-
-    /**
-     * Return the additional properties for the Annotation.
-     *
-     * @return AdditionalProperties - additional properties object
-     */
-    public AdditionalProperties getAdditionalProperties()
-    {
-        return additionalProperties;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Annotation{" +
-                "reportName='" + reportName + '\'' +
-                ", reportDescription='" + reportDescription + '\'' +
-                ", creationDate=" + creationDate +
-                ", analysisParameters=" + analysisParameters +
-                ", annotationType='" + annotationType + '\'' +
-                ", summary='" + summary + '\'' +
-                ", confidenceLevel=" + confidenceLevel +
-                ", expression='" + expression + '\'' +
-                ", explanation='" + explanation + '\'' +
-                ", analysisStep='" + analysisStep + '\'' +
-                ", jsonProperties='" + jsonProperties + '\'' +
-                ", annotationStatus=" + annotationStatus +
-                ", reviewDate=" + reviewDate +
-                ", steward='" + steward + '\'' +
-                ", reviewComment='" + reviewComment + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AnnotationStatus.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AnnotationStatus.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AnnotationStatus.java
deleted file mode 100644
index b45ce57..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AnnotationStatus.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * An AnnotationStatus defines the current status for an annotation plus some default descriptive text.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum AnnotationStatus implements Serializable
-{
-    NEW_ANNOTATION      (0,  "New",      "Annotation has been created but not reviewed"),
-    REVIEWED_ANNOTATION (1,  "Reviewed", "Annotation has been reviewed by no decision has been made"),
-    APPROVED_ANNOTATION (2,  "Approved", "Annotation has been approved"),
-    ACTIONED_ANNOTATION (3,  "Actioned", "Annotation has been approved and insight has been added to Asset's metadata"),
-    INVALID_ANNOTATION  (4,  "Invalid",  "Annotation has been reviewed and declared invalid"),
-    IGNORE_ANNOTATION   (5,  "Ignore",   "Annotation is invalid and should be ignored"),
-    OTHER_STATUS        (98, "Other",    "Annotation's status stored in additional properties"),
-    UNKNOWN_STATUS      (99, "Unknown",  "Annotation has not had a status assigned");
-
-    private static final long     serialVersionUID = 1L;
-
-    private int            statusCode;
-    private String         statusName;
-    private String         statusDescription;
-
-
-    /**
-     * Typical Constructor
-     */
-    AnnotationStatus(int     statusCode, String   statusName,  String   statusDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.statusCode = statusCode;
-        this.statusName = statusName;
-        this.statusDescription = statusDescription;
-    }
-
-
-    /**
-     * Return the status code for this enum instance
-     *
-     * @return int - status code
-     */
-    public int getStatusCode()
-    {
-        return statusCode;
-    }
-
-
-    /**
-     * Return the default name for the status for this enum instance.
-     *
-     * @return String - default status name
-     */
-    public String getStatusName()
-    {
-        return statusName;
-    }
-
-
-    /**
-     * REturn the default description for the status for this enum instance.
-     *
-     * @return String - default status description
-     */
-    public String getStatusDescription()
-    {
-        return statusDescription;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "AnnotationStatus{" +
-                "statusCode=" + statusCode +
-                ", statusName='" + statusName + '\'' +
-                ", statusDescription='" + statusDescription + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Annotations.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Annotations.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Annotations.java
deleted file mode 100644
index 2b7e99d..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Annotations.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * Annotations supports an iterator over a list of annotations.  Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class Annotations extends AssetPropertyIteratorBase implements Iterator<Annotation>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public Annotations(AssetDescriptor              parentAsset,
-                       int                          totalElementCount,
-                       int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public Annotations(AssetDescriptor   parentAsset, Annotations    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new Annotation(parentAsset, (Annotation)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract Annotations  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return Annotation - next element object that has been cloned.
-     */
-    @Override
-    public Annotation next()
-    {
-        return (Annotation)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Annotations{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetDescriptor.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetDescriptor.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetDescriptor.java
deleted file mode 100644
index 63d8fd4..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetDescriptor.java
+++ /dev/null
@@ -1,166 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-/**
- * This is the base class for a connected asset.  It is passed to all of the embedded property objects so the name
- * and type can be used for error messages and other diagnostics.  It also carries the URL of the asset in the
- * metadata repository where this is known to enable properties to be retrieved on request.
- */
-public abstract class AssetDescriptor extends PropertyBase
-{
-    /*
-     * Derived name and type for use by nested property object for messages/debug.  If these default values
-     * are seen it is a sign that the asset properties are not being populated from the metadata repository.
-     */
-    private String assetName = "<Unknown>";
-    private String assetTypeName = "<Unknown>";
-
-    /*
-     * URL where the metadata about the asset is located.  It remains null if no repository is known.
-     */
-    private String url = null;
-
-    /*
-     * Unique id for the asset.
-     */
-    private String guid = null;
-
-
-    /**
-     * Typical constructor - the asset descriptor is effectively empty - and the protected
-     * set methods need to be called to add useful content to it.
-     */
-    public AssetDescriptor()
-    {
-        /*
-         * Nothing to do except call superclass
-         */
-        super();
-    }
-
-
-    /**
-     * Explicit constructor - the asset descriptor is explicitly given the url for the asset.
-     *
-     * @param guid - unique id for the asset
-     * @param url - URL for the asset in the metadata repository
-     */
-    public AssetDescriptor(String guid, String  url)
-    {
-        super();
-
-        this.guid = guid;
-        this.url = url;
-    }
-
-
-    /**
-     * Copy/clone Constructor - used to copy the asset descriptor for a new consumer.
-     *
-     * @param templateAssetDescriptor - template asset descriptor to copy.
-     */
-    public AssetDescriptor(AssetDescriptor   templateAssetDescriptor)
-    {
-        super();
-
-        this.guid = templateAssetDescriptor.getGUID();
-        this.assetName = templateAssetDescriptor.getAssetName();
-        this.assetTypeName = templateAssetDescriptor.getAssetTypeName();
-        this.url = templateAssetDescriptor.getURL();
-    }
-
-
-    /**
-     * Method to enable a subclass to set up the asset name.
-     *
-     * @param assetName - String - name of asset for messages etc
-     */
-    protected void setAssetName(String     assetName)
-    {
-        this.assetName = assetName;
-    }
-
-
-    /**
-     * Method to enable a subclass to set up the asset type name.
-     *
-     * @param assetTypeName - String - new type name
-     */
-    protected void setAssetTypeName(String    assetTypeName)
-    {
-        this.assetTypeName = assetTypeName;
-    }
-
-
-    /**
-     * Return the unique id for this element.
-     *
-     * @return guid - unique id
-     */
-    public String getGUID() {
-        return guid;
-    }
-
-
-    /**
-     * Return the name of the asset - for use in messages and other diagnostics.
-     *
-     * @return String - asset name
-     */
-    public String getAssetName()
-    {
-        return assetName;
-    }
-
-
-    /**
-     * Return the name of the asset's type - for use in messages and other diagnostics.
-     *
-     * @return String - asset type name
-     */
-    public String getAssetTypeName()
-    {
-        return assetTypeName;
-    }
-
-
-    /**
-     * Return the URL of the asset in the metadata repository if supported.
-     *
-     * @return String - URL
-     */
-    public String getURL() { return url; }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "AssetDescriptor{" +
-                "assetName='" + assetName + '\'' +
-                ", assetTypeName='" + assetTypeName + '\'' +
-                ", url='" + url + '\'' +
-                ", guid='" + guid + '\'' +
-                '}';
-    }
-}
\ No newline at end of file


[10/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSInstanceEventProcessor.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSInstanceEventProcessor.java b/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSInstanceEventProcessor.java
deleted file mode 100644
index e7cc6f7..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/localrepository/repositoryconnector/LocalOMRSInstanceEventProcessor.java
+++ /dev/null
@@ -1,1500 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.localrepository.repositoryconnector;
-
-import org.apache.atlas.ocf.properties.Connection;
-import org.apache.atlas.omrs.auditlog.OMRSAuditCode;
-import org.apache.atlas.omrs.auditlog.OMRSAuditLog;
-import org.apache.atlas.omrs.auditlog.OMRSAuditingComponent;
-import org.apache.atlas.omrs.eventmanagement.*;
-import org.apache.atlas.omrs.eventmanagement.events.OMRSInstanceEventProcessor;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.*;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.metadatacollection.OMRSMetadataCollection;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.EntityDetail;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceProvenanceType;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.InstanceType;
-import org.apache.atlas.omrs.metadatacollection.properties.instances.Relationship;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.List;
-
-
-/**
- * LocalOMRSInstanceEventProcessor processes incoming metadata instance events that describe changes to the
- * entities and relationships in other repositories in the connected cohorts.
- * It uses the save exchange rule to decide which events to process and which to ignore.
- * Events that are to be processed are converted into reference copies of their respective entities and
- * relationships and stored in the local repository.
- */
-public class LocalOMRSInstanceEventProcessor implements OMRSInstanceEventProcessor, OMRSInstanceRetrievalEventProcessor
-{
-    private String                          localMetadataCollectionId;
-    private String                          localServerName;
-    private OMRSRepositoryConnector         realLocalConnector;
-    private OMRSRepositoryHelper            repositoryHelper;
-    private OMRSRepositoryValidator         repositoryValidator;
-    private OMRSRepositoryEventExchangeRule saveExchangeRule;
-    private String                          realRepositoryName = "Local Repository";
-    private OMRSMetadataCollection          realMetadataCollection = null;
-    private OMRSRepositoryEventProcessor    outboundRepositoryEventProcessor = null;
-
-
-
-    /*
-     * The audit log provides a verifiable record of the open metadata archives that have been loaded into
-     * the open metadata repository.  The Logger is for standard debug.
-     */
-    private static final OMRSAuditLog auditLog = new OMRSAuditLog(OMRSAuditingComponent.INSTANCE_EVENT_PROCESSOR);
-    private static final Logger       log      = LoggerFactory.getLogger(LocalOMRSInstanceEventProcessor.class);
-
-
-    /**
-     * Constructor saves all of the information necessary to process incoming instance events.  It is intolerant
-     * of nulls in any of its parameters and will throw a logic error exception is it finds any.
-     *
-     * @param localMetadataCollectionId - local metadata collection identifier
-     * @param localServerName           - name of the local server - for logging
-     * @param realLocalConnector        - connector to the real local repository
-     * @param repositoryHelper          - helper class for building instances
-     * @param repositoryValidator       - helper class for validating instances
-     * @param saveExchangeRule          - rule that determines which events to process.
-     */
-    LocalOMRSInstanceEventProcessor(String                          localMetadataCollectionId,
-                                    String                          localServerName,
-                                    OMRSRepositoryConnector         realLocalConnector,
-                                    OMRSRepositoryHelper            repositoryHelper,
-                                    OMRSRepositoryValidator         repositoryValidator,
-                                    OMRSRepositoryEventExchangeRule saveExchangeRule,
-                                    OMRSRepositoryEventProcessor    outboundRepositoryEventProcessor)
-    {
-        final String methodName = "LocalOMRSInstanceEventProcessor constructor";
-
-        this.localMetadataCollectionId = localMetadataCollectionId;
-        this.localServerName = localServerName;
-        this.realLocalConnector = realLocalConnector;
-        this.repositoryHelper = repositoryHelper;
-        this.repositoryValidator = repositoryValidator;
-        this.saveExchangeRule = saveExchangeRule;
-
-        if (realLocalConnector != null)
-        {
-            try
-            {
-                this.realMetadataCollection = realLocalConnector.getMetadataCollection();
-            }
-            catch (Throwable  error)
-            {
-                /*
-                 * Nothing to do - will be logged in verifyEventProcessor
-                 */
-                this.realMetadataCollection = null;
-            }
-        }
-
-        this.verifyEventProcessor(methodName);
-
-        Connection connection = this.realLocalConnector.getConnection();
-        if (connection != null)
-        {
-            this.realRepositoryName = connection.getConnectionName();
-        }
-    }
-
-
-    /*
-     * ====================================
-     * OMRSInstanceEventProcessor
-     */
-
-
-    /**
-     * A new entity has been created.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param entity                         - details of the new entity
-     */
-    public void processNewEntityEvent(String       sourceName,
-                                      String       originatorMetadataCollectionId,
-                                      String       originatorServerName,
-                                      String       originatorServerType,
-                                      String       originatorOrganizationName,
-                                      EntityDetail entity)
-    {
-        final String methodName = "processNewEntityEvent";
-        final String entityParameterName = "entity";
-
-        updateReferenceEntity(sourceName,
-                              methodName,
-                              entityParameterName,
-                              originatorMetadataCollectionId,
-                              originatorServerName,
-                              entity);
-    }
-
-
-    /**
-     * An existing entity has been updated.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param entity                         - details of the new version of the entity.
-     */
-    public void processUpdatedEntityEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          EntityDetail entity)
-    {
-        final String methodName = "processUpdatedEntityEvent";
-        final String entityParameterName = "entity";
-
-        updateReferenceEntity(sourceName,
-                              methodName,
-                              entityParameterName,
-                              originatorMetadataCollectionId,
-                              originatorServerName,
-                              entity);
-    }
-
-
-    /**
-     * An update to an entity has been undone.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param entity                         - details of the version of the entity that has been restored.
-     */
-    public void processUndoneEntityEvent(String       sourceName,
-                                         String       originatorMetadataCollectionId,
-                                         String       originatorServerName,
-                                         String       originatorServerType,
-                                         String       originatorOrganizationName,
-                                         EntityDetail entity)
-    {
-        final String methodName = "processUndoneEntityEvent";
-        final String entityParameterName = "entity";
-
-        updateReferenceEntity(sourceName,
-                              methodName,
-                              entityParameterName,
-                              originatorMetadataCollectionId,
-                              originatorServerName,
-                              entity);
-    }
-
-
-    /**
-     * A new classification has been added to an entity.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param entity                         - details of the entity with the new classification added.
-     */
-    public void processClassifiedEntityEvent(String sourceName,
-                                             String originatorMetadataCollectionId,
-                                             String originatorServerName,
-                                             String originatorServerType,
-                                             String originatorOrganizationName,
-                                             EntityDetail entity)
-    {
-        final String methodName = "processClassifiedEntityEvent";
-        final String entityParameterName = "entity";
-
-        updateReferenceEntity(sourceName,
-                              methodName,
-                              entityParameterName,
-                              originatorMetadataCollectionId,
-                              originatorServerName,
-                              entity);
-    }
-
-
-    /**
-     * A classification has been removed from an entity.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param entity                         - details of the entity after the classification has been removed.
-     */
-    public void processDeclassifiedEntityEvent(String sourceName,
-                                               String originatorMetadataCollectionId,
-                                               String originatorServerName,
-                                               String originatorServerType,
-                                               String originatorOrganizationName,
-                                               EntityDetail entity)
-    {
-        final String methodName = "processDeclassifiedEntityEvent";
-        final String entityParameterName = "entity";
-
-        updateReferenceEntity(sourceName,
-                              methodName,
-                              entityParameterName,
-                              originatorMetadataCollectionId,
-                              originatorServerName,
-                              entity);
-    }
-
-
-    /**
-     * An existing classification has been changed on an entity.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param entity                         - details of the entity after the classification has been changed.
-     */
-    public void processReclassifiedEntityEvent(String       sourceName,
-                                               String       originatorMetadataCollectionId,
-                                               String       originatorServerName,
-                                               String       originatorServerType,
-                                               String       originatorOrganizationName,
-                                               EntityDetail entity)
-    {
-        final String methodName = "processReclassifiedEntityEvent";
-        final String entityParameterName = "entity";
-
-        updateReferenceEntity(sourceName,
-                              methodName,
-                              entityParameterName,
-                              originatorMetadataCollectionId,
-                              originatorServerName,
-                              entity);
-    }
-
-
-    /**
-     * An existing entity has been deleted.  This is a soft delete. This means it is still in the repository
-     * but it is no longer returned on queries.
-     * <p>
-     * All relationships to the entity are also soft-deleted and will no longer be usable.  These deleted relationships
-     * will be notified through separate events.
-     * <p>
-     * Details of the TypeDef are included with the entity's unique id (guid) to ensure the right entity is deleted in
-     * the remote repositories.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param entity                         - deleted entity
-     */
-    public void processDeletedEntityEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          EntityDetail entity)
-    {
-        final String methodName = "processDeletedEntityEvent";
-        final String entityParameterName = "entity";
-
-        updateReferenceEntity(sourceName,
-                              methodName,
-                              entityParameterName,
-                              originatorMetadataCollectionId,
-                              originatorServerName,
-                              entity);
-    }
-
-
-    /**
-     * A deleted entity has been permanently removed from the repository.  This request can not be undone.
-     * <p>
-     * Details of the TypeDef are included with the entity's unique id (guid) to ensure the right entity is purged in
-     * the remote repositories.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID                    - unique identifier for this entity's TypeDef
-     * @param typeDefName                    - name of this entity's TypeDef
-     * @param instanceGUID                   - unique identifier for the entity
-     */
-    public void processPurgedEntityEvent(String sourceName,
-                                         String originatorMetadataCollectionId,
-                                         String originatorServerName,
-                                         String originatorServerType,
-                                         String originatorOrganizationName,
-                                         String typeDefGUID,
-                                         String typeDefName,
-                                         String instanceGUID)
-    {
-        final String methodName = "processPurgedEntityEvent";
-
-        purgeReferenceInstance(sourceName,
-                               methodName,
-                               originatorMetadataCollectionId,
-                               originatorServerName,
-                               typeDefGUID,
-                               typeDefName,
-                               instanceGUID);
-    }
-
-
-    /**
-     * A deleted entity has been restored to the state it was before it was deleted.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param entity                         - details of the version of the entity that has been restored.
-     */
-    public void processRestoredEntityEvent(String       sourceName,
-                                           String       originatorMetadataCollectionId,
-                                           String       originatorServerName,
-                                           String       originatorServerType,
-                                           String       originatorOrganizationName,
-                                           EntityDetail entity)
-    {
-        final String methodName = "processRestoredEntityEvent";
-        final String entityParameterName = "entity";
-
-        updateReferenceEntity(sourceName,
-                              methodName,
-                              entityParameterName,
-                              originatorMetadataCollectionId,
-                              originatorServerName,
-                              entity);
-    }
-
-
-    /**
-     * The guid of an existing entity has been changed to a new value.  This is used if two different
-     * entities are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param originalEntityGUID             - the existing identifier for the entity.
-     * @param entity                         - new values for this entity, including the new guid.
-     */
-    public void processReIdentifiedEntityEvent(String       sourceName,
-                                               String       originatorMetadataCollectionId,
-                                               String       originatorServerName,
-                                               String       originatorServerType,
-                                               String       originatorOrganizationName,
-                                               String       originalEntityGUID,
-                                               EntityDetail entity)
-    {
-        final String methodName = "processReIdentifiedEntityEvent";
-        final String entityParameterName = "entity";
-
-        updateReferenceEntity(sourceName,
-                              methodName,
-                              entityParameterName,
-                              originatorMetadataCollectionId,
-                              originatorServerName,
-                              entity);
-    }
-
-
-    /**
-     * An existing entity has had its type changed.  Typically this action is taken to move an entity's
-     * type to either a super type (so the subtype can be deleted) or a new subtype (so additional properties can be
-     * added.)  However, the type can be changed to any compatible type.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param originalTypeDefSummary         - original details of this entity's TypeDef.
-     * @param entity                         - new values for this entity, including the new type information.
-     */
-    public void processReTypedEntityEvent(String         sourceName,
-                                          String         originatorMetadataCollectionId,
-                                          String         originatorServerName,
-                                          String         originatorServerType,
-                                          String         originatorOrganizationName,
-                                          TypeDefSummary originalTypeDefSummary,
-                                          EntityDetail   entity)
-    {
-        final String methodName = "processReTypedEntityEvent";
-        final String entityParameterName = "entity";
-
-        updateReferenceEntity(sourceName,
-                              methodName,
-                              entityParameterName,
-                              originatorMetadataCollectionId,
-                              originatorServerName,
-                              entity);
-    }
-
-
-    /**
-     * An existing entity has changed home repository.  This action is taken for example, if a repository
-     * becomes permanently unavailable, or if the user community updating this entity move to working
-     * from a different repository in the open metadata repository cluster.
-     *
-     * @param sourceName                       - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                         local repository, or event mapper name.
-     * @param originatorMetadataCollectionId   - unique identifier for the metadata collection hosted by the server that
-     *                                         sent the event.
-     * @param originatorServerName             - name of the server that the event came from.
-     * @param originatorServerType             - type of server that the event came from.
-     * @param originatorOrganizationName       - name of the organization that owns the server that sent the event.
-     * @param originalHomeMetadataCollectionId - unique identifier for the original home repository.
-     * @param entity                           - new values for this entity, including the new home information.
-     */
-    public void processReHomedEntityEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          String       originalHomeMetadataCollectionId,
-                                          EntityDetail entity)
-    {
-        final String methodName = "processReHomedEntityEvent";
-        final String entityParameterName = "entity";
-
-        updateReferenceEntity(sourceName,
-                              methodName,
-                              entityParameterName,
-                              originatorMetadataCollectionId,
-                              originatorServerName,
-                              entity);
-    }
-
-
-    /**
-     * The local repository is requesting that an entity from another repository's metadata collection is
-     * refreshed so the local repository can create a reference copy.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID                    - - unique identifier for this entity's TypeDef
-     * @param typeDefName                    - name of this entity's TypeDef
-     * @param instanceGUID                   - unique identifier for the entity
-     * @param homeMetadataCollectionId       - metadata collection id for the home of this instance.
-     */
-    public void processRefreshEntityRequested(String sourceName,
-                                              String originatorMetadataCollectionId,
-                                              String originatorServerName,
-                                              String originatorServerType,
-                                              String originatorOrganizationName,
-                                              String typeDefGUID,
-                                              String typeDefName,
-                                              String instanceGUID,
-                                              String homeMetadataCollectionId)
-    {
-        final String  methodName = "processRefreshEntityRequested";
-
-        try
-        {
-            verifyEventProcessor(methodName);
-
-            realMetadataCollection.refreshEntityReferenceCopy(sourceName,
-                                                              instanceGUID,
-                                                              typeDefGUID,
-                                                              typeDefName,
-                                                              originatorMetadataCollectionId);
-
-        }
-        catch (Throwable error)
-        {
-            OMRSAuditCode auditCode = OMRSAuditCode.UNEXPECTED_EXCEPTION_FROM_EVENT;
-            auditLog.logRecord(methodName,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(methodName,
-                                                                originatorServerName,
-                                                                originatorMetadataCollectionId,
-                                                                error.getMessage()),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * A remote repository in the cohort has sent entity details in response to a refresh request.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param entity                         - details of the requested entity
-     */
-    public void processRefreshEntityEvent(String       sourceName,
-                                          String       originatorMetadataCollectionId,
-                                          String       originatorServerName,
-                                          String       originatorServerType,
-                                          String       originatorOrganizationName,
-                                          EntityDetail entity)
-    {
-        final String methodName = "processReHomedEntityEvent";
-        final String entityParameterName = "entity";
-
-        updateReferenceEntity(sourceName,
-                              methodName,
-                              entityParameterName,
-                              originatorMetadataCollectionId,
-                              originatorServerName,
-                              entity);
-    }
-
-
-    /**
-     * A new relationship has been created.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param relationship                   - details of the new relationship
-     */
-    public void processNewRelationshipEvent(String       sourceName,
-                                            String       originatorMetadataCollectionId,
-                                            String       originatorServerName,
-                                            String       originatorServerType,
-                                            String       originatorOrganizationName,
-                                            Relationship relationship)
-    {
-        final String methodName = "processNewRelationshipEvent";
-        final String entityParameterName = "relationship";
-
-        updateReferenceRelationship(sourceName,
-                                    methodName,
-                                    entityParameterName,
-                                    originatorMetadataCollectionId,
-                                    originatorServerName,
-                                    relationship);
-    }
-
-
-    /**
-     * An existing relationship has been updated.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param relationship                   - details of the new version of the relationship.
-     */
-    public void processUpdatedRelationshipEvent(String       sourceName,
-                                                String       originatorMetadataCollectionId,
-                                                String       originatorServerName,
-                                                String       originatorServerType,
-                                                String       originatorOrganizationName,
-                                                Relationship relationship)
-    {
-        final String methodName = "processUpdatedRelationshipEvent";
-        final String entityParameterName = "relationship";
-
-        updateReferenceRelationship(sourceName,
-                                    methodName,
-                                    entityParameterName,
-                                    originatorMetadataCollectionId,
-                                    originatorServerName,
-                                    relationship);
-    }
-
-
-    /**
-     * An update to a relationship has been undone.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param relationship                   - details of the version of the relationship that has been restored.
-     */
-    public void processUndoneRelationshipEvent(String       sourceName,
-                                               String       originatorMetadataCollectionId,
-                                               String       originatorServerName,
-                                               String       originatorServerType,
-                                               String       originatorOrganizationName,
-                                               Relationship relationship)
-    {
-        final String methodName = "processUndoneRelationshipEvent";
-        final String entityParameterName = "relationship";
-
-        updateReferenceRelationship(sourceName,
-                                    methodName,
-                                    entityParameterName,
-                                    originatorMetadataCollectionId,
-                                    originatorServerName,
-                                    relationship);
-    }
-
-
-    /**
-     * An existing relationship has been deleted.  This is a soft delete. This means it is still in the repository
-     * but it is no longer returned on queries.
-     * <p>
-     * Details of the TypeDef are included with the relationship's unique id (guid) to ensure the right
-     * relationship is deleted in the remote repositories.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param relationship                   - deleted relationship
-     */
-    public void processDeletedRelationshipEvent(String       sourceName,
-                                                String       originatorMetadataCollectionId,
-                                                String       originatorServerName,
-                                                String       originatorServerType,
-                                                String       originatorOrganizationName,
-                                                Relationship relationship)
-    {
-        final String methodName = "processDeletedRelationshipEvent";
-        final String entityParameterName = "relationship";
-
-        updateReferenceRelationship(sourceName,
-                                    methodName,
-                                    entityParameterName,
-                                    originatorMetadataCollectionId,
-                                    originatorServerName,
-                                    relationship);
-    }
-
-
-    /**
-     * A deleted relationship has been permanently removed from the repository.  This request can not be undone.
-     * <p>
-     * Details of the TypeDef are included with the relationship's unique id (guid) to ensure the right
-     * relationship is purged in the remote repositories.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID                    - unique identifier for this relationship's TypeDef.
-     * @param typeDefName                    - name of this relationship's TypeDef.
-     * @param instanceGUID                   - unique identifier for the relationship.
-     */
-    public void processPurgedRelationshipEvent(String sourceName,
-                                               String originatorMetadataCollectionId,
-                                               String originatorServerName,
-                                               String originatorServerType,
-                                               String originatorOrganizationName,
-                                               String typeDefGUID,
-                                               String typeDefName,
-                                               String instanceGUID)
-    {
-        final String methodName = "processPurgedRelationshipEvent";
-
-        purgeReferenceInstance(sourceName,
-                               methodName,
-                               originatorMetadataCollectionId,
-                               originatorServerName,
-                               typeDefGUID,
-                               typeDefName,
-                               instanceGUID);
-    }
-
-
-    /**
-     * A deleted relationship has been restored to the state it was before it was deleted.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param relationship                   - details of the version of the relationship that has been restored.
-     */
-    public void processRestoredRelationshipEvent(String       sourceName,
-                                                 String       originatorMetadataCollectionId,
-                                                 String       originatorServerName,
-                                                 String       originatorServerType,
-                                                 String       originatorOrganizationName,
-                                                 Relationship relationship)
-    {
-        final String methodName = "processRestoredRelationshipEvent";
-        final String entityParameterName = "relationship";
-
-        updateReferenceRelationship(sourceName,
-                                    methodName,
-                                    entityParameterName,
-                                    originatorMetadataCollectionId,
-                                    originatorServerName,
-                                    relationship);
-    }
-
-
-    /**
-     * The guid of an existing relationship has changed.  This is used if two different
-     * relationships are discovered to have the same guid.  This is extremely unlikely but not impossible so
-     * the open metadata protocol has provision for this.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param originalRelationshipGUID       - the existing identifier for the relationship.
-     * @param relationship                   - new values for this relationship, including the new guid.
-     */
-    public void processReIdentifiedRelationshipEvent(String       sourceName,
-                                                     String       originatorMetadataCollectionId,
-                                                     String       originatorServerName,
-                                                     String       originatorServerType,
-                                                     String       originatorOrganizationName,
-                                                     String       originalRelationshipGUID,
-                                                     Relationship relationship)
-    {
-        final String methodName = "processReIdentifiedRelationshipEvent";
-        final String entityParameterName = "relationship";
-
-        updateReferenceRelationship(sourceName,
-                                    methodName,
-                                    entityParameterName,
-                                    originatorMetadataCollectionId,
-                                    originatorServerName,
-                                    relationship);
-    }
-
-
-    /**
-     * An existing relationship has had its type changed.  Typically this action is taken to move a relationship's
-     * type to either a super type (so the subtype can be deleted) or a new subtype (so additional properties can be
-     * added.)  However, the type can be changed to any compatible type.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param originalTypeDefSummary         - original details of this relationship's TypeDef.
-     * @param relationship                   - new values for this relationship, including the new type information.
-     */
-    public void processReTypedRelationshipEvent(String         sourceName,
-                                                String         originatorMetadataCollectionId,
-                                                String         originatorServerName,
-                                                String         originatorServerType,
-                                                String         originatorOrganizationName,
-                                                TypeDefSummary originalTypeDefSummary,
-                                                Relationship   relationship)
-    {
-        final String methodName = "processReTypedRelationshipEvent";
-        final String entityParameterName = "relationship";
-
-        updateReferenceRelationship(sourceName,
-                                    methodName,
-                                    entityParameterName,
-                                    originatorMetadataCollectionId,
-                                    originatorServerName,
-                                    relationship);
-    }
-
-
-    /**
-     * An existing relationship has changed home repository.  This action is taken for example, if a repository
-     * becomes permanently unavailable, or if the user community updating this relationship move to working
-     * from a different repository in the open metadata repository cluster.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param originalHomeMetadataCollection - unique identifier for the original home repository.
-     * @param relationship                   - new values for this relationship, including the new home information.
-     */
-    public void processReHomedRelationshipEvent(String       sourceName,
-                                                String       originatorMetadataCollectionId,
-                                                String       originatorServerName,
-                                                String       originatorServerType,
-                                                String       originatorOrganizationName,
-                                                String       originalHomeMetadataCollection,
-                                                Relationship relationship)
-    {
-        final String methodName = "processReHomedRelationshipEvent";
-        final String entityParameterName = "relationship";
-
-        updateReferenceRelationship(sourceName,
-                                    methodName,
-                                    entityParameterName,
-                                    originatorMetadataCollectionId,
-                                    originatorServerName,
-                                    relationship);
-    }
-
-
-    /**
-     * A repository has requested the home repository of a relationship send details of the relationship so
-     * the local repository can create a reference copy of the instance.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param typeDefGUID                    - unique identifier for this instance's TypeDef
-     * @param typeDefName                    - name of this relationship's TypeDef
-     * @param instanceGUID                   - unique identifier for the instance
-     * @param homeMetadataCollectionId       - metadata collection id for the home of this instance.
-     */
-    public void processRefreshRelationshipRequest(String sourceName,
-                                                  String originatorMetadataCollectionId,
-                                                  String originatorServerName,
-                                                  String originatorServerType,
-                                                  String originatorOrganizationName,
-                                                  String typeDefGUID,
-                                                  String typeDefName,
-                                                  String instanceGUID,
-                                                  String homeMetadataCollectionId)
-    {
-        final String    methodName = "processRefreshRelationshipRequest";
-
-        try
-        {
-            verifyEventProcessor(methodName);
-
-            realMetadataCollection.refreshRelationshipReferenceCopy(sourceName,
-                                                                    instanceGUID,
-                                                                    typeDefGUID,
-                                                                    typeDefName,
-                                                                    originatorMetadataCollectionId);
-
-        }
-        catch (Throwable error)
-        {
-            OMRSAuditCode auditCode = OMRSAuditCode.UNEXPECTED_EXCEPTION_FROM_EVENT;
-            auditLog.logRecord(methodName,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(methodName,
-                                                                originatorServerName,
-                                                                originatorMetadataCollectionId,
-                                                                error.getMessage()),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * The local repository is refreshing the information about a relationship for the other
-     * repositories in the cohort.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param relationship                   - relationship details
-     */
-    public void processRefreshRelationshipEvent(String       sourceName,
-                                                String       originatorMetadataCollectionId,
-                                                String       originatorServerName,
-                                                String       originatorServerType,
-                                                String       originatorOrganizationName,
-                                                Relationship relationship)
-    {
-        final String methodName = "processRefreshRelationshipEvent";
-        final String entityParameterName = "relationship";
-
-        updateReferenceRelationship(sourceName,
-                                    methodName,
-                                    entityParameterName,
-                                    originatorMetadataCollectionId,
-                                    originatorServerName,
-                                    relationship);
-    }
-
-
-    /**
-     * An open metadata repository has detected two metadata instances with the same identifier (guid).
-     * This is a serious error because it could lead to corruption of the metadata collections within the cohort.
-     * When this occurs, all repositories in the cohort delete their reference copies of the metadata instances and
-     * at least one of the instances has its GUID changed in its respective home repository.  The updated instance(s)
-     * are redistributed around the cohort.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - metadata collection id of the repository reporting the conflicting instance
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param targetMetadataCollectionId     - metadata collection id of other repository with the conflicting instance
-     * @param targetTypeDefSummary           - details of the target instance's TypeDef
-     * @param targetInstanceGUID             - unique identifier for the source instance
-     * @param otherOrigin                    - origin of the other (older) metadata instance
-     * @param otherMetadataCollectionId      - metadata collection of the other (older) metadata instance
-     * @param otherTypeDefSummary            - details of the other (older) instance's TypeDef
-     * @param otherInstanceGUID              - unique identifier for the other (older) instance
-     * @param errorMessage                   - description of the error.
-     */
-    public void processConflictingInstancesEvent(String                 sourceName,
-                                                 String                 originatorMetadataCollectionId,
-                                                 String                 originatorServerName,
-                                                 String                 originatorServerType,
-                                                 String                 originatorOrganizationName,
-                                                 String                 targetMetadataCollectionId,
-                                                 TypeDefSummary         targetTypeDefSummary,
-                                                 String                 targetInstanceGUID,
-                                                 String                 otherMetadataCollectionId,
-                                                 InstanceProvenanceType otherOrigin,
-                                                 TypeDefSummary         otherTypeDefSummary,
-                                                 String                 otherInstanceGUID,
-                                                 String                 errorMessage)
-    {
-
-    }
-
-
-    /**
-     * An open metadata repository has detected an inconsistency in the version of the type used in an updated metadata
-     * instance compared to its stored version.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param originatorMetadataCollectionId - metadata collection id of the repository reporting the conflicting instance
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param originatorServerType           - type of server that the event came from.
-     * @param originatorOrganizationName     - name of the organization that owns the server that sent the event.
-     * @param targetMetadataCollectionId     - metadata collection id of other repository with the conflicting instance
-     * @param targetTypeDefSummary           - details of the target instance's TypeDef
-     * @param targetInstanceGUID             - unique identifier for the source instance
-     * @param otherTypeDefSummary            - details of the local copy of the instance's TypeDef
-     * @param errorMessage                   - description of the error.
-     */
-    public void processConflictingTypeEvent(String         sourceName,
-                                            String         originatorMetadataCollectionId,
-                                            String         originatorServerName,
-                                            String         originatorServerType,
-                                            String         originatorOrganizationName,
-                                            String         targetMetadataCollectionId,
-                                            TypeDefSummary targetTypeDefSummary,
-                                            String         targetInstanceGUID,
-                                            TypeDefSummary otherTypeDefSummary,
-                                            String         errorMessage)
-    {
-
-    }
-
-
-    /*
-     * =======================
-     * OMRSInstanceRetrievalEventProcessor
-     */
-
-
-    /**
-     * Pass an entity that has been retrieved from a remote open metadata repository so it can be validated and
-     * (if the rules permit) cached in the local repository.
-     *
-     * @param sourceName - name of the source of this event.
-     * @param metadataCollectionId - unique identifier for the metadata from the remote repository
-     * @param entity               - the retrieved entity.
-     * @return Validated and processed entity.
-     */
-    public EntityDetail processRetrievedEntity(String       sourceName,
-                                               String       metadataCollectionId,
-                                               EntityDetail entity)
-    {
-        EntityDetail   processedEntity = new EntityDetail(entity);
-
-        processedEntity.setMetadataCollectionId(metadataCollectionId);
-
-        final String methodName = "processRetrievedEntity";
-        final String entityParameterName = "entity";
-
-        updateReferenceEntity(sourceName,
-                              methodName,
-                              entityParameterName,
-                              metadataCollectionId,
-                              localServerName,
-                              entity);
-        return entity;
-    }
-
-
-    /**
-     * Pass a list of entities that have been retrieved from a remote open metadata repository so they can be
-     * validated and (if the rules permit) cached in the local repository.
-     *
-     * @param sourceName - name of the source of this event.
-     * @param metadataCollectionId - unique identifier for the metadata from the remote repository
-     * @param entities             - the retrieved relationships
-     * @return the validated and processed relationships
-     */
-    public List<EntityDetail> processRetrievedEntities(String                  sourceName,
-                                                       String                  metadataCollectionId,
-                                                       List<EntityDetail>      entities)
-    {
-        List<EntityDetail> processedEntities = new ArrayList<>();
-
-        for (EntityDetail  entity : entities)
-        {
-            EntityDetail   processedEntity = this.processRetrievedEntity(sourceName, metadataCollectionId, entity);
-
-            if (processedEntity != null)
-            {
-                processedEntities.add(processedEntity);
-            }
-        }
-
-        return processedEntities;
-    }
-
-
-    /**
-     * Pass a relationship that has been retrieved from a remote open metadata repository so it can be validated and
-     * (if the rules permit) cached in the local repository.
-     *
-     * @param sourceName - name of the source of this event.
-     * @param metadataCollectionId - unique identifier for the metadata from the remote repository
-     * @param relationship         - the retrieved relationship
-     * @return the validated and processed relationship
-     */
-    public Relationship processRetrievedRelationship(String       sourceName,
-                                                     String       metadataCollectionId,
-                                                     Relationship relationship)
-    {
-        Relationship   processedRelationship = new Relationship(relationship);
-
-        /*
-         * Ensure the metadata collection is set up correctly.
-         */
-        if (processedRelationship.getMetadataCollectionId() == null)
-        {
-            processedRelationship.setMetadataCollectionId(metadataCollectionId);
-        }
-
-
-        /*
-         * Discover whether the instance should be learned.
-         */
-        if (saveExchangeRule.learnInstanceEvent(processedRelationship))
-        {
-            try
-            {
-                if (realMetadataCollection.isRelationshipKnown(sourceName, processedRelationship.getGUID()) == null)
-                {
-                    InstanceType type = processedRelationship.getType();
-
-                    if (type != null)
-                    {
-                        /*
-                         * It would be possible to save the relationship directly into the repository,
-                         * but it is possible that some of the properties have been suppressed for the
-                         * requesting user Id.  In which case saving it now would result in other users
-                         * seeing a restricted view of the
-                         */
-                        realMetadataCollection.refreshRelationshipReferenceCopy(localServerName,
-                                                                                processedRelationship.getGUID(),
-                                                                                type.getTypeDefGUID(),
-                                                                                type.getTypeDefName(),
-                                                                                metadataCollectionId);
-                    }
-                }
-            }
-            catch (Throwable   error)
-            {
-                final String methodName = "processRetrievedRelationship";
-
-                OMRSAuditCode auditCode = OMRSAuditCode.UNEXPECTED_EXCEPTION_FROM_EVENT;
-                auditLog.logRecord(methodName,
-                                   auditCode.getLogMessageId(),
-                                   auditCode.getSeverity(),
-                                   auditCode.getFormattedLogMessage(methodName,
-                                                                    sourceName,
-                                                                    metadataCollectionId,
-                                                                    error.getMessage()),
-                                   null,
-                                   auditCode.getSystemAction(),
-                                   auditCode.getUserAction());
-            }
-        }
-
-        return processedRelationship;
-    }
-
-
-    /**
-     * Pass a list of relationships that have been retrieved from a remote open metadata repository so they can be
-     * validated and (if the rules permit) cached in the local repository.
-     *
-     * @param sourceName - name of the source of this event.
-     * @param metadataCollectionId - unique identifier for the metadata from the remote repository
-     * @param relationships        - the list of retrieved relationships
-     * @return the validated and processed relationships
-     */
-    public List<Relationship> processRetrievedRelationships(String             sourceName,
-                                                            String             metadataCollectionId,
-                                                            List<Relationship> relationships)
-    {
-        List<Relationship> processedRelationships = new ArrayList<>();
-
-        for (Relationship  relationship : relationships)
-        {
-            Relationship processedRelationship = this.processRetrievedRelationship(sourceName,
-                                                                                   metadataCollectionId,
-                                                                                   relationship);
-
-            if (processedRelationship != null)
-            {
-                processedRelationships.add(processedRelationship);
-            }
-        }
-
-        return processedRelationships;
-    }
-
-
-    /*
-     * ==============================
-     * Private methods
-     * ==============================
-     */
-
-
-    /**
-     * Update the reference entity in the local repository.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param methodName                     - name of the event method
-     * @param entityParameterName            - name of the parameter that passed the entity.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param entity                         - details of the new entity
-     */
-    private void updateReferenceEntity(String       sourceName,
-                                       String       methodName,
-                                       String       entityParameterName,
-                                       String       originatorMetadataCollectionId,
-                                       String       originatorServerName,
-                                       EntityDetail entity)
-    {
-        try
-        {
-            verifyEventProcessor(methodName);
-            repositoryValidator.validateReferenceInstanceHeader(realRepositoryName,
-                                                                localMetadataCollectionId,
-                                                                entityParameterName,
-                                                                entity,
-                                                                methodName);
-
-            if (saveExchangeRule.processInstanceEvent(entity))
-            {
-                realMetadataCollection.saveEntityReferenceCopy(sourceName, entity);
-            }
-        }
-        catch (Throwable error)
-        {
-            OMRSAuditCode auditCode = OMRSAuditCode.UNEXPECTED_EXCEPTION_FROM_EVENT;
-            auditLog.logRecord(methodName,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(methodName,
-                                                                originatorServerName,
-                                                                originatorMetadataCollectionId,
-                                                                error.getMessage()),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Update the reference relationship in the local repository.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param methodName                     - name of the event method
-     * @param entityParameterName            - name of the parameter that passed the relationship.
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param relationship                   - details of the relationship
-     */
-    private void updateReferenceRelationship(String       sourceName,
-                                             String       methodName,
-                                             String       entityParameterName,
-                                             String       originatorMetadataCollectionId,
-                                             String       originatorServerName,
-                                             Relationship relationship)
-    {
-        try
-        {
-            verifyEventProcessor(methodName);
-            repositoryValidator.validateReferenceInstanceHeader(realRepositoryName,
-                                                                localMetadataCollectionId,
-                                                                entityParameterName,
-                                                                relationship,
-                                                                methodName);
-
-            if (saveExchangeRule.processInstanceEvent(relationship))
-            {
-                realMetadataCollection.saveRelationshipReferenceCopy(sourceName, relationship);
-            }
-        }
-        catch (Throwable error)
-        {
-            OMRSAuditCode auditCode = OMRSAuditCode.UNEXPECTED_EXCEPTION_FROM_EVENT;
-            auditLog.logRecord(methodName,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(methodName,
-                                                                originatorServerName,
-                                                                originatorMetadataCollectionId,
-                                                                error.getMessage()),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-        }
-    }
-
-
-    /**
-     * Purge a reference copy of an instance from the repository.
-     *
-     * @param sourceName                     - name of the source of the event.  It may be the cohort name for incoming events or the
-     *                                       local repository, or event mapper name.
-     * @param methodName                     - name of the purge method
-     * @param originatorMetadataCollectionId - unique identifier for the metadata collection hosted by the server that
-     *                                       sent the event.
-     * @param originatorServerName           - name of the server that the event came from.
-     * @param typeDefGUID                    - unique identifier for this entity's TypeDef
-     * @param typeDefName                    - name of this entity's TypeDef
-     * @param instanceGUID                   - unique identifier for the entity
-     */
-    private void purgeReferenceInstance(String sourceName,
-                                        String methodName,
-                                        String originatorMetadataCollectionId,
-                                        String originatorServerName,
-                                        String typeDefGUID,
-                                        String typeDefName,
-                                        String instanceGUID)
-    {
-        try
-        {
-            verifyEventProcessor(methodName);
-
-            realMetadataCollection.purgeEntityReferenceCopy(sourceName,
-                                                            instanceGUID,
-                                                            typeDefGUID,
-                                                            typeDefName,
-                                                            originatorMetadataCollectionId);
-
-        }
-        catch (Throwable error)
-        {
-            OMRSAuditCode auditCode = OMRSAuditCode.UNEXPECTED_EXCEPTION_FROM_EVENT;
-            auditLog.logRecord(methodName,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(methodName,
-                                                                originatorServerName,
-                                                                originatorMetadataCollectionId,
-                                                                error.getMessage()),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-        }
-    }
-
-    /**
-     * Validate that this event processor is correctly initialized.
-     *
-     * @param methodName - name of the method being called
-     */
-    private void verifyEventProcessor(String    methodName)
-    {
-        if (localMetadataCollectionId == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_LOCAL_METADATA_COLLECTION;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-
-        if (realLocalConnector == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NO_LOCAL_REPOSITORY;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-
-        if (realMetadataCollection == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_LOCAL_METADATA_COLLECTION;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-
-        if (repositoryHelper ==null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_REPOSITORY_HELPER;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-
-        if (repositoryValidator == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_REPOSITORY_VALIDATOR;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage();
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-
-        if (saveExchangeRule == null)
-        {
-            OMRSErrorCode errorCode    = OMRSErrorCode.NULL_EXCHANGE_RULE;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(methodName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-
-        if (realMetadataCollection == null)
-        {
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_METADATA_COLLECTION;
-            String        errorMessage = errorCode.getErrorMessageId() + errorCode.getFormattedErrorMessage(realRepositoryName);
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-    }
-}


[28/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/admin/OMRSOperationalServices.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/admin/OMRSOperationalServices.java b/omrs/src/main/java/org/apache/atlas/omrs/admin/OMRSOperationalServices.java
deleted file mode 100644
index e72d783..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/admin/OMRSOperationalServices.java
+++ /dev/null
@@ -1,1012 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.admin;
-
-import org.apache.atlas.ocf.Connector;
-import org.apache.atlas.ocf.ConnectorBroker;
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.omrs.admin.properties.CohortConfig;
-import org.apache.atlas.omrs.admin.properties.EnterpriseAccessConfig;
-import org.apache.atlas.omrs.admin.properties.LocalRepositoryConfig;
-import org.apache.atlas.omrs.admin.properties.RepositoryServicesConfig;
-import org.apache.atlas.omrs.archivemanager.OMRSArchiveManager;
-import org.apache.atlas.omrs.archivemanager.store.OpenMetadataArchiveStoreConnector;
-import org.apache.atlas.omrs.auditlog.OMRSAuditCode;
-import org.apache.atlas.omrs.auditlog.OMRSAuditLog;
-import org.apache.atlas.omrs.auditlog.OMRSAuditingComponent;
-import org.apache.atlas.omrs.auditlog.store.OMRSAuditLogStore;
-import org.apache.atlas.omrs.enterprise.connectormanager.OMRSConnectionConsumer;
-import org.apache.atlas.omrs.enterprise.connectormanager.OMRSEnterpriseConnectorManager;
-import org.apache.atlas.omrs.enterprise.repositoryconnector.EnterpriseOMRSConnection;
-import org.apache.atlas.omrs.enterprise.repositoryconnector.EnterpriseOMRSRepositoryConnector;
-import org.apache.atlas.omrs.eventmanagement.OMRSRepositoryEventExchangeRule;
-import org.apache.atlas.omrs.eventmanagement.OMRSRepositoryEventManager;
-import org.apache.atlas.omrs.eventmanagement.repositoryeventmapper.OMRSRepositoryEventMapperConnector;
-import org.apache.atlas.omrs.ffdc.exception.OMRSConfigErrorException;
-import org.apache.atlas.omrs.ffdc.OMRSErrorCode;
-import org.apache.atlas.omrs.ffdc.exception.OMRSLogicErrorException;
-import org.apache.atlas.omrs.ffdc.exception.OMRSRuntimeException;
-import org.apache.atlas.omrs.enterprise.repositoryconnector.EnterpriseOMRSConnectorProvider;
-import org.apache.atlas.omrs.localrepository.repositoryconnector.LocalOMRSConnectorProvider;
-import org.apache.atlas.omrs.localrepository.repositoryconnector.LocalOMRSRepositoryConnector;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryContentManager;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryHelper;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSRepositoryValidator;
-import org.apache.atlas.omrs.localrepository.repositorycontentmanager.OMRSTypeDefValidator;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-import org.apache.atlas.omrs.metadatahighway.OMRSMetadataHighwayManager;
-import org.apache.atlas.omrs.rest.server.OMRSRepositoryRESTServices;
-import org.apache.atlas.omrs.topicconnectors.OMRSTopicConnector;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.UUID;
-
-/**
- * OMRSOperationalServices provides the OMAG Server with access to the OMRS capabilities.
- * This includes managing the local metadata repository, connecting and disconnecting from the metadata
- * highway and supporting administrative
- * actions captured through the OMAG REST interface.
- *
- * Examples of the types of capabilities offered by the OMRS Manager include:
- * <ul>
- *     <li>Initialize and Shutdown the OMRS</li>
- *     <li>See the state of the cluster</li>
- *     <li>see the state of the connectors</li>
- *     <li>View the audit log</li>
- *     <li>Load new connector JARs</li>
- *     <li>Connect/disconnect from the metadata highway</li>
- * </ul>
- */
-public class OMRSOperationalServices
-{
-    /*
-     * The audit log provides a verifiable record of the membership of the open metadata repository cohort and the
-     * metadata exchange activity they are involved in.  The Logger is for standard debug.
-     */
-    private static final Logger       log      = LoggerFactory.getLogger(OMRSOperationalServices.class);
-    private static final OMRSAuditLog auditLog = new OMRSAuditLog(OMRSAuditingComponent.OPERATIONAL_SERVICES);
-
-
-    private String                         localServerName;         /* Initialized in constructor */
-    private String                         localServerType;         /* Initialized in constructor */
-    private String                         localOrganizationName;   /* Initialized in constructor */
-    private String                         localServerURL;          /* Initialized in constructor */
-    private int                            maxPageSize;             /* Initialized in constructor */
-
-    private String                         localMetadataCollectionId     = null;
-
-    private OMRSRepositoryContentManager   localRepositoryContentManager = null;
-    private OMRSRepositoryEventManager     localRepositoryEventManager   = null;
-    private OMRSMetadataHighwayManager     metadataHighwayManager        = null;
-    private OMRSEnterpriseConnectorManager enterpriseConnectorManager    = null;
-    private OMRSTopicConnector             enterpriseOMRSTopicConnector  = null;
-    private LocalOMRSRepositoryConnector   localRepositoryConnector      = null;
-    private OMRSArchiveManager             archiveManager                = null;
-
-
-    /**
-     * Constructor used at server startup.
-     *
-     * @param localServerName - name of the local server
-     * @param localServerType - type of the local server
-     * @param organizationName - name of the organization that owns the local server
-     * @param localServerURL - URL root for this server.
-     * @param maxPageSize - maximum number of records that can be requested on the pageSize parameter
-     */
-    public OMRSOperationalServices(String                   localServerName,
-                                   String                   localServerType,
-                                   String                   organizationName,
-                                   String                   localServerURL,
-                                   int                      maxPageSize)
-    {
-        /*
-         * Save details about the local server
-         */
-        this.localServerName = localServerName;
-        this.localServerType = localServerType;
-        this.localOrganizationName = organizationName;
-        this.localServerURL = localServerURL;
-        this.maxPageSize = maxPageSize;
-    }
-
-
-    /**
-     * Return the Enterprise OMRS Topic Connector.
-     *
-     * @return OMRSTopicConnector for use by the Access Services.
-     */
-    public OMRSTopicConnector getEnterpriseOMRSTopicConnector()
-    {
-        return enterpriseOMRSTopicConnector;
-    }
-
-
-    /**
-     * Create repository connector for an access service.
-     *
-     * @param accessServiceName - name of the access service name.
-     * @return a repository connector that is able to retrieve and maintain information from all connected repositories.
-     */
-    public OMRSRepositoryConnector getEnterpriseOMRSRepositoryConnector(String   accessServiceName)
-    {
-        final String    actionDescription = "getEnterpriseOMRSRepositoryConnector";
-
-        ConnectorBroker     connectorBroker = new ConnectorBroker();
-
-        try
-        {
-            Connector connector = connectorBroker.getConnector(new EnterpriseOMRSConnection());
-
-            EnterpriseOMRSRepositoryConnector omrsRepositoryConnector = (EnterpriseOMRSRepositoryConnector)connector;
-
-            omrsRepositoryConnector.setAccessServiceName(accessServiceName);
-            omrsRepositoryConnector.setMaxPageSize(maxPageSize);
-
-            OMRSAuditCode auditCode = OMRSAuditCode.NEW_ENTERPRISE_CONNECTOR;
-            auditLog.logRecord(actionDescription,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(accessServiceName),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-
-            omrsRepositoryConnector.start();
-
-            return omrsRepositoryConnector;
-        }
-        catch (Throwable   error)
-        {
-            OMRSAuditCode auditCode = OMRSAuditCode.ENTERPRISE_CONNECTOR_FAILED;
-            auditLog.logRecord(actionDescription,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(accessServiceName),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-
-            return null;
-        }
-    }
-
-
-    /**
-     * Create an audit log for an external component.
-     *
-     * @param componentId - numerical identifier for the component.
-     * @param componentName - display name for the component.
-     * @param componentDescription - description of the component.
-     * @param componentWikiURL - link to more information.
-     * @return new audit log object
-     */
-    public OMRSAuditLog  getAuditLog(int    componentId,
-                                     String componentName,
-                                     String componentDescription,
-                                     String componentWikiURL)
-    {
-        return new OMRSAuditLog(componentId, componentName, componentDescription, componentWikiURL);
-    }
-
-
-    /**
-     * Initialize the OMRS component for the Open Metadata Repository Services (OMRS).  The configuration
-     * is taken as is.  Any configuration errors are reported as exceptions.
-     *
-     * @param repositoryServicesConfig - current configuration values
-     */
-    public void initialize(RepositoryServicesConfig repositoryServicesConfig)
-    {
-        final String   actionDescription = "Initialize Open Metadata Repository Operational Services";
-        final String   methodName        = "initialize()";
-        OMRSAuditCode  auditCode;
-
-
-        if (repositoryServicesConfig == null)
-        {
-            /*
-             * Throw exception as without configuration information the OMRS can not start.
-             */
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_CONFIG;
-            String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage();
-
-            throw new OMRSLogicErrorException(errorCode.getHTTPErrorCode(),
-                                              this.getClass().getName(),
-                                              methodName,
-                                              errorMessage,
-                                              errorCode.getSystemAction(),
-                                              errorCode.getUserAction());
-        }
-
-        /*
-         * Initialize the audit log
-         */
-        OMRSAuditLog.initialize(localServerName,
-                                localServerType,
-                                localOrganizationName,
-                                getAuditLogStores(repositoryServicesConfig.getAuditLogConnections()));
-
-        /*
-         * Log that the OMRS is starting.  There is another Audit log message logged at the end of this method
-         * to confirm that all of the pieces started successfully.
-         */
-        auditCode = OMRSAuditCode.OMRS_INITIALIZING;
-        auditLog.logRecord(actionDescription,
-                           auditCode.getLogMessageId(),
-                           auditCode.getSeverity(),
-                           auditCode.getFormattedLogMessage(),
-                           null,
-                           auditCode.getSystemAction(),
-                           auditCode.getUserAction());
-        /*
-         * There are 3 major groupings of components, each are optional and have linkages between one another.
-         * These are the enterprise access services, local repository and the metadata highway (cohort services).
-         * Each group as its own config.
-         */
-        EnterpriseAccessConfig  enterpriseAccessConfig = repositoryServicesConfig.getEnterpriseAccessConfig();
-        LocalRepositoryConfig   localRepositoryConfig  = repositoryServicesConfig.getLocalRepositoryConfig();
-        List<CohortConfig>      cohortConfigList       = repositoryServicesConfig.getCohortConfigList();
-
-        /*
-         * The local repository is optional.  However, the repository content manager is still
-         * used to manage the validation of TypeDefs and the creation of metadata instances.
-         * It is loaded with any TypeDefs from the archives to seed its in-memory TypeDef cache.
-         */
-        localRepositoryContentManager = new OMRSRepositoryContentManager();
-
-        /*
-         * Begin with the enterprise repository services.  They are always needed since the
-         * Open Metadata Access Services (OMAS) is dependent on them.  There are 2 modes of operation: local only
-         * and enterprise access.  Enterprise access provide an enterprise view of metadata
-         * across all of the open metadata repository cohorts that this server connects to.
-         * If EnterpriseAccessConfig is null, the enterprise repository services run in local only mode.
-         * Otherwise the supplied configuration properties enable it to be configured for enterprise access.
-         *
-         * The connector manager manages the list of connectors to metadata repositories that the enterprise
-         * repository services will use.  The OMRS Topic is used to publish events from these repositories to support the
-         * OMASs' event notifications.
-         */
-        enterpriseConnectorManager = initializeEnterpriseConnectorManager(enterpriseAccessConfig, maxPageSize);
-        enterpriseOMRSTopicConnector = initializeEnterpriseOMRSTopicConnector(enterpriseAccessConfig);
-
-        /*
-         * The archive manager loads pre-defined types and instances that are stored in open metadata archives.
-         */
-        archiveManager = initializeOpenMetadataArchives(repositoryServicesConfig.getOpenMetadataArchiveConnections());
-
-        /*
-         * The repository validator and helper are used by repository connectors to verify the types and instances
-         * they receive from external parties and to build new types and instances.  Instances of these
-         * classes are created in each of the repository connectors (and possibly the event mappers as well).
-         * They are given a link to the repository content manager since it has the cache of TypeDefs.
-         */
-        OMRSRepositoryValidator.setRepositoryContentManager(localRepositoryContentManager);
-        OMRSRepositoryHelper.setRepositoryContentManager(localRepositoryContentManager);
-
-        /*
-         * Start up the local repository if one is configured.
-         */
-        if (localRepositoryConfig != null)
-        {
-            localMetadataCollectionId = localRepositoryConfig.getMetadataCollectionId();
-
-            auditCode = OMRSAuditCode.LOCAL_REPOSITORY_INITIALIZING;
-            auditLog.logRecord(actionDescription,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(localMetadataCollectionId),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-
-            localRepositoryEventManager =
-                    new OMRSRepositoryEventManager(
-                            new OMRSRepositoryEventExchangeRule("Local Repository Events to Send",
-                                                                localRepositoryContentManager,
-                                                                localRepositoryConfig.getEventsToSendRule(),
-                                                                localRepositoryConfig.getSelectedTypesToSend()),
-                            new OMRSRepositoryValidator(localRepositoryContentManager));
-
-            /*
-             * Pass the local metadata collectionId to the AuditLog
-             */
-            OMRSAuditLog.setLocalMetadataCollectionId(localMetadataCollectionId);
-
-            localRepositoryConnector = initializeLocalRepository(localRepositoryConfig);
-
-            /*
-             * Start processing of events for the local repository.
-             */
-            try
-            {
-                localRepositoryConnector.start();
-            }
-            catch (Throwable error)
-            {
-                auditCode = OMRSAuditCode.LOCAL_REPOSITORY_FAILED_TO_START;
-                auditLog.logRecord(actionDescription,
-                                   auditCode.getLogMessageId(),
-                                   auditCode.getSeverity(),
-                                   auditCode.getFormattedLogMessage(error.getMessage()),
-                                   null,
-                                   auditCode.getSystemAction(),
-                                   auditCode.getUserAction());
-            }
-
-            /*
-             * Set up the OMRS REST Services with the local repository so it is able to process incoming REST
-             * calls.
-             */
-            OMRSRepositoryRESTServices.setLocalRepository(localRepositoryConnector, localServerURL);
-        }
-
-
-        /*
-         * This is the point at which the open metadata archives will be processed.  The archives are processed
-         * using the same mechanisms as TypeDef/Instance events received from other members of the cohort.  This
-         * is because the metadata in the archives is effectively reference metadata that is owned by the archive
-         * and should not be updated in the local repository.
-         *
-         * Note that if the local repository is not configured then only TypeDefs are processed because there
-         * is nowhere to store the instances.  The TypeDefs are used for validation of metadata that is passed to
-         * the enterprise repository services.
-         */
-        if (localRepositoryConnector != null)
-        {
-            archiveManager.setLocalRepository(localRepositoryContentManager,
-                                              localRepositoryConnector.getIncomingInstanceEventProcessor());
-        }
-        else
-        {
-            archiveManager.setLocalRepository(localRepositoryContentManager,
-                                              null);
-        }
-
-        /*
-         * Connect the local repository connector to the connector manager if they both exist.  This means
-         * that enterprise repository requests will include metadata from the local repository.
-         */
-        if ((localRepositoryConnector != null) && (enterpriseConnectorManager != null))
-        {
-            enterpriseConnectorManager.setLocalConnector(localRepositoryConnector.getMetadataCollectionId(),
-                                                         localRepositoryConnector);
-        }
-
-        /*
-         * Local operation is ready, now connect to the metadata highway.
-         */
-        if (cohortConfigList != null)
-        {
-            auditCode = OMRSAuditCode.METADATA_HIGHWAY_INITIALIZING;
-            auditLog.logRecord(actionDescription,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-
-            metadataHighwayManager = initializeCohorts(localServerName,
-                                                       localServerType,
-                                                       localOrganizationName,
-                                                       localRepositoryConnector,
-                                                       localRepositoryContentManager,
-                                                       enterpriseConnectorManager,
-                                                       enterpriseOMRSTopicConnector,
-                                                       cohortConfigList);
-        }
-
-        /*
-         * All done and no exceptions :)
-         */
-        auditCode = OMRSAuditCode.OMRS_INITIALIZED;
-        auditLog.logRecord(actionDescription,
-                           auditCode.getLogMessageId(),
-                           auditCode.getSeverity(),
-                           auditCode.getFormattedLogMessage(),
-                           null,
-                           auditCode.getSystemAction(),
-                           auditCode.getUserAction());
-    }
-
-
-    /**
-     * Return the connector to the Enterprise OMRS Topic.  If null is returned it means the Enterprise OMRS Topic
-     * is not needed.  A configuration error exception is thrown if there is a problem with the connection properties
-     *
-     * @param enterpriseAccessConfig - configuration from the OMAG server
-     * @return connector to the Enterprise OMRS Topic or null
-     */
-    private OMRSTopicConnector  initializeEnterpriseOMRSTopicConnector(EnterpriseAccessConfig  enterpriseAccessConfig)
-    {
-        OMRSTopicConnector    enterpriseOMRSTopicConnector = null;
-
-        if (enterpriseAccessConfig != null)
-        {
-            Connection        enterpriseOMRSTopicConnection = enterpriseAccessConfig.getEnterpriseOMRSTopicConnection();
-
-            if (enterpriseOMRSTopicConnection != null)
-            {
-                enterpriseOMRSTopicConnector = getTopicConnector("Enterprise Access",
-                                                                 enterpriseOMRSTopicConnection);
-            }
-        }
-
-        return enterpriseOMRSTopicConnector;
-    }
-
-
-    /**
-     * Initialize the OMRSEnterpriseConnectorManager and the EnterpriseOMRSConnector class.  If the
-     * enterprise access configuration is null it means federation is not enabled.  However, the enterprise
-     * connector manager is still initialized to pass the local repository information to the Enterprise
-     * OMRS repository connectors.
-     *
-     * @param enterpriseAccessConfig - enterprise access configuration from the OMAG server
-     * @return initialized OMRSEnterpriseConnectorManager object
-     */
-    private OMRSEnterpriseConnectorManager initializeEnterpriseConnectorManager(EnterpriseAccessConfig  enterpriseAccessConfig,
-                                                                                int                     maxPageSize)
-    {
-        OMRSEnterpriseConnectorManager   enterpriseConnectorManager = null;
-
-        if (enterpriseAccessConfig == null)
-        {
-            /*
-             * Federation is not enabled in this server
-             */
-            enterpriseConnectorManager = new OMRSEnterpriseConnectorManager(false, maxPageSize);
-
-            /*
-             * Pass the address of the enterprise connector manager to the OMRSEnterpriseConnectorProvider class as
-             * the connector manager is needed by each instance of the EnterpriseOMRSConnector.
-             */
-            EnterpriseOMRSConnectorProvider.initialize(enterpriseConnectorManager,
-                                                       localRepositoryContentManager,
-                                                       localServerName,
-                                                       localServerType,
-                                                       localOrganizationName,
-                                                       null,
-                                                       null);
-        }
-        else
-        {
-            /*
-             * Enterprise access is enabled in this server
-             */
-            final String   actionDescription = "Initialize Repository Operational Services";
-
-            OMRSAuditCode auditCode = OMRSAuditCode.ENTERPRISE_ACCESS_INITIALIZING;
-            auditLog.logRecord(actionDescription,
-                               auditCode.getLogMessageId(),
-                               auditCode.getSeverity(),
-                               auditCode.getFormattedLogMessage(),
-                               null,
-                               auditCode.getSystemAction(),
-                               auditCode.getUserAction());
-
-            enterpriseConnectorManager = new OMRSEnterpriseConnectorManager(true, maxPageSize);
-
-            /*
-             * Pass the address of the enterprise connector manager to the OMRSEnterpriseConnectorProvider class as
-             * the connector manager is needed by each instance of the EnterpriseOMRSConnector.
-             */
-            EnterpriseOMRSConnectorProvider.initialize(enterpriseConnectorManager,
-                                                       localRepositoryContentManager,
-                                                       localServerName,
-                                                       localServerType,
-                                                       localOrganizationName,
-                                                       enterpriseAccessConfig.getEnterpriseMetadataCollectionId(),
-                                                       enterpriseAccessConfig.getEnterpriseMetadataCollectionName());
-        }
-
-        return enterpriseConnectorManager;
-    }
-
-
-    /**
-     * If the local repository is configured then set up the local repository connector.  The
-     * information for the local repository's OMRS Repository Connector is configured as a OCF connection in
-     * the local repository config.  In fact there are potentially 2 connections configured.  There is a connection
-     * for remote access to the local repository and an optional connection for a locally optimized connector to use
-     * within the local server.
-     *
-     * @param localRepositoryConfig - local repository config.
-     * @return wrapped OMRS Repository Connector
-     */
-    private LocalOMRSRepositoryConnector  initializeLocalRepository(LocalRepositoryConfig  localRepositoryConfig)
-    {
-        LocalOMRSRepositoryConnector  localRepositoryConnector = null;
-
-        /*
-         * If the local repository is configured then create the connector to the local repository and
-         * configure it.  It is valid to have a server with no local repository.
-         */
-        if (localRepositoryConfig != null)
-        {
-            /*
-             * Create the local repository's Connector Provider.  This is a special connector provider that
-             * creates an OMRS Repository Connector that wraps the real OMRS Repository Connector.  The
-             * outer OMRS Repository Connector manages events, audit logging and error handling.
-             */
-            LocalOMRSConnectorProvider localConnectorProvider =
-                    new LocalOMRSConnectorProvider(localMetadataCollectionId,
-                                                   localRepositoryConfig.getLocalRepositoryRemoteConnection(),
-                                                   getLocalRepositoryEventMapper(localRepositoryConfig.getEventMapperConnection()),
-                                                   localRepositoryEventManager,
-                                                   localRepositoryContentManager,
-                                                   new OMRSRepositoryEventExchangeRule("Local Repository Events To Save",
-                                                                                       localRepositoryContentManager,
-                                                                                       localRepositoryConfig.getEventsToSaveRule(),
-                                                                                       localRepositoryConfig.getSelectedTypesToSave()));
-
-
-            /*
-             * Create the local repository's connector.  If there is no locally optimized connection, the
-             * remote connection is used.
-             */
-            Connection                    localRepositoryConnection;
-
-            if (localRepositoryConfig.getLocalRepositoryLocalConnection() != null)
-            {
-                localRepositoryConnection = localRepositoryConfig.getLocalRepositoryLocalConnection();
-            }
-            else
-            {
-                localRepositoryConnection = localRepositoryConfig.getLocalRepositoryRemoteConnection();
-            }
-            localRepositoryConnector = this.getLocalOMRSConnector(localRepositoryConnection,
-                                                                  localConnectorProvider);
-        }
-
-        return localRepositoryConnector;
-    }
-
-
-    /**
-     * Return an OMRS archive manager configured with the list of Open Metadata Archive Stores to use.
-     *
-     * @param openMetadataArchiveConnections - connections to the open metadata archive stores
-     * @return OMRS archive manager
-     */
-    private OMRSArchiveManager initializeOpenMetadataArchives(List<Connection>    openMetadataArchiveConnections)
-    {
-        ArrayList<OpenMetadataArchiveStoreConnector> openMetadataArchives = null;
-
-        if (openMetadataArchiveConnections != null)
-        {
-            openMetadataArchives = new ArrayList<>();
-
-            for (Connection archiveConnection : openMetadataArchiveConnections)
-            {
-                if (archiveConnection != null)
-                {
-                    /*
-                     * Any problems creating the connectors will result in an exception.
-                     */
-                    openMetadataArchives.add(this.getOpenMetadataArchiveStore(archiveConnection));
-                }
-            }
-        }
-
-        return new OMRSArchiveManager(openMetadataArchives);
-    }
-
-
-    /**
-     * A server can optionally connect to one or more open metadata repository cohorts.  There is one
-     * CohortConfig for each cohort that the server is to connect to.  The communication between
-     * members of a cohort is event-based.  The parameters provide supplied to the metadata highway manager
-     * include values need to send compliant OMRS Events.
-     *
-     * @param localServerName - the name of the local server. This value flows in OMRS Events.
-     * @param localServerType - the type of the local server. This value flows in OMRS Events.
-     * @param localOrganizationName - the name of the organization that owns this server.
-     *                              This value flows in OMRS Events.
-     * @param localRepositoryConnector - the local repository connector is supplied if there is a local repository
-     *                                 for this server.
-     * @param localRepositoryContentManager - repository content manager for this server
-     * @param connectionConsumer - the connection consumer is from the enterprise repository services.  It
-     *                           receives connection information about the other members of the cohort(s)
-     *                           to enable enterprise access.
-     * @param enterpriseTopicConnector - connector to the enterprise repository services Topic Connector.
-     *                                 The cohorts replicate their events to the enterprise OMRS Topic so
-     *                                 the Open Metadata Access Services (OMASs) can monitor changing metadata.
-     * @param cohortConfigList - list of cohorts to connect to (and the configuration to do it)
-     * @return newly created and initialized metadata highway manager.
-     */
-    private OMRSMetadataHighwayManager  initializeCohorts(String                          localServerName,
-                                                          String                          localServerType,
-                                                          String                          localOrganizationName,
-                                                          LocalOMRSRepositoryConnector    localRepositoryConnector,
-                                                          OMRSRepositoryContentManager    localRepositoryContentManager,
-                                                          OMRSConnectionConsumer          connectionConsumer,
-                                                          OMRSTopicConnector              enterpriseTopicConnector,
-                                                          List<CohortConfig>              cohortConfigList)
-    {
-        /*
-         * The metadata highway manager is constructed with the values that are the same for every cohort.
-         */
-        OMRSMetadataHighwayManager  metadataHighwayManager = new OMRSMetadataHighwayManager(localServerName,
-                                                                                            localServerType,
-                                                                                            localOrganizationName,
-                                                                                            localRepositoryConnector,
-                                                                                            localRepositoryContentManager,
-                                                                                            connectionConsumer,
-                                                                                            enterpriseTopicConnector);
-
-        /*
-         * The metadata highway manager is initialize with the details specific to each cohort.
-         */
-        metadataHighwayManager.initialize(cohortConfigList);
-
-        return metadataHighwayManager;
-    }
-
-
-    /**
-     * Shutdown the Open Metadata Repository Services.
-     *
-     * @param permanent - boolean flag indicating whether this server permanently shutting down or not
-     * @return boolean indicated whether the disconnect was successful.
-     */
-    public boolean disconnect(boolean   permanent)
-    {
-        /*
-         * Log that the OMRS is disconnecting.  There is another Audit log message logged at the end of this method
-         * to confirm that all of the pieces disconnected successfully.
-         */
-        final String   actionDescription = "Disconnect Repository Operational Services";
-        OMRSAuditCode auditCode = OMRSAuditCode.OMRS_DISCONNECTING;
-        auditLog.logRecord(actionDescription,
-                           auditCode.getLogMessageId(),
-                           auditCode.getSeverity(),
-                           auditCode.getFormattedLogMessage(),
-                           null,
-                           auditCode.getSystemAction(),
-                           auditCode.getUserAction());
-
-
-        if (metadataHighwayManager != null)
-        {
-            metadataHighwayManager.disconnect(permanent);
-        }
-
-        if (enterpriseOMRSTopicConnector != null)
-        {
-            try
-            {
-                enterpriseOMRSTopicConnector.disconnect();
-            }
-            catch (Throwable  error)
-            {
-                auditCode = OMRSAuditCode.ENTERPRISE_TOPIC_DISCONNECT_ERROR;
-                auditLog.logRecord(actionDescription,
-                                   auditCode.getLogMessageId(),
-                                   auditCode.getSeverity(),
-                                   auditCode.getFormattedLogMessage(error.getMessage()),
-                                   null,
-                                   auditCode.getSystemAction(),
-                                   auditCode.getUserAction());
-            }
-        }
-
-        /*
-         * This will disconnect all repository connectors - both local and remote.
-         */
-        if (enterpriseConnectorManager != null)
-        {
-            enterpriseConnectorManager.disconnect();
-        }
-
-        if (archiveManager != null)
-        {
-            archiveManager.close();
-        }
-
-        auditCode = OMRSAuditCode.OMRS_DISCONNECTED;
-        auditLog.logRecord(actionDescription,
-                           auditCode.getLogMessageId(),
-                           auditCode.getSeverity(),
-                           auditCode.getFormattedLogMessage(),
-                           null,
-                           auditCode.getSystemAction(),
-                           auditCode.getUserAction());
-
-        return true;
-    }
-
-
-    /**
-     * Return the connectors to the AuditLog store using the connection information supplied.  If there is a
-     * problem with the connection information that means a connector can not be created, an exception is thrown.
-     *
-     * @param auditLogStoreConnections - properties for the audit log stores
-     * @return audit log store connector
-     */
-    private List<OMRSAuditLogStore>  getAuditLogStores(List<Connection> auditLogStoreConnections)
-    {
-        List<OMRSAuditLogStore>   auditLogStores = new ArrayList<>();
-
-        for (Connection auditLogStoreConnection : auditLogStoreConnections)
-        {
-            auditLogStores.add(getAuditLogStore(auditLogStoreConnection));
-        }
-
-        if (auditLogStores.isEmpty())
-        {
-            return null;
-        }
-        else
-        {
-            return auditLogStores;
-        }
-    }
-
-
-    /**
-     * Return a connector to an audit log store.
-     *
-     * @param auditLogStoreConnection - connection with the parameters of the audit log store
-     * @return connector for audit log store.
-     */
-    private OMRSAuditLogStore getAuditLogStore(Connection   auditLogStoreConnection)
-    {
-        try
-        {
-            ConnectorBroker         connectorBroker = new ConnectorBroker();
-            Connector               connector       = connectorBroker.getConnector(auditLogStoreConnection);
-
-            return (OMRSAuditLogStore)connector;
-        }
-        catch (Throwable   error)
-        {
-            String methodName = "getAuditLogStore()";
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("Unable to create audit log store connector: " + error.toString());
-            }
-
-            /*
-             * Throw runtime exception to indicate that the audit log is not available.
-             */
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_AUDIT_LOG_STORE;
-            String errorMessage = errorCode.getErrorMessageId()
-                    + errorCode.getFormattedErrorMessage(localServerName);
-
-            throw new OMRSConfigErrorException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction(),
-                                               error);
-        }
-    }
-
-
-    /**
-     * Creates a topic connector using information from the supplied topic connection.  This connector supported
-     * the Open Connector Framework (OCF) so it is possible to configure different connector implementations for
-     * different event/messaging infrastructure.   If there is a problem with the connection information
-     * that means a connector can not be created, an exception is thrown.
-     *
-     * @param sourceName - name of the user of this topic
-     * @param topicConnection - connection parameters
-     * @return OMRSTopicConnector for managing communications with the event/messaging infrastructure.
-     */
-    private OMRSTopicConnector getTopicConnector(String     sourceName,
-                                                 Connection topicConnection)
-    {
-        try
-        {
-            ConnectorBroker    connectorBroker = new ConnectorBroker();
-            Connector          connector       = connectorBroker.getConnector(topicConnection);
-
-            return (OMRSTopicConnector)connector;
-        }
-        catch (Throwable   error)
-        {
-            String methodName = "getTopicConnector()";
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("Unable to create topic connector: " + error.toString());
-            }
-
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_TOPIC_CONNECTOR;
-            String        errorMessage = errorCode.getErrorMessageId()
-                                       + errorCode.getFormattedErrorMessage(sourceName);
-
-            throw new OMRSConfigErrorException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction(),
-                                               error);
-
-        }
-    }
-
-
-    /**
-     * Return the connector to an open metadata archive store.  Each connector instance can access a single
-     * open metadata archive.  If there is a problem with the connection information
-     * that means a connector can not be created, an exception is thrown.
-     *
-     * @param openMetadataArchiveStoreConnection - properties used to create the connection
-     * @return open metadata archive connector
-     */
-    private OpenMetadataArchiveStoreConnector  getOpenMetadataArchiveStore(Connection   openMetadataArchiveStoreConnection)
-    {
-        try
-        {
-            ConnectorBroker          connectorBroker = new ConnectorBroker();
-            Connector                connector       = connectorBroker.getConnector(openMetadataArchiveStoreConnection);
-
-            return (OpenMetadataArchiveStoreConnector)connector;
-        }
-        catch (Throwable   error)
-        {
-            String methodName = "getOpenMetadataArchiveStore()";
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("Unable to create open metadata archive connector: " + error.toString());
-            }
-
-            /*
-             * Throw runtime exception to indicate that the open metadata archive store is not available.
-             */
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_ARCHIVE_STORE;
-            String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage(localServerName);
-
-            throw new OMRSRuntimeException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction(),
-                                           error);
-        }
-    }
-
-
-    /**
-     * The local repository may need an event mapper to convert its proprietary events to OMRS Events.
-     * An event mapper is implemented as an OMRSRepositoryEventMapper Connector and it is initialized through the
-     * OCF Connector Broker using an OCF connection.
-     *
-     * @param localRepositoryEventMapperConnection - connection to the local repository's event mapper.
-     * @return local repository's event mapper
-     */
-    private OMRSRepositoryEventMapperConnector getLocalRepositoryEventMapper(Connection   localRepositoryEventMapperConnection)
-    {
-        /*
-         * If the event mapper is null it means the local repository does not need an event mapper.
-         * This is not an error.
-         */
-        if (localRepositoryEventMapperConnection == null)
-        {
-            return null;
-        }
-
-        /*
-         * The event mapper is a pluggable component that is implemented as an OCF connector.  Its configuration is
-         * passed to it in a Connection object and the ConnectorBroker manages its creation and initialization.
-         */
-        try
-        {
-            ConnectorBroker           connectorBroker = new ConnectorBroker();
-            Connector                 connector       = connectorBroker.getConnector(localRepositoryEventMapperConnection);
-
-            return (OMRSRepositoryEventMapperConnector)connector;
-        }
-        catch (Throwable   error)
-        {
-            String methodName = "getLocalRepositoryEventMapper()";
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("Unable to create local repository event mapper connector: " + error.toString());
-            }
-
-            /*
-             * Throw runtime exception to indicate that the local repository's event mapper is not available.
-             */
-            OMRSErrorCode errorCode = OMRSErrorCode.NULL_EVENT_MAPPER;
-            String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage(localServerName);
-
-            throw new OMRSConfigErrorException(errorCode.getHTTPErrorCode(),
-                                               this.getClass().getName(),
-                                               methodName,
-                                               errorMessage,
-                                               errorCode.getSystemAction(),
-                                               errorCode.getUserAction(),
-                                               error);
-        }
-    }
-
-
-
-    /**
-     * Private method to convert a Connection into a LocalOMRSRepositoryConnector using the LocalOMRSConnectorProvider.
-     * The supplied connection is for the real local connector.  LocalOMRSRepositoryConnector will create the
-     * real local connector and ensure all requests it receives are passed to it.
-     *
-     * @param connection - Connection properties for the real local connection
-     * @param connectorProvider - connector provider to create the repository connector
-     * @return LocalOMRSRepositoryConnector wrapping the real local connector
-     */
-    private LocalOMRSRepositoryConnector getLocalOMRSConnector(Connection                       connection,
-                                                               LocalOMRSConnectorProvider       connectorProvider)
-    {
-        String     methodName = "getLocalOMRSConnector()";
-
-        /*
-         * Although the localOMRSConnector is an OMRSRepositoryConnector, its initialization is
-         * managed directly with its connector provider (rather than using the connector broker) because it
-         * needs access to a variety of OMRS components in order for it to support access to the local
-         * repository by other OMRS components.  As such it needs more variables at initialization.
-         */
-        try
-        {
-            LocalOMRSRepositoryConnector localRepositoryConnector = (LocalOMRSRepositoryConnector)connectorProvider.getConnector(connection);
-
-            localRepositoryConnector.setMaxPageSize(maxPageSize);
-            localRepositoryConnector.setServerName(localServerName);
-            localRepositoryConnector.setServerType(localServerType);
-            localRepositoryConnector.setOrganizationName(localOrganizationName);
-            localRepositoryConnector.setRepositoryHelper(new OMRSRepositoryHelper(localRepositoryContentManager));
-            localRepositoryConnector.setRepositoryValidator(new OMRSRepositoryValidator(localRepositoryContentManager));
-            localRepositoryConnector.setMetadataCollectionId(localMetadataCollectionId);
-
-            return localRepositoryConnector;
-        }
-        catch (Throwable  error)
-        {
-            /*
-             * If there is a problem initializing the connector then the ConnectorBroker will have created a
-             * detailed exception already.  The only error case that this method has introduced is the cast
-             * of the Connector to OMRSRepositoryConnector.  This could occur if the connector configured is a valid
-             * OCF Connector but not an OMRSRepositoryConnector.
-             */
-            String  connectionName = connection.getConnectionName();
-
-            OMRSErrorCode errorCode = OMRSErrorCode.INVALID_OMRS_CONNECTION;
-            String errorMessage = errorCode.getErrorMessageId()
-                                + errorCode.getFormattedErrorMessage(connectionName);
-
-            throw new OMRSRuntimeException(errorCode.getHTTPErrorCode(),
-                                           this.getClass().getName(),
-                                           methodName,
-                                           errorMessage,
-                                           errorCode.getSystemAction(),
-                                           errorCode.getUserAction(),
-                                           error);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/CohortConfig.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/CohortConfig.java b/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/CohortConfig.java
deleted file mode 100644
index 6dffbf7..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/CohortConfig.java
+++ /dev/null
@@ -1,258 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.admin.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * CohortConfig provides the configuration properties used to connect to an open metadata repository cohort.
- * <ul>
- *     <li>
- *         cohortName is a descriptive name for the cohort that is used primarily for messages and diagnostics.
- *         It is also used to create a default name for the cohort's OMRS Topic and the cohortRegistry's store
- *         if these names are not explicitly defined.
- *     </li>
- *     <li>
- *         cohortRegistryConnection is the connection properties necessary to create the connector to the
- *         cohort registry store.  This is the store where the cohort registry keeps information about its
- *         local metadata collection Id and details of other repositories in the cohort.
- *
- *         The default value is to use a local file called "cohort.registry" that is stored in the server's
- *         home directory.
- *     </li>
- *     <li>
- *         cohortOMRSTopicConnection is the connection properties necessary to create the connector to the OMRS Topic.
- *         This is used to send/receive events between members of the open metadata repository cohort.
- *     </li>
- *     <li>
- *         cohortOMRSTopicProtocolVersion defines the version of the event payload to use when communicating with other
- *         members of the cohort through the OMRS Topic.
- *     </li>
- *     <li>
- *         eventsToProcessRule defines how incoming events on the OMRS Topic should be processed.
- *     </li>
- *     <li>
- *         selectedTypesToProcess - list of TypeDefs used if the eventsToProcess rule (above) says
- *         "SELECTED_TYPES" - otherwise it is set to null.
- *     </li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class CohortConfig
-{
-    private String                           cohortName                     = null;
-    private Connection                       cohortRegistryConnection       = null;
-    private Connection                       cohortOMRSTopicConnection      = null;
-    private OpenMetadataEventProtocolVersion cohortOMRSTopicProtocolVersion = null;
-    private OpenMetadataExchangeRule         eventsToProcessRule            = null;
-    private ArrayList<TypeDefSummary>        selectedTypesToProcess         = null;
-
-
-
-    /**
-     * Default constructor does nothing.
-     */
-    public CohortConfig()
-    {
-    }
-
-
-    /**
-     * Constructor to populate all config values.
-     *
-     * @param cohortName - name of the cohort
-     * @param cohortRegistryConnection - connection to the cohort registry store
-     * @param cohortOMRSTopicConnection - connection to the OMRS Topic
-     * @param eventsToProcessRule - rule indicating whether metadata events should be sent to the federated OMRS Topic.
-     * @param selectedTypesToProcess - if the rule says "SELECTED_TYPES" then this is the list of types - otherwise
-     *                                it is set to null.
-     */
-    public CohortConfig(String                      cohortName,
-                        Connection                  cohortRegistryConnection,
-                        Connection                  cohortOMRSTopicConnection,
-                        OpenMetadataExchangeRule    eventsToProcessRule,
-                        ArrayList<TypeDefSummary>   selectedTypesToProcess)
-    {
-        this.cohortName = cohortName;
-        this.cohortRegistryConnection = cohortRegistryConnection;
-        this.cohortOMRSTopicConnection = cohortOMRSTopicConnection;
-        this.eventsToProcessRule = eventsToProcessRule;
-        this.selectedTypesToProcess = selectedTypesToProcess;
-    }
-
-
-    /**
-     * Return the name of the cohort.
-     *
-     * @return String name
-     */
-    public String getCohortName()
-    {
-        return cohortName;
-    }
-
-
-    /**
-     * Set up the name of the cohort.
-     *
-     * @param cohortName String
-     */
-    public void setCohortName(String cohortName)
-    {
-        this.cohortName = cohortName;
-    }
-
-
-    /**
-     * Set up the connection to the cohort registry store.
-     *
-     * @return Connection object
-     */
-    public Connection getCohortRegistryConnection()
-    {
-        return cohortRegistryConnection;
-    }
-
-
-    /**
-     * Set up the connection for the cohort registry store.
-     *
-     * @param cohortRegistryConnection - Connection object
-     */
-    public void setCohortRegistryConnection(Connection cohortRegistryConnection)
-    {
-        this.cohortRegistryConnection = cohortRegistryConnection;
-    }
-
-
-    /**
-     * Return the connection to the cohort's OMRS Topic.
-     *
-     * @return Connection object
-     */
-    public Connection getCohortOMRSTopicConnection()
-    {
-        return cohortOMRSTopicConnection;
-    }
-
-    /**
-     * Set up the connection to the cohort's OMRS Topic.
-     *
-     * @param cohortOMRSTopicConnection - Connection object
-     */
-    public void setCohortOMRSTopicConnection(Connection cohortOMRSTopicConnection)
-    {
-        this.cohortOMRSTopicConnection = cohortOMRSTopicConnection;
-    }
-
-
-    /**
-     * Return the protocol version to use when exchanging events amongst the cohort members.
-     *
-     * @return protocol version enum
-     */
-    public OpenMetadataEventProtocolVersion getCohortOMRSTopicProtocolVersion()
-    {
-        return cohortOMRSTopicProtocolVersion;
-    }
-
-
-    /**
-     * Set up the protocol version to use when exchanging events amongst the cohort members.
-     *
-     * @param cohortOMRSTopicProtocolVersion - protocol version enum
-     */
-    public void setCohortOMRSTopicProtocolVersion(OpenMetadataEventProtocolVersion cohortOMRSTopicProtocolVersion)
-    {
-        this.cohortOMRSTopicProtocolVersion = cohortOMRSTopicProtocolVersion;
-    }
-
-
-    /**
-     * Return the rule indicating whether incoming metadata events from a cohort should be processed.
-     *
-     * @return OpenMetadataExchangeRule - NONE, JUST_TYPEDEFS, SELECTED_TYPES and ALL.
-     */
-    public OpenMetadataExchangeRule getEventsToProcessRule()
-    {
-        return eventsToProcessRule;
-    }
-
-
-    /**
-     * Set up the rule indicating whether incoming metadata events from a cohort should be processed.
-     *
-     * @param eventsToProcessRule - OpenMetadataExchangeRule - NONE, JUST_TYPEDEFS, SELECTED_TYPES and ALL.
-     */
-    public void setEventsToProcessRule(OpenMetadataExchangeRule eventsToProcessRule)
-    {
-        this.eventsToProcessRule = eventsToProcessRule;
-    }
-
-
-    /**
-     * Return the list of TypeDefs used if the eventsToProcess rule (above) says "SELECTED_TYPES" - otherwise
-     * it is set to null.
-     *
-     * @return list of TypeDefs that determine which metadata instances to process
-     */
-    public List<TypeDefSummary> getSelectedTypesToProcess()
-    {
-        if (selectedTypesToProcess == null)
-        {
-            return null;
-        }
-        else
-        {
-            return selectedTypesToProcess;
-        }
-    }
-
-
-    /**
-     * Set up the list of TypeDefs used if the EventsToProcess rule (above) says "SELECTED_TYPES" - otherwise
-     * it is set to null.
-     *
-     * @param selectedTypesToProcess - list of TypeDefs that determine which metadata instances to process
-     */
-    public void setSelectedTypesToProcess(List<TypeDefSummary> selectedTypesToProcess)
-    {
-        if (selectedTypesToProcess == null)
-        {
-            this.selectedTypesToProcess = null;
-        }
-        else
-        {
-            this.selectedTypesToProcess = new ArrayList<>(selectedTypesToProcess);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/EnterpriseAccessConfig.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/EnterpriseAccessConfig.java b/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/EnterpriseAccessConfig.java
deleted file mode 100644
index c9e809c..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/EnterpriseAccessConfig.java
+++ /dev/null
@@ -1,177 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.admin.properties;
-
-import org.apache.atlas.ocf.properties.beans.Connection;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * EnterpriseAccessConfig describes the properties that control the enterprise access services that the
- * OMRS provides to the Open Metadata Access Services (OMASs).
- * <ul>
- *     <li>
- *         enterpriseMetadataCollectionName - name of the combined metadata collection covered by the connected open
- *                                        metadata repositories.  Used for messages.
- *     </li>
- *     <li>
- *         enterpriseMetadataCollectionId - unique identifier for the combined metadata collection covered by the
- *                                      connected open metadata repositories.
- *     </li>
- *     <li>
- *         enterpriseOMRSTopicConnection - connection for the enterprise OMRS Topic connector.
- *     </li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class EnterpriseAccessConfig
-{
-    private String                           enterpriseMetadataCollectionName   = null;
-    private String                           enterpriseMetadataCollectionId     = null;
-    private Connection                       enterpriseOMRSTopicConnection      = null;
-    private OpenMetadataEventProtocolVersion enterpriseOMRSTopicProtocolVersion = null;
-
-
-    /**
-     * Default Constructor does nothing.
-     */
-    public EnterpriseAccessConfig()
-    {
-    }
-
-
-    /**
-     * Constructor to set up all configuration values.
-     *
-     * @param enterpriseMetadataCollectionName - name of the combined metadata collection covered by the connected open
-     *                                        metadata repositories.  Used for messages.
-     * @param enterpriseMetadataCollectionId - unique identifier for the combined metadata collection covered by the
-     *                                      connected open metadata repositories.
-     * @param enterpriseOMRSTopicConnection - connection for the OMRS Topic connector.
-     * @param enterpriseOMRSTopicProtocolVersion - protocol version enum
-     */
-    public EnterpriseAccessConfig(String                           enterpriseMetadataCollectionName,
-                                  String                           enterpriseMetadataCollectionId,
-                                  Connection                       enterpriseOMRSTopicConnection,
-                                  OpenMetadataEventProtocolVersion enterpriseOMRSTopicProtocolVersion)
-    {
-        this.enterpriseMetadataCollectionName = enterpriseMetadataCollectionName;
-        this.enterpriseMetadataCollectionId = enterpriseMetadataCollectionId;
-        this.enterpriseOMRSTopicConnection = enterpriseOMRSTopicConnection;
-        this.enterpriseOMRSTopicProtocolVersion = enterpriseOMRSTopicProtocolVersion;
-    }
-
-
-    /**
-     * Return the name of the combined metadata collection covered by the connected open
-     * metadata repositories.  Used for messages.
-     *
-     * @return String name
-     */
-    public String getEnterpriseMetadataCollectionName()
-    {
-        return enterpriseMetadataCollectionName;
-    }
-
-
-    /**
-     * Set up the name of the combined metadata collection covered by the connected open
-     * metadata repositories.  Used for messages.
-     *
-     * @param enterpriseMetadataCollectionName - String name
-     */
-    public void setEnterpriseMetadataCollectionName(String enterpriseMetadataCollectionName)
-    {
-        this.enterpriseMetadataCollectionName = enterpriseMetadataCollectionName;
-    }
-
-
-    /**
-     * Return the unique identifier for the combined metadata collection covered by the
-     * connected open metadata repositories.
-     *
-     * @return Unique identifier (guid)
-     */
-    public String getEnterpriseMetadataCollectionId()
-    {
-        return enterpriseMetadataCollectionId;
-    }
-
-
-    /**
-     * Set up the unique identifier for the combined metadata collection covered by the
-     * connected open metadata repositories.
-     *
-     * @param enterpriseMetadataCollectionId - Unique identifier (guid)
-     */
-    public void setEnterpriseMetadataCollectionId(String enterpriseMetadataCollectionId)
-    {
-        this.enterpriseMetadataCollectionId = enterpriseMetadataCollectionId;
-    }
-
-
-    /**
-     * Return the connection for the Enterprise OMRS Topic connector.
-     *
-     * @return Connection object
-     */
-    public Connection getEnterpriseOMRSTopicConnection()
-    {
-        return enterpriseOMRSTopicConnection;
-    }
-
-
-    /**
-     * Set up the connection for the Enterprise OMRS Topic connector.
-     *
-     * @param enterpriseOMRSTopicConnection - Connection object
-     */
-    public void setEnterpriseOMRSTopicConnection(Connection enterpriseOMRSTopicConnection)
-    {
-        this.enterpriseOMRSTopicConnection = enterpriseOMRSTopicConnection;
-    }
-
-
-    /**
-     * Return the protocol version to use on the EnterpriseOMRSTopicConnector.
-     *
-     * @return protocol version enum
-     */
-    public OpenMetadataEventProtocolVersion getEnterpriseOMRSTopicProtocolVersion()
-    {
-        return enterpriseOMRSTopicProtocolVersion;
-    }
-
-
-    /**
-     * Set up the protocol version to use on the EnterpriseOMRSTopicConnector.
-     *
-     * @param enterpriseOMRSTopicProtocolVersion - protocol version enum
-     */
-    public void setEnterpriseOMRSTopicProtocolVersion(OpenMetadataEventProtocolVersion enterpriseOMRSTopicProtocolVersion)
-    {
-        this.enterpriseOMRSTopicProtocolVersion = enterpriseOMRSTopicProtocolVersion;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/LocalRepositoryConfig.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/LocalRepositoryConfig.java b/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/LocalRepositoryConfig.java
deleted file mode 100644
index 25ad601..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/LocalRepositoryConfig.java
+++ /dev/null
@@ -1,348 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.admin.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.omrs.metadatacollection.properties.typedefs.TypeDefSummary;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * LocalRepositoryConfig provides the properties to control the behavior of the metadata repository associated with
- * this server.
- * <ul>
- *     <li>
- *         metadataCollectionId - unique id of local repository's metadata collection.  If this value is set to
- *         null, the server will generate a unique Id.
- *     </li>
- *     <li>
- *         localRepositoryLocalConnection - the connection properties used to create a locally optimized connector
- *         to the local repository for use by this local server's components. If this value is null then the
- *         localRepositoryRemoteConnection is used.
- *     </li>
- *     <li>
- *         localRepositoryRemoteConnection - the connection properties used to create a connector
- *         to the local repository for use by remote servers.
- *     </li>
- *     <li>
- *         eventsToSaveRule - enumeration describing which open metadata repository events should be saved to
- *         the local repository.
- *     </li>
- *     <li>
- *         selectedTypesToSave - list of TypeDefs in supported of the eventsToSave.SELECTED_TYPES option.
- *     </li>
- *     <li>
- *         eventsToSendRule - enumeration describing which open metadata repository events should be sent from
- *         the local repository.
- *     </li>
- *     <li>
- *         selectedTypesToSend - list of TypeDefs in supported of the eventsToSend.SELECTED_TYPES option.
- *     </li>
- *     <li>
- *         eventMapperConnection - the connection properties for the event mapper for the local repository.
- *         The event mapper is an optional component used when the local repository has proprietary external
- *         APIs that can change metadata in the repository without going through the OMRS interfaces.
- *         It maps the proprietary events from the local repository to the OMRS Events.
- *     </li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class LocalRepositoryConfig
-{
-    private String                    metadataCollectionId              = null;
-    private Connection                localRepositoryLocalConnection    = null;
-    private Connection                localRepositoryRemoteConnection   = null;
-    private OpenMetadataExchangeRule  eventsToSaveRule                  = null;
-    private ArrayList<TypeDefSummary> selectedTypesToSave               = null;
-    private OpenMetadataExchangeRule  eventsToSendRule                  = null;
-    private ArrayList<TypeDefSummary> selectedTypesToSend               = null;
-    private Connection                eventMapperConnection             = null;
-
-
-    /**
-     * Constructor
-     *
-     * @param metadataCollectionId - unique id of local repository's metadata collection
-     * @param localRepositoryLocalConnection - the connection properties used to create a locally optimized connector
-     *         to the local repository for use by this local server's components.
-     * @param localRepositoryRemoteConnection - the connection properties used to create a connector
-     *         to the local repository for use by remote servers.
-     * @param eventsToSaveRule - enumeration describing which open metadata repository events should be saved to
-     *                         the local repository.
-     * @param selectedTypesToSave - list of TypeDefs in supported of the eventsToSave.SELECTED_TYPES option.
-     * @param eventsToSendRule - enumeration describing which open metadata repository events should be sent from
-     *                         the local repository.
-     * @param selectedTypesToSend - list of TypeDefs in supported of the eventsToSend.SELECTED_TYPES option.
-     * @param eventMapperConnection - Connection for the local repository's event mapper.  This is optional.
-     */
-    public LocalRepositoryConfig(String                    metadataCollectionId,
-                                 Connection                localRepositoryLocalConnection,
-                                 Connection                localRepositoryRemoteConnection,
-                                 OpenMetadataExchangeRule  eventsToSaveRule,
-                                 List<TypeDefSummary>      selectedTypesToSave,
-                                 OpenMetadataExchangeRule  eventsToSendRule,
-                                 List<TypeDefSummary>      selectedTypesToSend,
-                                 Connection                eventMapperConnection)
-    {
-        this.metadataCollectionId = metadataCollectionId;
-        this.localRepositoryLocalConnection = localRepositoryLocalConnection;
-        this.localRepositoryRemoteConnection = localRepositoryRemoteConnection;
-        this.eventsToSaveRule = eventsToSaveRule;
-        this.setSelectedTypesToSave(selectedTypesToSave);
-        this.eventsToSendRule = eventsToSendRule;
-        this.setSelectedTypesToSend(selectedTypesToSend);
-        this.eventMapperConnection = eventMapperConnection;
-    }
-
-
-    /**
-     * Default constructor used for JSON to Java processes - does not do anything useful because all
-     * local variables are initialized to null in their declaration.
-     */
-    public LocalRepositoryConfig()
-    {
-    }
-
-
-    /**
-     * Return the unique id of local repository's metadata collection.  If this value is set to
-     * null, the server will generate a unique Id.
-     *
-     * @return String unique Id
-     */
-    public String getMetadataCollectionId()
-    {
-        return metadataCollectionId;
-    }
-
-
-    /**
-     * Set up the unique id of local repository's metadata collection.  If this value is set to
-     * null, the server will generate a unique Id.
-     *
-     * @param metadataCollectionId - String unique Id
-     */
-    public void setMetadataCollectionId(String metadataCollectionId)
-    {
-        this.metadataCollectionId = metadataCollectionId;
-    }
-
-
-    /**
-     * Return the connection properties used to create a locally optimized connector to the local repository for
-     * use by this local server's components.  If this value is null then the localRepositoryRemoteConnection is used.
-     *
-     * @return Connection properties object
-     */
-    public Connection getLocalRepositoryLocalConnection()
-    {
-        return localRepositoryLocalConnection;
-    }
-
-
-    /**
-     * Set up the connection properties used to create a locally optimized connector to the local repository for
-     * use by this local server's components.  If this value is null then the localRepositoryRemoteConnection is used.
-     *
-     * @param localRepositoryLocalConnection - Connection properties object
-     */
-    public void setLocalRepositoryLocalConnection(Connection localRepositoryLocalConnection)
-    {
-        this.localRepositoryLocalConnection = localRepositoryLocalConnection;
-    }
-
-
-    /**
-     * Return the connection properties used to create a connector to the local repository for use by remote servers.
-     *
-     * @return Connection properties object
-     */
-    public Connection getLocalRepositoryRemoteConnection()
-    {
-        return localRepositoryRemoteConnection;
-    }
-
-
-    /**
-     * Set up the connection properties used to create a connector to the local repository for use by remote servers.
-     *
-     * @param localRepositoryRemoteConnection - Connection properties object
-     */
-    public void setLocalRepositoryRemoteConnection(Connection localRepositoryRemoteConnection)
-    {
-        this.localRepositoryRemoteConnection = localRepositoryRemoteConnection;
-    }
-
-
-    /**
-     * Return the enumeration describing which open metadata repository events should be saved to
-     * the local repository.
-     *
-     * @return OpenMetadataExchangeRule enum
-     */
-    public OpenMetadataExchangeRule getEventsToSaveRule()
-    {
-        return eventsToSaveRule;
-    }
-
-
-    /**
-     * Set up the enumeration describing which open metadata repository events should be saved to
-     * the local repository.
-     *
-     * @param eventsToSaveRule - OpenMetadataExchangeRule enum
-     */
-    public void setEventsToSaveRule(OpenMetadataExchangeRule eventsToSaveRule)
-    {
-        this.eventsToSaveRule = eventsToSaveRule;
-    }
-
-
-    /**
-     * Return the list of TypeDefs in supported of the eventsToSave.SELECTED_TYPES option.
-     *
-     * @return list of types
-     */
-    public List<TypeDefSummary> getSelectedTypesToSave()
-    {
-        if (selectedTypesToSave == null)
-        {
-            return null;
-        }
-        else
-        {
-            return selectedTypesToSave;
-        }
-    }
-
-
-    /**
-     * Set up the list of TypeDefs in supported of the eventsToSave.SELECTED_TYPES option.
-     *
-     * @param selectedTypesToSave - list of types
-     */
-    public void setSelectedTypesToSave(List<TypeDefSummary> selectedTypesToSave)
-    {
-        if (selectedTypesToSave == null)
-        {
-            this.selectedTypesToSave = null;
-        }
-        else
-        {
-            this.selectedTypesToSave = new ArrayList<>(selectedTypesToSave);
-        }
-    }
-
-
-    /**
-     * Return the enumeration describing which open metadata repository events should be sent from
-     * the local repository.
-     *
-     * @return OpenMetadataExchangeRule enum
-     */
-    public OpenMetadataExchangeRule getEventsToSendRule()
-    {
-        return eventsToSendRule;
-    }
-
-
-    /**
-     * Set up the enumeration describing which open metadata repository events should be sent from
-     * the local repository.
-     *
-     * @param eventsToSendRule - OpenMetadataExchangeRule enum
-     */
-    public void setEventsToSendRule(OpenMetadataExchangeRule eventsToSendRule)
-    {
-        this.eventsToSendRule = eventsToSendRule;
-    }
-
-
-    /**
-     * Return the list of TypeDefs in supported of the eventsToSend.SELECTED_TYPES option.
-     *
-     * @return list of types
-     */
-    public List<TypeDefSummary> getSelectedTypesToSend()
-    {
-        if (selectedTypesToSend == null)
-        {
-            return null;
-        }
-        else
-        {
-            return selectedTypesToSend;
-        }
-    }
-
-
-    /**
-     * Set up the list of TypeDefs in supported of the eventsToSend.SELECTED_TYPES option.
-     *
-     * @param selectedTypesToSend - list of types
-     */
-    public void setSelectedTypesToSend(List<TypeDefSummary> selectedTypesToSend)
-    {
-        if (selectedTypesToSend == null)
-        {
-            this.selectedTypesToSend = null;
-        }
-        else
-        {
-            this.selectedTypesToSend = new ArrayList<>(selectedTypesToSend);
-        }
-    }
-
-
-    /**
-     * Return the connection properties for the event mapper for the local repository.  The event mapper is an
-     * optional component used when the local repository has proprietary external APIs that can change metadata
-     * in the repository without going through the OMRS interfaces.  It maps the proprietary events from
-     * the local repository to the OMRS Events.
-     *
-     * @return Connection properties object
-     */
-    public Connection getEventMapperConnection()
-    {
-        return eventMapperConnection;
-    }
-
-
-    /**
-     * Set up the connection properties for the event mapper for the local repository.  The event mapper is an
-     * optional component used when the local repository has proprietary external APIs that can change metadata
-     * in the repository without going through the OMRS interfaces.  It maps the proprietary events from
-     * the local repository to the OMRS Events.
-     *
-     * @param eventMapperConnection - Connection properties object
-     */
-    public void setEventMapperConnection(Connection eventMapperConnection)
-    {
-        this.eventMapperConnection = eventMapperConnection;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/OpenMetadataEventProtocolVersion.java
----------------------------------------------------------------------
diff --git a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/OpenMetadataEventProtocolVersion.java b/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/OpenMetadataEventProtocolVersion.java
deleted file mode 100644
index 03674d6..0000000
--- a/omrs/src/main/java/org/apache/atlas/omrs/admin/properties/OpenMetadataEventProtocolVersion.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omrs.admin.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OpenMetadataEventProtocolVersion provides the identifier for the version number of the event payload.  There is
- * only one version at the moment which is why it looks a little sad.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum OpenMetadataEventProtocolVersion
-{
-    V1
-}


[49/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetDetail.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetDetail.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetDetail.java
deleted file mode 100644
index c0bd56d..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetDetail.java
+++ /dev/null
@@ -1,332 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-/**
- * AssetDetail extends AssetSummary to provide all of the properties related to this asset.  It includes:
- * <ul>
- *     <li>AssetProperties - properties unique to the particular type of asset including any vendor-specific facets.</li>
- *     <li>ExternalIdentifiers - list of identifiers for this asset that are used in other systems.</li>
- *     <li>RelatedMediaReferences - list of links to external media (images, audio, video) about this asset.</li>
- *     <li>NoteLogs - list of NoteLogs for this asset, often providing more detail on how to use the asset and
- *                   its current status.</li>
- *     <li>ExternalReferences - list of links to additional information about this asset.</li>
- *     <li>Connections - list of connections defined to access this asset.</li>
- *     <li>Licenses - list of licenses associated with the asset.</li>
- *     <li>Certifications - list of certifications that have been awarded to this asset.</li>
- * </ul>
- */
-public class AssetDetail extends AssetSummary
-{
-    private AdditionalProperties   assetProperties = null;
-    private ExternalIdentifiers    externalIdentifiers = null;
-    private RelatedMediaReferences relatedMediaReferences = null;
-    private NoteLogs               noteLogs = null;
-    private ExternalReferences     externalReferences = null;
-    private Connections            connections = null;
-    private Licenses               licenses = null;
-    private Certifications         certifications = null;
-
-
-    /**
-     * Typical constructor - initialize superclasses
-     *
-     * @param type - details of the metadata type for this asset
-     * @param guid - guid property
-     * @param url - element URL used to access its properties in the metadata repository.
-     * @param qualifiedName - unique name
-     * @param displayName - consumable name
-     * @param description - description of the asset
-     * @param shortDescription - short description from relationship with Connection
-     * @param owner - owner name
-     * @param classifications - enumeration of classifications
-     * @param assetProperties - AdditionalProperties object
-     * @param externalIdentifiers - ExternalIdentifiers enumeration
-     * @param relatedMediaReferences - RelatedMediaReferences enumeration
-     * @param noteLogs - NoteLogs iterator
-     * @param externalReferences - ExternalReferences iterator
-     * @param connections - List of connections attached to the asset
-     * @param licenses - List of licenses
-     * @param certifications - Certifications - list of certifications
-     */
-    public AssetDetail(ElementType            type,
-                       String                 guid,
-                       String                 url,
-                       String                 qualifiedName,
-                       String                 displayName,
-                       String                 shortDescription,
-                       String                 description,
-                       String                 owner,
-                       Classifications        classifications,
-                       AdditionalProperties   assetProperties,
-                       ExternalIdentifiers    externalIdentifiers,
-                       RelatedMediaReferences relatedMediaReferences,
-                       NoteLogs               noteLogs,
-                       ExternalReferences     externalReferences,
-                       Connections            connections,
-                       Licenses               licenses,
-                       Certifications         certifications)
-    {
-        super(type,
-              guid,
-              url,
-              qualifiedName,
-              displayName,
-              shortDescription,
-              description,
-              owner,
-              classifications);
-
-        this.assetProperties = assetProperties;
-        this.externalIdentifiers = externalIdentifiers;
-        this.relatedMediaReferences = relatedMediaReferences;
-        this.noteLogs = noteLogs;
-        this.externalReferences = externalReferences;
-        this.connections = connections;
-        this.licenses = licenses;
-        this.certifications = certifications;
-    }
-
-    /**
-     * Copy/clone constructor.  Note, this is a deep copy
-     *
-     * @param templateAssetDetail - template to copy
-     */
-    public AssetDetail(AssetDetail  templateAssetDetail)
-    {
-        /*
-         * Initialize superclass
-         */
-        super(templateAssetDetail);
-
-        /*
-         * Copy details from template, ensuring the parentAsset is this object, not the template's.
-         */
-        if (templateAssetDetail != null)
-        {
-            AdditionalProperties   templateAssetProperties = templateAssetDetail.getAssetProperties();
-            ExternalIdentifiers    templateExternalIdentifiers = templateAssetDetail.getExternalIdentifiers();
-            RelatedMediaReferences templateRelatedMediaReferences = templateAssetDetail.getRelatedMediaReferences();
-            NoteLogs               templateNoteLogs = templateAssetDetail.getNoteLogs();
-            ExternalReferences     templateExternalReferences = templateAssetDetail.getExternalReferences();
-            Connections            templateConnections = templateAssetDetail.getConnections();
-            Licenses               templateLicenses = templateAssetDetail.getLicenses();
-            Certifications         templateCertifications = templateAssetDetail.getCertifications();
-
-            if (templateAssetProperties != null)
-            {
-                assetProperties = new AdditionalProperties(this, templateAssetProperties);
-            }
-            if (templateExternalIdentifiers != null)
-            {
-                externalIdentifiers = templateExternalIdentifiers.cloneIterator(this);
-            }
-            if (templateRelatedMediaReferences != null)
-            {
-                relatedMediaReferences = templateRelatedMediaReferences.cloneIterator(this);
-            }
-            if (templateNoteLogs != null)
-            {
-                noteLogs = templateNoteLogs.cloneIterator(this);
-            }
-            if (templateExternalReferences != null)
-            {
-                externalReferences = templateExternalReferences.cloneIterator(this);
-            }
-            if (templateConnections != null)
-            {
-                connections = templateConnections.cloneIterator(this);
-            }
-            if (templateLicenses != null)
-            {
-                licenses = templateLicenses.cloneIterator(this);
-            }
-            if (templateCertifications != null)
-            {
-                certifications = templateCertifications.cloneIterator(this);
-            }
-        }
-    }
-
-
-    /**
-     * Return the set of properties that are specific to the particular type of asset.  The caller is given their
-     * own copy of the property object.  The properties are named entityName.attributeName. The values are all strings.
-     *
-     * @return AdditionalProperties - asset properties using the name of attributes from the model.
-     */
-    public AdditionalProperties getAssetProperties()
-    {
-        if (assetProperties == null)
-        {
-            return assetProperties;
-        }
-        else
-        {
-            return new AdditionalProperties(this, assetProperties);
-        }
-    }
-
-
-    /**
-     * Return an enumeration of the external identifiers for this asset (or null if none).
-     *
-     * @return ExternalIdentifiers enumeration
-     */
-    public ExternalIdentifiers getExternalIdentifiers()
-    {
-        if (externalIdentifiers == null)
-        {
-            return externalIdentifiers;
-        }
-        else
-        {
-            return externalIdentifiers.cloneIterator(this);
-        }
-    }
-
-
-    /**
-     * Return an enumeration of references to the related media associated with this asset.
-     *
-     * @return RelatedMediaReferences enumeration
-     */
-    public RelatedMediaReferences getRelatedMediaReferences()
-    {
-        if (relatedMediaReferences == null)
-        {
-            return relatedMediaReferences;
-        }
-        else
-        {
-            return relatedMediaReferences.cloneIterator(this);
-        }
-    }
-
-
-    /**
-     * Return an enumeration of NoteLogs linked to this asset.
-     *
-     * @return Notelogs iterator
-     */
-    public NoteLogs getNoteLogs()
-    {
-        if (noteLogs == null)
-        {
-            return noteLogs;
-        }
-        else
-        {
-            return noteLogs.cloneIterator(this);
-        }
-    }
-
-
-    /**
-     * Return the enumeration of external references associated with this asset.
-     *
-     * @return ExternalReferences iterator
-     */
-    public ExternalReferences getExternalReferences()
-    {
-        if (externalReferences == null)
-        {
-            return externalReferences;
-        }
-        else
-        {
-            return externalReferences.cloneIterator(this);
-        }
-    }
-
-
-    /**
-     * Return an enumeration of the connections defined for this asset.
-     *
-     * @return Connections enumeration
-     */
-    public Connections getConnections()
-    {
-        if (connections == null)
-        {
-            return connections;
-        }
-        else
-        {
-            return connections.cloneIterator(this);
-        }
-    }
-
-
-    /**
-     * Return the list of licenses associated with the asset.
-     *
-     * @return Licenses
-     */
-    public Licenses getLicenses()
-    {
-        if (licenses == null)
-        {
-            return licenses;
-        }
-        else
-        {
-            return licenses.cloneIterator(this);
-        }
-    }
-
-
-    /**
-     * Return the list of certifications awarded to the asset.
-     *
-     * @return Certifications - list of certifications
-     */
-    public Certifications getCertifications()
-    {
-        if (certifications == null)
-        {
-            return certifications;
-        }
-        else
-        {
-            return certifications.cloneIterator(this);
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "AssetDetail{" +
-                "assetProperties=" + assetProperties +
-                ", externalIdentifiers=" + externalIdentifiers +
-                ", relatedMediaReferences=" + relatedMediaReferences +
-                ", noteLogs=" + noteLogs +
-                ", externalReferences=" + externalReferences +
-                ", connections=" + connections +
-                ", licenses=" + licenses +
-                ", certifications=" + certifications +
-                '}';
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetPropertyBase.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetPropertyBase.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetPropertyBase.java
deleted file mode 100644
index c98ea7b..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetPropertyBase.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-/**
- * The AssetPropertyBase class is a base class for all properties that link off of the connected asset.
- * It manages the information about the parent asset.
- */
-public abstract class AssetPropertyBase extends PropertyBase
-{
-    private AssetDescriptor     parentAsset = null;
-
-    /**
-     * Typical constructor that sets the link to the connected asset to null
-     *
-     * @param parentAsset - descriptor of asset that his property relates to.
-     */
-    protected AssetPropertyBase(AssetDescriptor     parentAsset)
-    {
-        /*
-         * Initialize superclass and save the parent asset.
-         */
-        super();
-        this.parentAsset = parentAsset;
-    }
-
-
-    /**
-     * Copy/clone constructor - sets up details of the parent asset from the template
-     *
-     * @param parentAsset - descriptor of asset that his property relates to.
-     * @param  template - AssetPropertyBase to copy
-     */
-    protected AssetPropertyBase(AssetDescriptor     parentAsset, AssetPropertyBase  template)
-    {
-        /*
-         * Initialize superclass and save the parentAsset
-         */
-        super(template);
-        this.parentAsset = parentAsset;
-    }
-
-
-    /**
-     * Return the asset descriptor of the parent asset.
-     *
-     * @return AssetDescriptor
-     */
-    protected  AssetDescriptor  getParentAsset() { return parentAsset; }
-
-
-    /**
-     * Return the name of the connected asset that this property is connected to.
-     *
-     * @return String name of the connected asset
-     */
-    protected String getParentAssetName()
-    {
-        String  parentAssetName = "<Unknown>";
-
-        if (parentAsset != null)
-        {
-            parentAssetName = parentAsset.getAssetName();
-        }
-
-        return parentAssetName;
-    }
-
-
-    /**
-     * Return the type of the connected asset that this property relates to.
-     *
-     * @return String name of the connected asset's type.
-     */
-    protected String getParentAssetTypeName()
-    {
-        String  parentAssetTypeName = "<Unknown>";
-
-        if (parentAsset != null)
-        {
-            parentAssetTypeName = parentAsset.getAssetTypeName();
-        }
-
-        return parentAssetTypeName;
-    }
-
-
-    /**
-     * An equals() method for subclasses to check they are connected to the same parent asset.
-     *
-     * @param testObject - object to test
-     * @return boolean indicating whether this object is connected to equivalent parent assets.
-     */
-    @Override
-    public boolean equals(Object testObject)
-    {
-        if (this == testObject)
-        {
-            return true;
-        }
-        if (testObject == null || getClass() != testObject.getClass())
-        {
-            return false;
-        }
-
-        AssetPropertyBase that = (AssetPropertyBase) testObject;
-
-        return parentAsset != null ? parentAsset.equals(that.parentAsset) : that.parentAsset == null;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "AssetPropertyBase{" +
-                "parentAsset=" + parentAsset +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetPropertyIteratorBase.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetPropertyIteratorBase.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetPropertyIteratorBase.java
deleted file mode 100644
index 5bb30eb..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetPropertyIteratorBase.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import org.apache.atlas.ocf.ffdc.PropertyServerException;
-
-import java.util.ArrayList;
-
-public abstract class AssetPropertyIteratorBase extends AssetPropertyBase
-{
-    protected PagingIterator pagingIterator = null;
-
-    /**
-     * Typical Constructor creates an iterator with the supplied list of comments.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    protected AssetPropertyIteratorBase(AssetDescriptor              parentAsset,
-                                        int                          totalElementCount,
-                                        int                          maxCacheSize)
-    {
-        /*
-         * Initialize superclass.
-         */
-        super(parentAsset);
-
-        pagingIterator = new PagingIterator(parentAsset, this, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor - sets up details of the parent asset from the template
-     *
-     * @param parentAsset - descriptor of asset that his property relates to.
-     * @param  template - AssetPropertyBaseImpl to copy
-     */
-    protected AssetPropertyIteratorBase(AssetDescriptor     parentAsset, AssetPropertyIteratorBase  template)
-    {
-        /*
-         * Initialize superclass.
-         */
-        super(parentAsset, template);
-
-        if (template != null)
-        {
-            pagingIterator = new PagingIterator(parentAsset, this, template.pagingIterator);
-        }
-    }
-
-
-    /**
-     * Return the number of elements in the list.
-     *
-     * @return elementCount
-     */
-    public int getElementCount()
-    {
-        if (pagingIterator == null)
-        {
-            return 0;
-        }
-        else
-        {
-            return pagingIterator.getElementCount();
-        }
-    }
-
-
-    /**
-     * Method implemented by a subclass that ensures the cloning process is a deep clone.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected abstract AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template);
-
-
-    /**
-     * Method implemented by subclass to retrieve the next cached list of elements.
-     *
-     * @param cacheStartPointer - where to start the cache.
-     * @param maximumSize - maximum number of elements in the cache.
-     * @return list of elements corresponding to the supplied cache pointers.
-     * @throws PropertyServerException - there is a problem retrieving elements from the property (metadata) server.
-     */
-    protected abstract ArrayList<AssetPropertyBase> getCachedList(int  cacheStartPointer,
-                                                                  int  maximumSize) throws PropertyServerException;
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetSummary.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetSummary.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetSummary.java
deleted file mode 100644
index ef40770..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetSummary.java
+++ /dev/null
@@ -1,253 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * AssetSummary holds asset properties that are used for displaying details of
- * an asset in summary lists or hover text.  It includes the following properties:
- * <ul>
- *     <li>type - metadata type information for the asset properties</li>
- *     <li>guid - globally unique identifier for the asset</li>
- *     <li>url - external link for the asset</li>
- *     <li>qualifiedName - The official (unique) name for the asset. This is often defined by the IT systems
- *     management organization and should be used (when available) on audit logs and error messages.
- *     (qualifiedName from Referenceable - model 0010)</li>
- *     <li>displayName - A consumable name for the endpoint.  Often a shortened form of the assetQualifiedName
- *     for use on user interfaces and messages.   The assetDisplayName should be only be used for audit logs and error
- *     messages if the assetQualifiedName is not set. (Sourced from attribute name within Asset - model 0010)</li>
- *     <li>shortDescription - short description about the asset.
- *     (Sourced from assetSummary within ConnectionsToAsset - model 0205)</li>
- *     <li>description - full description of the asset.
- *     (Sourced from attribute description within Asset - model 0010)</li>
- *     <li>owner - name of the person or organization that owns the asset.
- *     (Sourced from attribute owner within Asset - model 0010)</li>
- *     <li>classifications - list of classifications assigned to the asset</li>
- * </ul>
- */
-public class AssetSummary extends AssetDescriptor
-{
-    private ElementType     type = null;
-    private String          qualifiedName = null;
-    private String          displayName = null;
-    private String          shortDescription = null;
-    private String          description = null;
-    private String          owner = null;
-    private Classifications classifications = null;
-
-
-    /**
-     * Typical constructor with parameters to fill properties.
-     *
-     * @param type - details of the metadata type for this asset
-     * @param guid - guid property
-     * @param url - element URL used to access its properties in the metadata repository.
-     * @param qualifiedName - unique name
-     * @param displayName - consumable name
-     * @param description - description of the asset
-     * @param shortDescription - short description from relationship with Connection
-     * @param owner - owner name
-     * @param classifications - enumeration of classifications
-     */
-    public AssetSummary(ElementType     type,
-                        String          guid,
-                        String          url,
-                        String          qualifiedName,
-                        String          displayName,
-                        String          shortDescription,
-                        String          description,
-                        String          owner,
-                        Classifications classifications)
-    {
-        super(guid, url);
-
-        this.type = type;
-        if (type != null)
-        {
-            super.setAssetTypeName(type.getElementTypeName());
-        }
-
-        this.qualifiedName = qualifiedName;
-        this.displayName = displayName;
-
-        /*
-         * Use the qualified name as the asset name if it is not null or the empty string.
-         * Otherwise use display name (unless it is null or the empty string).
-         */
-        if ((qualifiedName == null) || (qualifiedName.equals("")))
-        {
-            if ((displayName != null) && (!displayName.equals("")))
-            {
-                /*
-                 * Good display name
-                 */
-                super.setAssetName(displayName);
-            }
-        }
-        else /* good qualified name */
-        {
-            super.setAssetName(qualifiedName);
-        }
-
-        this.shortDescription = shortDescription;
-        this.description = description;
-        this.owner = owner;
-        this.classifications = classifications;
-    }
-
-
-    /**
-     * Copy/clone constructor.  Note, this is a deep copy
-     *
-     * @param templateAssetSummary - template values for asset summary
-     */
-    public AssetSummary(AssetSummary   templateAssetSummary)
-    {
-        /*
-         * Initialize super class
-         */
-        super(templateAssetSummary);
-
-        /*
-         * Copy relevant values from the template
-         */
-        if (templateAssetSummary != null)
-        {
-            type = templateAssetSummary.getType();
-            qualifiedName = templateAssetSummary.getQualifiedName();
-            displayName = templateAssetSummary.getDisplayName();
-            shortDescription = templateAssetSummary.getShortDescription();
-            description = templateAssetSummary.getDescription();
-            owner = templateAssetSummary.getOwner();
-
-            Classifications  templateClassifications = templateAssetSummary.getClassifications();
-            if (templateClassifications != null)
-            {
-                classifications = templateClassifications.cloneIterator(this);
-            }
-        }
-    }
-
-
-    /**
-     * Return the element type properties for this asset.  These values are set up by the metadata repository
-     * and define details to the metadata entity used to represent this element.
-     *
-     * @return ElementType - type information.
-     */
-    public ElementType getType()
-    {
-        return type;
-    }
-
-
-    /**
-     * Returns the stored qualified name property for the asset.
-     * If no qualified name is provided then null is returned.
-     *
-     * @return qualifiedName
-     */
-    public String getQualifiedName() {
-        return qualifiedName;
-    }
-
-
-    /**
-     * Returns the stored display name property for the asset.
-     * If no display name is available then null is returned.
-     *
-     * @return displayName
-     */
-    public String getDisplayName()
-    {
-        return displayName;
-    }
-
-
-    /**
-     * Returns the short description of the asset from relationship with Connection.
-     *
-     * @return shortDescription String
-     */
-    public String getShortDescription()
-    {
-        return shortDescription;
-    }
-
-
-    /**
-     * Returns the stored description property for the asset.
-     * If no description is provided then null is returned.
-     *
-     * @return description String
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Returns the name of the owner for this asset.
-     *
-     * @return owner String
-     */
-    public String getOwner() {
-        return owner;
-    }
-
-
-    /**
-     * Return the list of classifications associated with the asset.   This is an enumeration and the
-     * pointers are set to the start of the list of classifications
-     *
-     * @return Classifications - enumeration of classifications
-     */
-    public Classifications getClassifications()
-    {
-        if (classifications == null)
-        {
-            return classifications;
-        }
-        else
-        {
-            return classifications.cloneIterator(this);
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "AssetSummary{" +
-                "type=" + type +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", displayName='" + displayName + '\'' +
-                ", shortDescription='" + shortDescription + '\'' +
-                ", description='" + description + '\'' +
-                ", owner='" + owner + '\'' +
-                ", classifications=" + classifications +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetUniverse.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetUniverse.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetUniverse.java
deleted file mode 100644
index 6d352b9..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/AssetUniverse.java
+++ /dev/null
@@ -1,338 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-/**
- * AssetUniverse extends AssetDetail which extend AssetSummary.  AssetUniverse adds information about the
- * common open metadata entities related to this asset.
- * <ul>
- *     <li>Meanings - glossary term(s) assigned to this asset.</li>
- *     <li>Schema - details of the schema associated with the asset.</li>
- *     <li>Analysis - details of the annotations added by the discovery services.</li>
- *     <li>Feedback - details of the people, products and feedback that are connected to the asset.</li>
- *     <li>Locations - details of the known locations of the asset.</li>
- *     <li>Lineage - details of the lineage for the asset.</li>
- *     <li>Related Assets - details of the assets lined to this asset.</li>
- * </ul>
- *
- */
-public class AssetUniverse extends AssetDetail
-{
-    private   Meanings         meanings = null;
-    private   SchemaElement    schema = null;
-    private   Annotations      analysis = null;
-    private   Feedback         feedback = null;
-    private   Locations        knownLocations = null;
-    private   Lineage          lineage = null;
-    private   RelatedAssets    relatedAssets = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param type - details of the metadata type for this asset
-     * @param guid - guid property
-     * @param url - element URL used to access its properties in the metadata repository.
-     * @param qualifiedName - unique name
-     * @param displayName - consumable name
-     * @param description - description of the asset
-     * @param shortDescription - short description from relationship with Connection
-     * @param owner - owner name
-     * @param classifications - enumeration of classifications
-     * @param assetProperties - AdditionalProperties object
-     * @param externalIdentifiers - ExternalIdentifiers enumeration
-     * @param relatedMediaReferences - RelatedMediaReferences enumeration
-     * @param noteLogs - NoteLogs iterator
-     * @param externalReferences - ExternalReferences iterator
-     * @param connections - List of connections attached to the asset
-     * @param licenses - List of licenses
-     * @param certifications - Certifications - list of certifications
-     * @param meanings - Meanings - list of glossary definitions.
-     * @param schema - Schema object to query schema and related glossary definitions.
-     * @param analysis - Annotations from metadata discovery.
-     * @param feedback - Feedback object to query the feedback.
-     * @param knownLocations - Locations list
-     * @param lineage - lineage object to query the origin of the asset.
-     * @param relatedAssets - RelatedAssets list
-     */
-    public AssetUniverse(ElementType            type,
-                         String                 guid,
-                         String                 url,
-                         String                 qualifiedName,
-                         String                 displayName,
-                         String                 shortDescription,
-                         String                 description,
-                         String                 owner,
-                         Classifications        classifications,
-                         AdditionalProperties   assetProperties,
-                         ExternalIdentifiers    externalIdentifiers,
-                         RelatedMediaReferences relatedMediaReferences,
-                         NoteLogs               noteLogs,
-                         ExternalReferences     externalReferences,
-                         Connections            connections,
-                         Licenses               licenses,
-                         Certifications         certifications,
-                         Meanings               meanings,
-                         SchemaElement          schema,
-                         Annotations            analysis,
-                         Feedback               feedback,
-                         Locations              knownLocations,
-                         Lineage                lineage,
-                         RelatedAssets          relatedAssets)
-    {
-        super(type,
-              guid,
-              url,
-              qualifiedName,
-              displayName,
-              shortDescription,
-              description,
-              owner,
-              classifications,
-              assetProperties,
-              externalIdentifiers,
-              relatedMediaReferences,
-              noteLogs,
-              externalReferences,
-              connections,
-              licenses,
-              certifications);
-
-        this.meanings = meanings;
-        this.schema = schema;
-        this.analysis = analysis;
-        this.feedback = feedback;
-        this.knownLocations = knownLocations;
-        this.lineage = lineage;
-        this.relatedAssets = relatedAssets;
-    }
-
-    /**
-     * Copy/clone Constructor - note this is a deep copy
-     *
-     * @param templateAssetUniverse - template to copy
-     */
-    public AssetUniverse(AssetUniverse   templateAssetUniverse)
-    {
-        /*
-         * Initialize the super classes
-         */
-        super(templateAssetUniverse);
-
-        /*
-         * Set up the universe private variables.
-         */
-        if (templateAssetUniverse != null)
-        {
-            /*
-             * Create the top-level property objects for this new asset using the values from the template.
-             * The get methods create clones of the returned objects so no need to duplicate objects here.
-             */
-            Meanings      templateMeanings      = templateAssetUniverse.getMeanings();
-            SchemaElement templateSchema        = templateAssetUniverse.getSchema();
-            Annotations   templateAnalysis      = templateAssetUniverse.getAnalysis();
-            Feedback      templateFeedback      = templateAssetUniverse.getFeedback();
-            Locations     templateLocations     = templateAssetUniverse.getKnownLocations();
-            Lineage       templateLineage       = templateAssetUniverse.getLineage();
-            RelatedAssets templateRelatedAssets = templateAssetUniverse.getRelatedAssets();
-
-            if (templateMeanings != null)
-            {
-                meanings = templateMeanings.cloneIterator(this);
-            }
-            if (templateSchema != null)
-            {
-                if (templateSchema.getType().equals("Schema"))
-                {
-                    schema = new Schema(this, (Schema) templateSchema);
-                }
-                else
-                {
-                    schema = new PrimitiveSchemaElement(this, (PrimitiveSchemaElement) templateSchema);
-                }
-            }
-            if (templateAnalysis != null)
-            {
-                analysis = templateAnalysis.cloneIterator(this);
-            }
-            if (templateFeedback != null)
-            {
-                feedback = new Feedback(this, templateFeedback);
-            }
-            if (templateLocations != null)
-            {
-                knownLocations = templateLocations.cloneIterator(this);
-            }
-            if (templateLineage != null)
-            {
-                lineage = new Lineage(this, templateLineage);
-            }
-            if (templateRelatedAssets != null)
-            {
-                relatedAssets = templateRelatedAssets.cloneIterator(this);
-            }
-        }
-    }
-
-
-    /**
-     * Return the list of glossary definitions assigned directly to this asset.
-     *
-     * @return Meanings - list of glossary definitions.
-     */
-    public Meanings getMeanings()
-    {
-        if (meanings == null)
-        {
-            return meanings;
-        }
-        else
-        {
-            return meanings.cloneIterator(this);
-        }
-    }
-
-
-    /**
-     * Return details of the schema associated with the asset.
-     *
-     * @return SchemaElement - schema object to query the schema associated with the connected asset.
-     */
-    public SchemaElement getSchema()
-    {
-        if (schema == null)
-        {
-            return schema;
-        }
-        else
-        {
-            return schema.cloneSchemaElement(this);
-        }
-    }
-
-
-    /**
-     * Return details of the metadata discovery analysis for the asset.
-     *
-     * @return Annotations - List of annotations from metadata discovery
-     */
-    public Annotations getAnalysis()
-    {
-        if (analysis == null)
-        {
-            return analysis;
-        }
-        else
-        {
-            return analysis.cloneIterator(this);
-        }
-    }
-
-
-    /**
-     * Return details of the people, products and feedback that are connected to the asset.
-     *
-     * @return Feedback - feedback object to query the feedback on the asset.
-     */
-    public Feedback getFeedback()
-    {
-        if (feedback == null)
-        {
-            return feedback;
-        }
-        else
-        {
-            return new Feedback(this, feedback);
-        }
-    }
-
-
-    /**
-     * Return the list of locations for the asset.
-     *
-     * @return Locations - list of locations.
-     */
-    public Locations getKnownLocations()
-    {
-        if (knownLocations == null)
-        {
-            return knownLocations;
-        }
-        else
-        {
-            return knownLocations.cloneIterator(this);
-        }
-    }
-
-
-    /**
-     * Return details of the lineage for the asset.
-     *
-     * @return Lineage  - lineage object that allows queries about the lineage of the asset.
-     */
-    public Lineage getLineage()
-    {
-        if (lineage == null)
-        {
-            return lineage;
-        }
-        else
-        {
-            return new Lineage(this, lineage);
-        }
-    }
-
-
-    /**
-     * Return the list of assets related to this asset.
-     *
-     * @return RelatedAssets list
-     */
-    public RelatedAssets getRelatedAssets()
-    {
-        if (relatedAssets == null)
-        {
-            return relatedAssets;
-        }
-        else
-        {
-            return relatedAssets.cloneIterator(this);
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "AssetUniverse{" +
-                "meanings=" + meanings +
-                ", schema=" + schema +
-                ", analysis=" + analysis +
-                ", feedback=" + feedback +
-                ", knownLocations=" + knownLocations +
-                ", lineage=" + lineage +
-                ", relatedAssets=" + relatedAssets +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Certification.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Certification.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Certification.java
deleted file mode 100644
index c0ffeeb..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Certification.java
+++ /dev/null
@@ -1,303 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Date;
-
-/**
- * <p>
- *     Certification stores the certifications awarded to the asset.
- * </p>
- * <p>
- *     Many regulations and industry bodies define certifications that can confirm a level of support,
- *     capability or competence in an aspect of a digital organization’s operation.
- *     Having certifications may be necessary to operating legally or may be a business advantage.
- * </p>
- * <p>
- *     The certifications awarded to an asset can be captured in the metadata repository to enable both
- *     effective use and management of the certification process.
- * </p>
- */
-public class Certification extends Referenceable
-{
-    /*
-     * Properties of a certification
-     */
-    private  String                 certificationTypeGUID = null;
-    private  String                 certificationTypeName = null;
-    private  String                 examiner = null;
-    private  String                 summary = null;
-    private  ExternalReference      link = null;
-    private  Date                   startDate = null;
-    private  Date                   endDate = null;
-    private  String                 certificationConditions = null;
-    private  String                 createdBy = null;
-    private  String                 custodian = null;
-    private  String                 notes = null;
-
-
-    /**
-     * Typical constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param type - details of the metadata type for this properties object
-     * @param guid - unique id
-     * @param url - URL of the certification in the metadata repository
-     * @param classifications - enumeration of classifications
-     * @param qualifiedName - unique name
-     * @param additionalProperties - additional properties for the referenceable object
-     * @param meanings - list of glossary terms (summary)
-     * @param certificationTypeGUID - certification type GUID
-     * @param certificationTypeName - certification type name
-     * @param examiner - name of the organization or person that issued the certification
-     * @param summary - brief summary of the certification
-     * @param link - external reference for full text of the certification.
-     * @param startDate - start date for the certification.  Null means unknown or not relevant.
-     * @param endDate - end date for the certification.  Null means it does not expire.
-     * @param certificationConditions - any special conditions that apply to the certification - such as endorsements
-     * @param createdBy - name of the person or organization that set up the certification for this asset
-     * @param custodian - String name of the person or organization that is responsible for the correct management
-     *                  of the asset according to the certification
-     * @param notes - String notes from the custodian
-     */
-    public Certification(AssetDescriptor      parentAsset,
-                         ElementType          type,
-                         String               guid,
-                         String               url,
-                         Classifications      classifications,
-                         String               qualifiedName,
-                         AdditionalProperties additionalProperties,
-                         Meanings             meanings,
-                         String               certificationTypeGUID,
-                         String               certificationTypeName,
-                         String               examiner,
-                         String               summary,
-                         ExternalReference    link,
-                         Date                 startDate,
-                         Date                 endDate,
-                         String               certificationConditions,
-                         String               createdBy,
-                         String               custodian,
-                         String               notes)
-    {
-        super(parentAsset, type, guid, url, classifications, qualifiedName, additionalProperties, meanings);
-
-        this.certificationTypeGUID = certificationTypeGUID;
-        this.certificationTypeName = certificationTypeName;
-        this.examiner = examiner;
-        this.summary = summary;
-        this.link = link;
-        this.startDate = startDate;
-        this.endDate = endDate;
-        this.certificationConditions = certificationConditions;
-        this.createdBy = createdBy;
-        this.custodian = custodian;
-        this.notes = notes;
-    }
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset - descriptor for parent asset
-     * @param templateCertification - element to copy
-     */
-    public Certification(AssetDescriptor   parentAsset, Certification templateCertification)
-    {
-        super(parentAsset, templateCertification);
-
-        if (templateCertification != null)
-        {
-            certificationTypeGUID = templateCertification.getCertificationTypeGUID();
-            certificationTypeName = templateCertification.getCertificationTypeName();
-            examiner = templateCertification.getExaminer();
-            summary = templateCertification.getSummary();
-
-            ExternalReference  templateLink = templateCertification.getLink();
-            if (templateLink != null)
-            {
-                link = new ExternalReference(parentAsset, templateLink);
-            }
-
-            Date               templateStartDate = templateCertification.getStartDate();
-            if (templateStartDate != null)
-            {
-                startDate = new Date(templateStartDate.getTime());
-            }
-
-            Date               templateEndDate = templateCertification.getEndDate();
-            if (templateEndDate != null)
-            {
-                endDate = new Date(templateStartDate.getTime());
-            }
-
-            certificationConditions = templateCertification.getCertificationConditions();
-            createdBy = templateCertification.getCreatedBy();
-            custodian = templateCertification.getCustodian();
-            notes = templateCertification.getNotes();
-        }
-    }
-
-
-    /**
-     * Return the unique id for the type of certification.
-     *
-     * @return String certification type GUID
-     */
-    public String getCertificationTypeGUID() { return certificationTypeGUID; }
-
-
-    /**
-     * Return the type of the certification.
-     *
-     * @return String certification type
-     */
-    public String getCertificationTypeName() { return certificationTypeName; }
-
-
-    /**
-     * Return the name of the organization or person that issued the certification.
-     *
-     * @return String name
-     */
-    public String getExaminer() { return examiner; }
-
-
-    /**
-     * Return a brief summary of the certification.
-     *
-     * @return String summary
-     */
-    public String getSummary() { return summary; }
-
-
-    /**
-     * Return the link to the full text of the certification.
-     *
-     * @return ExternalReference for full text
-     */
-    public ExternalReference getLink()
-    {
-        if (link == null)
-        {
-            return link;
-        }
-        else
-        {
-            return new ExternalReference(super.getParentAsset(), link);
-        }
-    }
-
-
-    /**
-     * Return the start date for the certification.  Null means unknown or not relevant.
-     *
-     * @return Date - start date for the certification
-     */
-    public Date getStartDate()
-    {
-        if (startDate == null)
-        {
-            return startDate;
-        }
-        else
-        {
-            return new Date(startDate.getTime());
-        }
-    }
-
-
-    /**
-     * Return the end date for the certification.   Null means it does not expire.
-     *
-     * @return Date - end date for the certification
-     */
-    public Date getEndDate()
-    {
-        if (endDate == null)
-        {
-            return endDate;
-        }
-        else
-        {
-            return new Date(endDate.getTime());
-        }
-    }
-
-
-    /**
-     * Return any special conditions that apply to the certification - such as endorsements.
-     *
-     * @return String certification conditions
-     */
-    public String getCertificationConditions() { return certificationConditions; }
-
-
-    /**
-     * Return the name of the person or organization that set up the certification for this asset.
-     *
-     * @return String name
-     */
-    public String getCreatedBy() { return createdBy; }
-
-
-    /**
-     * Return the name of the person or organization that is responsible for the correct management of the asset
-     * according to the certification.
-     *
-     * @return String name
-     */
-    public String getCustodian() { return custodian; }
-
-
-    /**
-     * Return the notes from the custodian.
-     *
-     * @return String notes
-     */
-    public String getNotes() { return notes; }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Certification{" +
-                "certificationTypeGUID='" + certificationTypeGUID + '\'' +
-                ", certificationTypeName='" + certificationTypeName + '\'' +
-                ", examiner='" + examiner + '\'' +
-                ", summary='" + summary + '\'' +
-                ", link=" + link +
-                ", startDate=" + startDate +
-                ", endDate=" + endDate +
-                ", certificationConditions='" + certificationConditions + '\'' +
-                ", createdBy='" + createdBy + '\'' +
-                ", custodian='" + custodian + '\'' +
-                ", notes='" + notes + '\'' +
-                ", qualifiedName='" + qualifiedName + '\'' +
-                ", additionalProperties=" + additionalProperties +
-                ", meanings=" + meanings +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Certifications.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Certifications.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Certifications.java
deleted file mode 100644
index 0db0edd..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Certifications.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * Certifications supports an iterator over a list of certifications awarded to the asset.
- * Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class Certifications extends AssetPropertyIteratorBase implements Iterator<Certification>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public Certifications(AssetDescriptor              parentAsset,
-                          int                          totalElementCount,
-                          int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public Certifications(AssetDescriptor   parentAsset, Certifications    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  Certification  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new Certification(parentAsset, (Certification)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract Certifications  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return Certification - next element object that has been cloned.
-     */
-    @Override
-    public Certification next()
-    {
-        return (Certification)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Certifications{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Classification.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Classification.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Classification.java
deleted file mode 100644
index 5fee198..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Classification.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import org.apache.atlas.ocf.ffdc.OCFErrorCode;
-import org.apache.atlas.ocf.ffdc.OCFRuntimeException;
-
-/**
- * The Classification class stores information about a classification assigned to an asset.  The Classification
- * has a name and some properties.  It also stores the typename of the asset it is connected to for debug purposes.
- *
- * Note: it is not valid to have a classification with a null or blank name.
- */
-public class Classification extends AssetPropertyBase
-{
-    private String                       classificationName = null;
-    private AdditionalProperties         classificationProperties = null;
-
-    /**
-     * A private validation method used by the constructors.
-     *
-     * @param name - name to check
-     * @return validated name
-     */
-    private String validateName(String   name)
-    {
-        /*
-         * Throw an exception if the classification's name is null because that does not make sense.
-         * The constructors do not catch this exception so it is received by the creator of the classification
-         * object.
-         */
-        if (name == null || name.equals(""))
-        {
-            /*
-             * Build and throw exception.  This should not happen - likely to be a problem in the
-             * repository connector.
-             */
-            OCFErrorCode errorCode = OCFErrorCode.NULL_CLASSIFICATION_NAME;
-            String       errorMessage = errorCode.getErrorMessageId()
-                                      + errorCode.getFormattedErrorMessage(super.getParentAssetName(),
-                                                                           super.getParentAssetTypeName());
-
-            throw new OCFRuntimeException(errorCode.getHTTPErrorCode(),
-                                          this.getClass().getName(),
-                                          "validateName",
-                                          errorMessage,
-                                          errorCode.getSystemAction(),
-                                          errorCode.getUserAction());
-        }
-        else
-        {
-            return name;
-        }
-    }
-
-
-    /**
-     * Typical constructor - verifies and saves parameters.
-     *
-     * @param parentAsset - name and type of related asset
-     * @param name - name of the classification
-     * @param properties - additional properties for the classification
-     */
-    public Classification(AssetDescriptor      parentAsset,
-                          String               name,
-                          AdditionalProperties properties)
-    {
-        super(parentAsset);
-
-        this.classificationName = validateName(name);
-        this.classificationProperties = properties;
-    }
-
-
-    /**
-     * Copy/clone Constructor - sets up new classification using values from the template
-     *
-     * @param parentAsset - details of the asset that this classification is linked to.
-     * @param templateClassification - object to copy
-     */
-    public Classification(AssetDescriptor parentAsset, Classification templateClassification)
-    {
-        super(parentAsset, templateClassification);
-
-        /*
-         * An empty classification object is passed in the variable declaration so throw exception
-         * because we need the classification name.
-         */
-        if (templateClassification == null)
-        {
-            /*
-             * Build and throw exception.  This should not happen - likely to be a problem in the
-             * repository connector.
-             */
-            OCFErrorCode errorCode = OCFErrorCode.NULL_CLASSIFICATION_NAME;
-            String       errorMessage = errorCode.getErrorMessageId()
-                                      + errorCode.getFormattedErrorMessage("<Unknown>");
-
-            throw new OCFRuntimeException(errorCode.getHTTPErrorCode(),
-                                          this.getClass().getName(),
-                                          "Copy Constructor",
-                                          errorMessage,
-                                          errorCode.getSystemAction(),
-                                          errorCode.getUserAction());
-        }
-        else
-        {
-            /*
-             * Save the name and properties.
-             */
-            this.classificationName = validateName(templateClassification.getName());
-            this.classificationProperties = templateClassification.getProperties();
-        }
-    }
-
-
-    /**
-     * Return the name of the classification
-     *
-     * @return name of classification
-     */
-    public String getName()
-    {
-        return classificationName;
-    }
-
-
-    /**
-     * Returns a collection of the additional stored properties for the classification.
-     * If no stored properties are present then null is returned.
-     *
-     * @return properties for the classification
-     */
-    public AdditionalProperties getProperties()
-    {
-        if (classificationProperties == null)
-        {
-            return classificationProperties;
-        }
-        else
-        {
-            return new AdditionalProperties(super.getParentAsset(), classificationProperties);
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Classification{" +
-                "classificationName='" + classificationName + '\'' +
-                ", classificationProperties=" + classificationProperties +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Classifications.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Classifications.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Classifications.java
deleted file mode 100644
index 9ff493c..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Classifications.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * Classifications supports an iterator over a list of classifications.  Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class Classifications extends AssetPropertyIteratorBase implements Iterator<Classification>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public Classifications(AssetDescriptor              parentAsset,
-                           int                          totalElementCount,
-                           int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public Classifications(AssetDescriptor   parentAsset, Classifications    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new Classification(parentAsset, (Classification)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract Classifications  cloneIterator(AssetDescriptor  parentAsset);
-
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return Classification - next element object that has been cloned.
-     */
-    @Override
-    public Classification next()
-    {
-        return (Classification)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Classifications{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Comment.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Comment.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Comment.java
deleted file mode 100644
index d80db87..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Comment.java
+++ /dev/null
@@ -1,177 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.ocf.properties;
-
-
-/**
- * Stores information about a comment connected to an asset.  Comments provide informal feedback to assets
- * and can be added at any time.
- *
- * Comments have the userId of the person who added the feedback, along with their comment text.
- *
- * Comments can have other comments attached.
- *
- * The content of the comment is a personal statement (which is why the user's id is in the comment)
- * and there is no formal review of the content.
- */
-public class Comment extends ElementHeader
-{
-    /*
-     * Attributes of a Comment
-     */
-    private CommentType  commentType    = null;
-    private String       commentText    = null;
-    private String       user           = null;
-    private Comments     commentReplies = null;
-
-
-    /**
-     * Typical Constructor
-     *
-     * @param parentAsset     - descriptor for parent asset
-     * @param type            - details of the metadata type for this properties object
-     * @param guid            - String - unique id
-     * @param url             - String - URL
-     * @param classifications - list of classifications
-     * @param commentType     - enum describing the type of the comment
-     * @param commentText     - comment text String
-     * @param user            - String - user id of the person who created the comment. Null means the user id is not known.
-     * @param commentReplies  - Nested list of comments replies
-     */
-    public Comment(AssetDescriptor parentAsset,
-                   ElementType     type,
-                   String          guid,
-                   String          url,
-                   Classifications classifications,
-                   CommentType     commentType,
-                   String          commentText,
-                   String          user,
-                   Comments        commentReplies)
-    {
-        super(parentAsset, type, guid, url, classifications);
-
-        this.commentType    = commentType;
-        this.commentText    = commentText;
-        this.user           = user;
-        this.commentReplies = commentReplies;
-    }
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param parentAsset     - descriptor for parent asset
-     * @param templateComment - element to copy
-     */
-    public Comment(AssetDescriptor parentAsset, Comment templateComment)
-    {
-        /*
-         * Save the parent asset description.
-         */
-        super(parentAsset, templateComment);
-
-        if (templateComment != null)
-        {
-            /*
-             * Copy the values from the supplied comment.
-             */
-            commentType = templateComment.getCommentType();
-            user        = templateComment.getUser();
-            commentText = templateComment.getCommentText();
-
-            Comments templateCommentReplies = templateComment.getCommentReplies();
-            if (templateCommentReplies != null)
-            {
-                /*
-                 * Ensure comment replies has this object's parent asset, not the template's.
-                 */
-                commentReplies = templateCommentReplies.cloneIterator(parentAsset);
-            }
-        }
-    }
-
-
-    /**
-     * Return an enum that describes the type of comment.
-     *
-     * @return CommentType enum
-     */
-    public CommentType getCommentType()
-    {
-        return commentType;
-    }
-
-
-    /**
-     * Return the user id of the person who created the comment.  Null means the user id is not known.
-     *
-     * @return String - commenting user
-     */
-    public String getUser()
-    {
-        return user;
-    }
-
-
-    /**
-     * Return the comment text.
-     *
-     * @return String - commentText
-     */
-    public String getCommentText()
-    {
-        return commentText;
-    }
-
-
-    /**
-     * Return an iterator of the replies to this comment - null means no replies are available.
-     *
-     * @return Comments - comment replies iterator
-     */
-    public Comments getCommentReplies()
-    {
-        if (commentReplies == null)
-        {
-            return commentReplies;
-        }
-        else
-        {
-            return commentReplies.cloneIterator(super.getParentAsset());
-        }
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Comment{" +
-                "commentText='" + commentText + '\'' +
-                ", user='" + user + '\'' +
-                ", commentReplies=" + commentReplies +
-                ", type=" + type +
-                ", guid='" + guid + '\'' +
-                ", url='" + url + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/CommentType.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/CommentType.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/CommentType.java
deleted file mode 100644
index 7a79680..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/CommentType.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The CommentType allows comments to be used to ask and answer questions as well as make suggestions and
- * provide useful information to other users.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum CommentType implements Serializable
-{
-    STANDARD_COMMENT (0, "Comment", "General comment about the asset."),
-    QUESTION         (1, "Question", "Asks a question to the people owning, managing or using the asset."),
-    ANSWER           (2, "Answer", "Answers a question (posted as a reply to the question)."),
-    SUGGESTION       (3, "Suggestion", "Provides a suggestion on how to improve the asset or its properties and description."),
-    USAGE_EXPERIENCE (4, "Experience", "Describes situations where this asset has been used and related hints and tips.");
-
-    private static final long     serialVersionUID = 1L;
-
-    private int            commentTypeCode;
-    private String         commentType;
-    private String         commentTypeDescription;
-
-
-    /**
-     * Typical Constructor
-     */
-    CommentType(int     commentTypeCode, String   commentType, String   commentTypeDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.commentTypeCode = commentTypeCode;
-        this.commentType = commentType;
-        this.commentTypeDescription = commentTypeDescription;
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - comment type code
-     */
-    public int getCommentTypeCode()
-    {
-        return commentTypeCode;
-    }
-
-
-    /**
-     * Return the default type name for this enum instance.
-     *
-     * @return String - default type name
-     */
-    public String getCommentType()
-    {
-        return commentType;
-    }
-
-
-    /**
-     * Return the default description for the star rating for this enum instance.
-     *
-     * @return String - default description
-     */
-    public String getCommentTypeDescription()
-    {
-        return commentTypeDescription;
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "CommentType{" +
-                "commentTypeCode=" + commentTypeCode +
-                ", commentType='" + commentType + '\'' +
-                ", commentTypeDescription='" + commentTypeDescription + '\'' +
-                '}';
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Comments.java
----------------------------------------------------------------------
diff --git a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Comments.java b/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Comments.java
deleted file mode 100644
index baecec7..0000000
--- a/om-fwk-ocf/src/main/java/org/apache/atlas/ocf/properties/Comments.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.ocf.properties;
-
-import java.util.Iterator;
-
-/**
- * Comments supports an iterator over a list of Comment objects.  Callers can use it to step through the list
- * just once.  If they want to parse the list again, they could use the copy/clone constructor to create
- * a new iterator.
- */
-public abstract class Comments extends AssetPropertyIteratorBase implements Iterator<Comment>
-{
-    /**
-     * Typical Constructor creates an iterator with the supplied list of elements.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param totalElementCount - the total number of elements to process.  A negative value is converted to 0.
-     * @param maxCacheSize - maximum number of elements that should be retrieved from the property server and
-     *                     cached in the element list at any one time.  If a number less than one is supplied, 1 is used.
-     */
-    public Comments(AssetDescriptor              parentAsset,
-                    int                          totalElementCount,
-                    int                          maxCacheSize)
-    {
-        super(parentAsset, totalElementCount, maxCacheSize);
-    }
-
-
-    /**
-     * Copy/clone constructor.  Used to reset iterator element pointer to 0;
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - type-specific iterator to copy; null to create an empty iterator
-     */
-    public Comments(AssetDescriptor   parentAsset, Comments    template)
-    {
-        super(parentAsset, template);
-    }
-
-
-    /**
-     * Provides a concrete implementation of cloneElement for the specific iterator type.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @param template - object to clone
-     * @return new cloned object.
-     */
-    protected  AssetPropertyBase  cloneElement(AssetDescriptor  parentAsset, AssetPropertyBase   template)
-    {
-        return new Comment(parentAsset, (Comment)template);
-    }
-
-
-    /**
-     * Clones this iterator.
-     *
-     * @param parentAsset - descriptor of parent asset
-     * @return new cloned object.
-     */
-    protected  abstract Comments  cloneIterator(AssetDescriptor  parentAsset);
-
-
-    /**
-     * The iterator can only be used once to step through the elements.  This method returns
-     * a boolean to indicate if it has got to the end of the list yet.
-     *
-     * @return boolean indicating whether there are more elements.
-     */
-    @Override
-    public boolean hasNext()
-    {
-        return super.pagingIterator.hasNext();
-    }
-
-
-    /**
-     * Return the next element in the iteration.
-     *
-     * @return Comment - next element object that has been cloned.
-     */
-    @Override
-    public Comment next()
-    {
-        return (Comment)super.pagingIterator.next();
-    }
-
-
-    /**
-     * Remove the current element in the iterator. (Null implementation since this iterator works off of cached
-     * elements from the property (metadata) server.)
-     */
-    @Override
-    public void remove()
-    {
-        super.pagingIterator.remove();
-    }
-
-
-    /**
-     * Standard toString method.
-     *
-     * @return print out of variables in a JSON-style
-     */
-    @Override
-    public String toString()
-    {
-        return "Comments{" +
-                "pagingIterator=" + pagingIterator +
-                '}';
-    }
-}
\ No newline at end of file


[35/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AnnotationStatus.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AnnotationStatus.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AnnotationStatus.java
deleted file mode 100644
index 61b49b0..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AnnotationStatus.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * An AnnotationStatus defines the current status for an annotation plus some default descriptive text.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum AnnotationStatus implements Serializable
-{
-    NEW_ANNOTATION(0, "New", "Annotation has been created but not reviewed"),
-    REVIEWED_ANNOTATION(1, "Reviewed", "Annotation has been reviewed by no decision has been made"),
-    APPROVED_ANNOTATION(2, "Approved", "Annotation has been approved"),
-    ACTIONED_ANNOTATION(3, "Actioned", "Annotation has been approved and insight has been added to Asset's metadata"),
-    INVALID_ANNOTATION(4, "Invalid", "Annotation has been reviewed and declared invalid"),
-    IGNORE_ANNOTATION(5, "Ignore", "Annotation is invalid and should be ignored"),
-    OTHER_STATUS(98, "Other", "Annotation's status stored in additional properties"),
-    UNKNOWN_STATUS(99, "Unknown", "Annotation has not had a status assigned");
-
-    private static final long     serialVersionUID = 1L;
-
-    private int            statusCode = 99;
-    private String         statusName = "";
-    private String         statusDescription = "";
-
-
-    /**
-     * Typical Constructor
-     */
-    AnnotationStatus(int     statusCode, String   statusName,  String   statusDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.statusCode = statusCode;
-        this.statusName = statusName;
-        this.statusDescription = statusDescription;
-    }
-
-
-    /**
-     * Return the status code for this enum instance
-     *
-     * @return int - status code
-     */
-    public int getStatusCode()
-    {
-        return statusCode;
-    }
-
-
-    /**
-     * Return the default name for the status for this enum instance.
-     *
-     * @return String - default status name
-     */
-    public String getStatusName()
-    {
-        return statusName;
-    }
-
-
-    /**
-     * REturn the default description for the status for this enum instance.
-     *
-     * @return String - default status description
-     */
-    public String getStatusDescription()
-    {
-        return statusDescription;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetDescriptor.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetDescriptor.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetDescriptor.java
deleted file mode 100644
index 0927e3b..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetDescriptor.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * This is the base class for a connected asset.  It is passed to all of the embedded property objects so the name
- * and type can be used for error messages and other diagnostics.  It also carries the URL of the
- * metadata repository where this is known to enable properties to be retrieved on request.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class AssetDescriptor extends PropertyBase
-{
-    /*
-     * Derived name and type for use by nested property object for messages/debug.  If these default values
-     * are seen it is a sign that the asset properties are not being populated from the metadata repository.
-     */
-    private String assetName = "<Unknown>";
-    private String assetTypeName = "<Unknown>";
-
-    /*
-     * URL where the metadata about the asset is located.  It remains null if no repository is known.
-     */
-    private String assetRepositoryURL = null;
-
-
-    /**
-     * Typical constructor - the asset descriptor is effectively empty - and the set methods need to be called to
-     * add useful content to it.
-     */
-    public AssetDescriptor()
-    {
-        /*
-         * Nothing to do except call superclass
-         */
-        super();
-    }
-
-
-    /**
-     * Explicit constructor - the asset descriptor is explicitly given the name and type for the asset.  This
-     * constructor is used to override the hard coded defaults.
-     *
-     * @param assetName - name of asset
-     * @param assetTypeName - name of asset type
-     * @param assetRepositoryURL - URL for the metadata repository
-     */
-    public AssetDescriptor(String assetName, String assetTypeName, String  assetRepositoryURL)
-    {
-        super();
-
-        this.assetName = assetName;
-        this.assetTypeName = assetTypeName;
-        this.assetRepositoryURL = assetRepositoryURL;
-    }
-
-
-    /**
-     * Copy/clone Constructor - used to copy the asset descriptor for a new consumer.
-     *
-     * @param templateAssetDescriptor - template asset descriptor to copy.
-     */
-    public AssetDescriptor(AssetDescriptor   templateAssetDescriptor)
-    {
-        super();
-
-        this.assetName = templateAssetDescriptor.getAssetName();
-        this.assetTypeName = templateAssetDescriptor.getAssetTypeName();
-        this.assetRepositoryURL = templateAssetDescriptor.getAssetRepositoryURL();
-    }
-
-
-    /**
-     * Method to enable a subclass to set up the asset name.
-     *
-     * @param assetName - String - name of asset for messages etc
-     */
-    protected void setAssetName(String     assetName)
-    {
-        this.assetName = assetName;
-    }
-
-
-    /**
-     * Method to enable a subclass to set up the asset type name.
-     *
-     * @param assetTypeName - String - new type name
-     */
-    protected void setAssetTypeName(String    assetTypeName)
-    {
-        this.assetTypeName = assetTypeName;
-    }
-
-
-    /**
-     * Set up the URL of the metadata repository where the asset properties are held.
-     *
-     * @param assetRepositoryURL - String - URL
-     */
-    protected void setAssetRepositoryURL(String assetRepositoryURL) { this.assetRepositoryURL = assetRepositoryURL; }
-
-
-    /**
-     * Return the name of the asset - for use in messages and other diagnostics.
-     *
-     * @return String - asset name
-     */
-    public String getAssetName()
-    {
-        return assetName;
-    }
-
-
-    /**
-     * Return the name of the asset's type - for use in messages and other diagnostics.
-     *
-     * @return String - asset type name
-     */
-    public String getAssetTypeName()
-    {
-        return assetTypeName;
-    }
-
-
-    /**
-     * Return the URL of the metadata repository where the asset properties are held.
-     *
-     * @return String - URL
-     */
-    public String getAssetRepositoryURL() { return assetRepositoryURL; }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetDetail.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetDetail.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetDetail.java
deleted file mode 100644
index be0dacc..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetDetail.java
+++ /dev/null
@@ -1,356 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * AssetDetail extends AssetSummary to provide all of the properties related to this asset.  It includes:
- * <ul>
- *     <li>AssetProperties - properties unique to the particular type of asset including any vendor-specific facets.</li>
- *     <li>ExternalIdentifiers - list of identifiers for this asset that are used in other systems.</li>
- *     <li>RelatedMediaReferences - list of links to external media (images, audio, video) about this asset.</li>
- *     <li>NoteLogs - list of NoteLogs for this asset, often providing more detail on how to use the asset and
- *                   its current status.</li>
- *     <li>ExternalReferences - list of links to additional information about this asset.</li>
- *     <li>Connections - list of connections defined to access this asset.</li>
- *     <li>Licenses - list of licenses associated with the asset.</li>
- *     <li>Certifications - list of certifications that have been awarded to this asset.</li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class AssetDetail extends AssetSummary
-{
-    private AdditionalProperties        assetProperties        = null;
-    private List<ExternalIdentifier>    externalIdentifiers    = null;
-    private List<RelatedMediaReference> relatedMediaReferences = null;
-    private List<NoteLog>               noteLogs               = null;
-    private List<ExternalReference>     externalReferences     = null;
-    private List<Connection>            connections            = null;
-    private List<License>               licenses               = null;
-    private List<Certification>         certifications         = null;
-
-
-    /**
-     * Typical constructor - initialize superclasses
-     */
-    public AssetDetail()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.  Note, this is a deep copy
-     *
-     * @param templateAssetDetail - template to copy
-     */
-    public AssetDetail(AssetDetail  templateAssetDetail)
-    {
-        /*
-         * Initialize superclass
-         */
-        super(templateAssetDetail);
-
-        /*
-         * Copy details from template, ensuring the parentAsset is this object, not the template's.
-         */
-        if (templateAssetDetail != null)
-        {
-            AdditionalProperties        templateAssetProperties = templateAssetDetail.getAssetProperties();
-            List<ExternalIdentifier>    templateExternalIdentifiers = templateAssetDetail.getExternalIdentifiers();
-            List<RelatedMediaReference> templateRelatedMediaReferences = templateAssetDetail.getRelatedMediaReferences();
-            List<NoteLog>               templateNoteLogs = templateAssetDetail.getNoteLogs();
-            List<ExternalReference>     templateExternalReferences = templateAssetDetail.getExternalReferences();
-            List<Connection>            templateConnections = templateAssetDetail.getConnections();
-            List<License>               templateLicenses = templateAssetDetail.getLicenses();
-            List<Certification>         templateCertifications = templateAssetDetail.getCertifications();
-
-            if (templateAssetProperties != null)
-            {
-                assetProperties = new AdditionalProperties(templateAssetProperties);
-            }
-            if (templateExternalIdentifiers != null)
-            {
-                externalIdentifiers = new ArrayList<>(templateExternalIdentifiers);
-            }
-            if (templateRelatedMediaReferences != null)
-            {
-                relatedMediaReferences = new ArrayList<>(templateRelatedMediaReferences);
-            }
-            if (templateNoteLogs != null)
-            {
-                noteLogs = new ArrayList<>(templateNoteLogs);
-            }
-            if (templateExternalReferences != null)
-            {
-                externalReferences = new ArrayList<>(templateExternalReferences);
-            }
-            if (templateConnections != null)
-            {
-                connections = new ArrayList<>(templateConnections);
-            }
-            if (templateLicenses != null)
-            {
-                licenses = new ArrayList<>(templateLicenses);
-            }
-            if (templateCertifications != null)
-            {
-                certifications = new ArrayList<>(templateCertifications);
-            }
-        }
-    }
-
-
-    /**
-     * Return the set of properties that are specific to the particular type of asset.  The caller is given their
-     * own copy of the property object.  The properties are named entityName.attributeName. The values are all strings.
-     *
-     * @return AdditionalProperties - asset properties using the name of attributes from the model.
-     */
-    public AdditionalProperties getAssetProperties()
-    {
-        if (assetProperties == null)
-        {
-            return assetProperties;
-        }
-        else
-        {
-            return new AdditionalProperties(assetProperties);
-        }
-    }
-
-
-    /**
-     * Set up the asset properties for this asset.
-     *
-     * @param assetProperties - AdditionalProperties object
-     */
-    public void setAssetProperties(AdditionalProperties assetProperties)
-    {
-        this.assetProperties = assetProperties;
-    }
-
-
-    /**
-     * Return an enumeration of the external identifiers for this asset (or null if none).
-     *
-     * @return ExternalIdentifiers list
-     */
-    public List<ExternalIdentifier> getExternalIdentifiers()
-    {
-        if (externalIdentifiers == null)
-        {
-            return externalIdentifiers;
-        }
-        else
-        {
-            return new ArrayList<>(externalIdentifiers);
-        }
-    }
-
-
-    /**
-     * Set up the external identifiers for this asset.
-     *
-     * @param externalIdentifiers - ExternalIdentifiers list
-     */
-    public void setExternalIdentifiers(List<ExternalIdentifier> externalIdentifiers)
-    {
-        this.externalIdentifiers = externalIdentifiers;
-    }
-
-
-    /**
-     * Return an enumeration of references to the related media associated with this asset.
-     *
-     * @return RelatedMediaReferences List
-     */
-    public List<RelatedMediaReference> getRelatedMediaReferences()
-    {
-        if (relatedMediaReferences == null)
-        {
-            return relatedMediaReferences;
-        }
-        else
-        {
-            return new ArrayList<>(relatedMediaReferences);
-        }
-    }
-
-
-    /**
-     * Set up the enumeration of references to the related media associated with this asset.
-     *
-     * @param relatedMediaReferences - RelatedMediaReferences list
-     */
-    public void setRelatedMediaReferences(List<RelatedMediaReference> relatedMediaReferences)
-    {
-        this.relatedMediaReferences = relatedMediaReferences;
-    }
-
-
-    /**
-     * Return an enumeration of NoteLogs linked to this asset.
-     *
-     * @return Notelogs list
-     */
-    public List<NoteLog> getNoteLogs()
-    {
-        if (noteLogs == null)
-        {
-            return noteLogs;
-        }
-        else
-        {
-            return new ArrayList<>(noteLogs);
-        }
-    }
-
-
-    /**
-     * Set up the list of note logs for this asset.
-     *
-     * @param noteLogs - NoteLogs list
-     */
-    public void setNoteLogs(List<NoteLog> noteLogs)
-    {
-        this.noteLogs = noteLogs;
-    }
-
-
-    /**
-     * Return the list of external references associated with this asset.
-     *
-     * @return ExternalReferences list
-     */
-    public List<ExternalReference> getExternalReferences()
-    {
-        if (externalReferences == null)
-        {
-            return externalReferences;
-        }
-        else
-        {
-            return new ArrayList<>(externalReferences);
-        }
-    }
-
-
-    /**
-     * Set up the external references for this asset.
-     *
-     * @param externalReferences - ExternalReferences list
-     */
-    public void setExternalReferences(List<ExternalReference> externalReferences)
-    {
-        this.externalReferences = externalReferences;
-    }
-
-
-    /**
-     * Return an enumeration of the connections defined for this asset.
-     *
-     * @return Connections enumeration
-     */
-    public List<Connection> getConnections()
-    {
-        if (connections == null)
-        {
-            return connections;
-        }
-        else
-        {
-            return new ArrayList<>(connections);
-        }
-    }
-
-
-    /**
-     * Set up the list of connections defined for accessing this asset.
-     *
-     * @param connections - Connections list
-     */
-    public void setConnections(ArrayList<Connection> connections)
-    {
-        this.connections = connections;
-    }
-
-
-    /**
-     * Return the list of licenses associated with the asset.
-     *
-     * @return Licenses
-     */
-    public List<License> getLicenses()
-    {
-        if (licenses == null)
-        {
-            return licenses;
-        }
-        else
-        {
-            return new ArrayList<>(licenses);
-        }
-    }
-
-
-    /**
-     * Set up the licenses associated with this asset.
-     *
-     * @param licenses - List of licenses
-     */
-    public void setLicenses(List<License> licenses) { this.licenses = licenses; }
-
-
-    /**
-     * Return the list of certifications awarded to the asset.
-     *
-     * @return Certifications - list of certifications
-     */
-    public List<Certification> getCertifications()
-    {
-        if (certifications == null)
-        {
-            return certifications;
-        }
-        else
-        {
-            return new ArrayList<>(certifications);
-        }
-    }
-
-
-    /**
-     * Set up the list of certifications awarded to the asset.
-     *
-     * @param certifications - Certifications - list of certifications
-     */
-    public void setCertifications(List<Certification> certifications) { this.certifications = certifications; }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetSummary.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetSummary.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetSummary.java
deleted file mode 100644
index 4a69c02..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetSummary.java
+++ /dev/null
@@ -1,384 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * AssetSummary is a POJO that holds asset properties that are used for displaying details of
- * an asset in summary lists or hover text.  It includes the following properties:
- * <ul>
- *     <li>type - metadata type information for the asset properties</li>
- *     <li>guid - globally unique identifier for the asset</li>
- *     <li>url - external link for the asset</li>
- *     <li>qualifiedName - The official (unique) name for the asset. This is often defined by the IT systems
- *     management organization and should be used (when available) on audit logs and error messages.
- *     (qualifiedName from Referenceable - model 0010)</li>
- *     <li>displayName - A consumable name for the endpoint.  Often a shortened form of the assetQualifiedName
- *     for use on user interfaces and messages.   The assetDisplayName should be only be used for audit logs and error
- *     messages if the assetQualifiedName is not set. (Sourced from attribute name within Asset - model 0010)</li>
- *     <li>shortDescription - short description about the asset.
- *     (Sourced from assetSummary within ConnectionsToAsset - model 0205)</li>
- *     <li>description - full description of the asset.
- *     (Sourced from attribute description within Asset - model 0010)</li>
- *     <li>owner - name of the person or organization that owns the asset.
- *     (Sourced from attribute owner within Asset - model 0010)</li>
- *     <li>classifications - list of classifications assigned to the asset</li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class AssetSummary extends AssetDescriptor
-{
-    /*
-     * Official type definition for this asset
-     */
-    private ElementType type = null;
-
-    /*
-     * Standard header for any metadata entity
-     */
-    private String guid = null;
-    private String url = null;
-
-    /*
-     * Base attributes from Referenceable and Asset
-     */
-    private String qualifiedName = null;
-    private String displayName = null;
-    private String shortDescription = null;
-    private String description = null;
-    private String owner = null;
-
-    /*
-     * Attached classifications
-     */
-    private List<Classification> classifications = null;
-
-
-    /**
-     * Typical Constructor - the AssetSummary is empty
-     */
-    public AssetSummary()
-    {
-        /*
-         * Initialize super class
-         */
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.  Note, this is a deep copy
-     *
-     * @param templateAssetSummary - template values for asset summary
-     */
-    public AssetSummary(AssetSummary   templateAssetSummary)
-    {
-        /*
-         * Initialize super class
-         */
-        super(templateAssetSummary);
-
-        /*
-         * Copy relevant values from the template
-         */
-        if (templateAssetSummary != null)
-        {
-            type = templateAssetSummary.getType();
-            guid = templateAssetSummary.getGUID();
-            url = templateAssetSummary.getURL();
-            qualifiedName = templateAssetSummary.getQualifiedName();
-            displayName = templateAssetSummary.getDisplayName();
-            shortDescription = templateAssetSummary.getShortDescription();
-            description = templateAssetSummary.getDescription();
-            owner = templateAssetSummary.getOwner();
-
-            List<Classification>  templateClassifications = templateAssetSummary.getClassifications();
-            if (templateClassifications != null)
-            {
-                classifications = new ArrayList<>(templateClassifications);
-            }
-
-        }
-    }
-
-
-    /**
-     * Return the element type properties for this asset.  These values are set up by the metadata repository
-     * and define details to the metadata entity used to represent this element.
-     *
-     * @return ElementType - type information.
-     */
-    public ElementType getType()
-    {
-        return type;
-    }
-
-
-    /**
-     * Set up the type properties for this element.
-     *
-     * @param type - details of the metadata type for this asset
-     */
-    public void setType(ElementType type)
-    {
-        if (type == null)
-        {
-            this.type = new ElementType();
-        }
-        else
-        {
-            this.type = type;
-            super.setAssetTypeName(type.getElementTypeName());
-        }
-    }
-
-
-    /**
-     * Return the unique id for this element.
-     *
-     * @return guid - unique id
-     */
-    public String getGUID() {
-        return guid;
-    }
-
-
-    /**
-     * Updates the guid property stored for the element.
-     * If a null is supplied it is saved as a null.
-     *
-     * @param  newGUID - guid property
-     */
-    public void setGUID(String  newGUID)
-    {
-        if (newGUID != null)
-        {
-            guid = newGUID;
-        }
-        else
-        {
-            guid = "";
-        }
-    }
-
-
-    /**
-     * Returns the URL for this element in the metadata repository.
-     * If no URL is known for the element then null is returned.
-     *
-     * @return element URL
-     */
-    public String getURL() {
-        return url;
-    }
-
-
-    /**
-     * Updates the URL for the element used to access its properties in the metadata repository.
-     * If a null is supplied it is saved as a null.
-     *
-     * @param url - element URL
-     */
-    public void setURL(String url) {
-        this.url = url;
-    }
-
-
-    /**
-     * Returns the stored qualified name property for the asset.
-     * If no qualified name is provided then null is returned.
-     *
-     * @return qualifiedName
-     */
-    public String getQualifiedName() {
-        return qualifiedName;
-    }
-
-
-    /**
-     * Updates the qualified name property stored for the asset.
-     * If a null is supplied it is saved as a null.
-     *
-     * @param  newQualifiedName - unique name
-     */
-    public void setQualifiedName(String  newQualifiedName)
-    {
-        if (newQualifiedName != null)
-        {
-            qualifiedName = newQualifiedName;
-
-            /*
-             * Use the qualified name as the asset name if it is not the empty string.
-             */
-            if (!qualifiedName.equals(""))
-            {
-                super.setAssetName(qualifiedName);
-            }
-        }
-        else
-        {
-            qualifiedName = "";
-        }
-    }
-
-
-    /**
-     * Returns the stored display name property for the asset.
-     * If no display name is available then null is returned.
-     *
-     * @return displayName
-     */
-    public String getDisplayName()
-    {
-        return displayName;
-    }
-
-
-    /**
-     * Updates the display name property stored for the asset.
-     * If a null is supplied it clears the display name.
-     *
-     * @param  newDisplayName - consumable name
-     */
-    public void setDisplayName(String  newDisplayName)
-    {
-        displayName = newDisplayName;
-
-        if (displayName != null && (!displayName.equals("")))
-        {
-            /*
-             * Use the display name for the asset name if qualified name is not set up.
-             */
-            if (qualifiedName == null || qualifiedName.equals(""))
-            {
-                super.setAssetName(displayName);
-            }
-        }
-    }
-
-
-    /**
-     * Returns the short description of the asset from relationship with Connection.
-     *
-     * @return shortDescription
-     */
-    public String getShortDescription()
-    {
-        return shortDescription;
-    }
-
-
-    /**
-     * Sets the short description for the asset.
-     *
-     * @param assetShortDescription - short description from relationship with Connection
-     */
-    public void setShortDescription(String assetShortDescription)
-    {
-        this.shortDescription = assetShortDescription;
-    }
-
-
-    /**
-     * Returns the stored description property for the asset.
-     * If no description is provided then null is returned.
-     *
-     * @return description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Updates the description property stored for the asset.
-     * If a null is supplied it clears any saved description.
-     *
-     * @param  newDescription - description
-     */
-    public void setDescription(String  newDescription) { description = newDescription; }
-
-
-    /**
-     * Returns the name of the owner for this asset.
-     *
-     * @return owner
-     */
-    public String getOwner() {
-        return owner;
-    }
-
-
-    /**
-     * Updates the name of the owner for this asset.
-     *
-     * @param newOwner - owner name
-     */
-    public void setOwner(String newOwner) { owner = newOwner; }
-
-
-    /**
-     * Return the list of classifications associated with the asset.   This is an enumeration and the
-     * pointers are set to the start of the list of classifications
-     *
-     * @return Classifications - list of classifications
-     */
-    public List<Classification> getClassifications()
-    {
-        if (classifications == null)
-        {
-            return classifications;
-        }
-        else
-        {
-            return new ArrayList<>(classifications);
-        }
-    }
-
-
-    /**
-     * Set up the list of classifications for this asset.
-     *
-     * @param classifications - list of classifications
-     */
-    public void setClassifications(List<Classification> classifications)
-    {
-        if (classifications == null)
-        {
-            this.classifications = classifications;
-        }
-        else
-        {
-            this.classifications = new ArrayList<>(classifications);
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetUniverse.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetUniverse.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetUniverse.java
deleted file mode 100644
index 0042f1e..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/AssetUniverse.java
+++ /dev/null
@@ -1,332 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * AssetUniverse extends AssetDetail which extend AssetSummary.  AssetUniverse adds information about the
- * common open metadata entities related to this asset.
- * <ul>
- *     <li>Meanings - glossary term(s) assigned to this asset.</li>
- *     <li>Schema - details of the schema associated with the asset.</li>
- *     <li>Analysis - details of the annotations added by the discovery services.</li>
- *     <li>Feedback - details of the people, products and feedback that are connected to the asset.</li>
- *     <li>Locations - details of the known locations of the asset.</li>
- *     <li>Lineage - details of the lineage for the asset.</li>
- *     <li>Related Assets - details of the assets lined to this asset.</li>
- * </ul>
- *
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class AssetUniverse extends AssetDetail
-{
-    private List<Meaning>      meanings       = null;
-    private SchemaElement      schema         = null;
-    private Analysis           analysis       = null;
-    private Feedback           feedback       = null;
-    private List<Location>     knownLocations = null;
-    private Lineage            lineage        = null;
-    private List<RelatedAsset> relatedAssets  = null;
-
-
-    /**
-     * Typical Constructor
-     */
-    public AssetUniverse()
-    {
-        /*
-         * Initialize the super classes
-         */
-        super();
-    }
-
-
-    /**
-     * Copy/clone Constructor - note this is a deep copy
-     *
-     * @param templateAssetUniverse - template to copy
-     */
-    public AssetUniverse(AssetUniverse   templateAssetUniverse)
-    {
-        /*
-         * Initialize the super classes
-         */
-        super(templateAssetUniverse);
-
-        /*
-         * Set up the universe private variables.
-         */
-        if (templateAssetUniverse != null)
-        {
-            /*
-             * Create the top-level property objects for this new asset using the values from the template.
-             * The get methods create clones of the returned objects so no need to duplicate objects here.
-             */
-            List<Meaning>      templateMeanings      = templateAssetUniverse.getMeanings();
-            SchemaElement      templateSchema        = templateAssetUniverse.getSchema();
-            Analysis           templateAnalysis      = templateAssetUniverse.getAnalysis();
-            Feedback           templateFeedback      = templateAssetUniverse.getFeedback();
-            List<Location>     templateLocations     = templateAssetUniverse.getKnownLocations();
-            Lineage            templateLineage       = templateAssetUniverse.getLineage();
-            List<RelatedAsset> templateRelatedAssets = templateAssetUniverse.getRelatedAssets();
-
-            if (templateMeanings != null)
-            {
-                meanings = new ArrayList<>(templateMeanings);
-            }
-            if (templateSchema != null)
-            {
-                if (templateSchema.getType().equals("Schema"))
-                {
-                    schema = new Schema((Schema) templateSchema);
-                }
-                else
-                {
-                    schema = new PrimitiveSchemaElement((PrimitiveSchemaElement) templateSchema);
-                }
-            }
-            if (templateAnalysis != null)
-            {
-                analysis = new Analysis(templateAnalysis);
-            }
-            if (templateFeedback != null)
-            {
-                feedback = new Feedback(templateFeedback);
-            }
-            if (templateLocations != null)
-            {
-                knownLocations = new ArrayList<>(templateLocations);
-            }
-            if (templateLineage != null)
-            {
-                lineage = new Lineage(templateLineage);
-            }
-            if (templateRelatedAssets != null)
-            {
-                relatedAssets = new ArrayList<>(templateRelatedAssets);
-            }
-        }
-    }
-
-
-    /**
-     * Return the list of glossary definitions assigned directly to this asset.
-     *
-     * @return Meanings - list of glossary definitions.
-     */
-    public List<Meaning> getMeanings()
-    {
-        if (meanings == null)
-        {
-            return meanings;
-        }
-        else
-        {
-            return new ArrayList<>(meanings);
-        }
-    }
-
-
-    /**
-     * Set up definitions assigned to the asset.
-     *
-     * @param meanings - Meanings - list of glossary definitions.
-     */
-    public void setMeanings(List<Meaning> meanings) { this.meanings = meanings; }
-
-
-    /**
-     * Return details of the schema associated with the asset.
-     *
-     * @return SchemaElement - schema object to query the schema associated with the connected asset.
-     */
-    public SchemaElement getSchema()
-    {
-        if (schema == null)
-        {
-            return schema;
-        }
-        else
-        {
-            return schema.cloneSchemaElement();
-        }
-    }
-
-
-    /**
-     * Set up the schema object for this connected asset.  This should contain the schema itself and
-     * the glossary definitions linked to the schema elements.
-     *
-     * @param schema - Schema object to query schema and related glossary definitions.
-     */
-    public void setSchema(SchemaElement schema) {
-        this.schema = schema;
-    }
-
-
-
-    /**
-     * Return details of the metadata discovery analysis for the asset.
-     *
-     * @return Analysis - analysis object to query the annotations
-     */
-    public Analysis getAnalysis()
-    {
-        if (analysis == null)
-        {
-            return analysis;
-        }
-        else
-        {
-            return new Analysis(analysis);
-        }
-    }
-
-
-    /**
-     * Set up the analysis object for the connected asset.  This should contain all of the annotations associated
-     * with the asset.
-     *
-     * @param analysis - Analysis object to query the annotations
-     */
-    public void setAnalysis(Analysis analysis)
-    {
-        this.analysis = analysis;
-    }
-
-
-    /**
-     * Return details of the people, products and feedback that are connected to the asset.
-     *
-     * @return Feedback - feedback object to query the feedback on the asset.
-     */
-    public Feedback getFeedback()
-    {
-        if (feedback == null)
-        {
-            return feedback;
-        }
-        else
-        {
-            return new Feedback(feedback);
-        }
-    }
-
-
-    /**
-     * Set up the feedback object for the connected asset.  This should contain all of the feedback associated
-     * with the asset.
-     *
-     * @param feedback - Feedback object to query the feedback.
-     */
-    public void setFeedback(Feedback feedback) {
-        this.feedback = feedback;
-    }
-
-
-    /**
-     * Set up the list of locations for the asset.
-     *
-     * @return Locations - list of locations.
-     */
-    public List<Location> getKnownLocations()
-    {
-        if (knownLocations == null)
-        {
-            return knownLocations;
-        }
-        else
-        {
-            return new ArrayList<>(knownLocations);
-        }
-    }
-
-
-    /**
-     * Set up the list of locations for the assets.
-     *
-     * @param knownLocations - Locations list
-     */
-    public void setKnownLocations(List<Location> knownLocations) { this.knownLocations = knownLocations; }
-
-
-    /**
-     * Return details of the lineage for the asset.
-     *
-     * @return Lineage  - lineage object that allows queries about the lineage of the asset.
-     */
-    public Lineage getLineage()
-    {
-        if (lineage == null)
-        {
-            return lineage;
-        }
-        else
-        {
-            return new Lineage(lineage);
-        }
-    }
-
-
-    /**
-     * Set up the lineage object for the asset.
-     *
-     * @param lineage - lineage object to query the origin of the asset.
-     */
-    public void setLineage(Lineage lineage) {
-        this.lineage = lineage;
-    }
-
-
-    /**
-     * Return the list of assets related to this asset.
-     *
-     * @return RelatedAssets list
-     */
-    public List<RelatedAsset> getRelatedAssets()
-    {
-        if (relatedAssets == null)
-        {
-            return relatedAssets;
-        }
-        else
-        {
-            return new ArrayList<>(relatedAssets);
-        }
-    }
-
-
-    /**
-     * Set up the related assets for this asset.
-     *
-     * @param relatedAssets - RelatedAssets list
-     */
-    public void setRelatedAssets(List<RelatedAsset> relatedAssets) { this.relatedAssets = relatedAssets; }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Certification.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Certification.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Certification.java
deleted file mode 100644
index 9e98c03..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Certification.java
+++ /dev/null
@@ -1,321 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.Date;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * <p>
- *     Certification stores the certifications awarded to the asset.
- * </p>
- * <p>
- *     Many regulations and industry bodies define certifications that can confirm a level of support,
- *     capability or competence in an aspect of a digital organization’s operation.
- *     Having certifications may be necessary to operating legally or may be a business advantage.
- * </p>
- * <p>
- *     The certifications awarded to an asset can be captured in the metadata repository to enable both
- *     use and management of the certification process.
- * </p>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Certification extends Referenceable
-{
-    /*
-     * Properties of a certification
-     */
-    private String            certificationTypeGUID   = null;
-    private String            certificationTypeName   = null;
-    private String            examiner                = null;
-    private String            summary                 = null;
-    private ExternalReference link                    = null;
-    private Date              startDate               = null;
-    private Date              endDate                 = null;
-    private String            certificationConditions = null;
-    private String            createdBy               = null;
-    private String            custodian               = null;
-    private String            notes                   = null;
-
-
-    /**
-     * Default constructor.
-     */
-    public Certification()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateCertification - element to copy
-     */
-    public Certification(Certification templateCertification)
-    {
-        super(templateCertification);
-
-        if (templateCertification != null)
-        {
-            certificationTypeGUID = templateCertification.getCertificationTypeGUID();
-            certificationTypeName = templateCertification.getCertificationTypeName();
-            examiner = templateCertification.getExaminer();
-            summary = templateCertification.getSummary();
-
-            ExternalReference  templateLink = templateCertification.getLink();
-            if (templateLink != null)
-            {
-                link = new ExternalReference(templateLink);
-            }
-
-            Date               templateStartDate = templateCertification.getStartDate();
-            if (templateStartDate != null)
-            {
-                startDate = new Date(templateStartDate.getTime());
-            }
-
-            Date               templateEndDate = templateCertification.getEndDate();
-            if (templateEndDate != null)
-            {
-                endDate = new Date(templateStartDate.getTime());
-            }
-
-            certificationConditions = templateCertification.getCertificationConditions();
-            createdBy = templateCertification.getCreatedBy();
-            custodian = templateCertification.getCustodian();
-            notes = templateCertification.getNotes();
-        }
-    }
-
-
-    /**
-     * Return the unique id for the type of certification.
-     *
-     * @return String certification type GUID
-     */
-    public String getCertificationTypeGUID() { return certificationTypeGUID; }
-
-
-    /**
-     * Set up the unique id of the certification type.
-     *
-     * @param certificationGUID - String certification type GUID
-     */
-    public void setCertificationTypeGUID(String certificationGUID) { this.certificationTypeGUID = certificationGUID; }
-
-
-    /**
-     * Return the type of the certification.
-     *
-     * @return String certification type
-     */
-    public String getCertificationTypeName() { return certificationTypeName; }
-
-
-    /**
-     * Set up the type of the certification.
-     *
-     * @param certificationTypeName - String certification type
-     */
-    public void setCertificationTypeName(String certificationTypeName) { this.certificationTypeName = certificationTypeName; }
-
-
-    /**
-     * Get the name of the organization or person that issued the certification.
-     *
-     * @return String name
-     */
-    public String getExaminer() { return examiner; }
-
-
-    /**
-     * Set up the name of the organization or person that issued the certification.
-     *
-     * @param examiner - String name
-     */
-    public void setExaminer(String examiner) { this.examiner = examiner; }
-
-
-    /**
-     * Return a brief summary of the certification.
-     *
-     * @return String summary
-     */
-    public String getSummary() { return summary; }
-
-
-    /**
-     * Set up a brief summary of the certification.
-     *
-     * @param summary - String
-     */
-    public void setSummary(String summary) { this.summary = summary; }
-
-
-    /**
-     * Return the link to the full text of the certification.
-     *
-     * @return ExternalReference for full text
-     */
-    public ExternalReference getLink()
-    {
-        if (link == null)
-        {
-            return link;
-        }
-        else
-        {
-            return new ExternalReference(link);
-        }
-    }
-
-
-    /**
-     * Set up the link to the full text of the certification.
-     *
-     * @param link - ExternalReference for full text
-     */
-    public void setLink(ExternalReference link) { this.link = link; }
-
-
-    /**
-     * Return the start date for the certification.  Null means unknown or not relevant.
-     *
-     * @return Date
-     */
-    public Date getStartDate()
-    {
-        if (startDate == null)
-        {
-            return startDate;
-        }
-        else
-        {
-            return new Date(startDate.getTime());
-        }
-    }
-
-
-    /**
-     * Set up start date for the certification.  Null means unknown or not relevant.
-     *
-     * @param startDate - Date
-     */
-    public void setStartDate(Date startDate) { this.startDate = startDate; }
-
-
-    /**
-     * Return the end date for the certification.   Null means it does not expire.
-     *
-     * @return Date
-     */
-    public Date getEndDate()
-    {
-        if (endDate == null)
-        {
-            return endDate;
-        }
-        else
-        {
-            return new Date(endDate.getTime());
-        }
-    }
-
-
-    /**
-     * Set up the end date for the certification.  Null means it does not expire.
-     *
-     * @param endDate - Date
-     */
-    public void setEndDate(Date endDate) { this.endDate = endDate; }
-
-
-    /**
-     * Return any special conditions that apply to the certification - such as endorsements.
-     *
-     * @return String certification conditions
-     */
-    public String getCertificationConditions() { return certificationConditions; }
-
-
-    /**
-     * Set up any special conditions that apply to the certification - such as endorsements.
-     *
-     * @param conditions - String certification conditions
-     */
-    public void setCertificationConditions(String conditions) { this.certificationConditions = conditions; }
-
-
-    /**
-     * Return the name of the person or organization that set up the certification for this asset.
-     *
-     * @return String name
-     */
-    public String getCreatedBy() { return createdBy; }
-
-
-    /**
-     * Set up the name of the person or organization that set up the certification for this asset.
-     *
-     * @param createdBy - String name
-     */
-    public void setCreatedBy(String createdBy) { this.createdBy = createdBy; }
-
-
-    /**
-     * Return the name of the person or organization that is responsible for the correct management of the asset
-     * according to the certification.
-     *
-     * @return String name
-     */
-    public String getCustodian() { return custodian; }
-
-
-    /**
-     * Set up the name of the person or organization that is responsible for the correct management of the asset
-     * according to the certification.
-     *
-     * @param custodian - String name
-     */
-    public void setCustodian(String custodian) { this.custodian = custodian; }
-
-
-    /**
-     * Return the notes from the custodian.
-     *
-     * @return String notes
-     */
-    public String getNotes() { return notes; }
-
-
-    /**
-     * Set up the notes from the custodian.
-     *
-     * @param notes - String
-     */
-    public void setNotes(String notes) { this.notes = notes; }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Classification.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Classification.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Classification.java
deleted file mode 100644
index 5a41333..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Classification.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.omas.connectedasset.ffdc.ConnectedAssetErrorCode;
-import org.apache.atlas.omas.connectedasset.ffdc.exceptions.ConnectedAssetRuntimeException;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The Classification class stores information about a classification assigned to an asset.  The Classification
- * has a name and some properties.  It also stores the typename of the asset it is connected to for debug purposes.
- *
- * Note: it is not valid to have a classification with a null or blank name.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Classification extends PropertyBase
-{
-    private String                       classificationName;
-    private AdditionalProperties         classificationProperties;
-
-    /**
-     * A private validation method used by the constructors.
-     *
-     * @param name - name to check
-     * @return validated name
-     */
-    private String validateName(String   name)
-    {
-        final String  methodName = "validateName";
-
-        /*
-         * Throw an exception if the classification's name is null because that does not make sense.
-         * The constructors do not catch this exception so it is received by the creator of the classification
-         * object.
-         */
-        if (name == null || name.equals(""))
-        {
-            /*
-             * Build and throw exception.  This should not happen - likely to be a problem in the
-             * repository connector.
-             */
-            ConnectedAssetErrorCode errorCode = ConnectedAssetErrorCode.NULL_CLASSIFICATION_NAME;
-            String       errorMessage = errorCode.getErrorMessageId()
-                                      + errorCode.getFormattedErrorMessage(methodName, this.getClass().getName());
-
-            throw new ConnectedAssetRuntimeException(errorCode.getHTTPErrorCode(),
-                                                     this.getClass().getName(),
-                                                     methodName,
-                                                     errorMessage,
-                                                     errorCode.getSystemAction(),
-                                                     errorCode.getUserAction());
-        }
-        else
-        {
-            return name;
-        }
-    }
-
-
-    /**
-     * Typical constructor - verifies and saves parameters.
-     *
-     * @param name - name of the classification
-     * @param properties - additional properties for the classification
-     */
-    public Classification(String               name,
-                          AdditionalProperties properties)
-    {
-        super();
-
-        this.classificationName = validateName(name);
-        this.classificationProperties = properties;
-    }
-
-
-    /**
-     * Copy/clone Constructor - sets up new classification using values from the template
-     *
-     * @param templateClassification - object to copy
-     */
-    public Classification(Classification templateClassification)
-    {
-        super(templateClassification);
-
-        final String  methodName = "Constructor";
-
-        /*
-         * An empty classification object is passed in the variable declaration so throw exception
-         * because we need the classification name.
-         */
-        if (templateClassification == null)
-        {
-            /*
-             * Build and throw exception.  This should not happen - likely to be a problem in the
-             * repository connector.
-             */
-            ConnectedAssetErrorCode errorCode = ConnectedAssetErrorCode.NULL_CLASSIFICATION_NAME;
-            String       errorMessage = errorCode.getErrorMessageId()
-                                      + errorCode.getFormattedErrorMessage(methodName, this.getClass().getName());
-
-            throw new ConnectedAssetRuntimeException(errorCode.getHTTPErrorCode(),
-                                                     this.getClass().getName(),
-                                                     methodName,
-                                                     errorMessage,
-                                                     errorCode.getSystemAction(),
-                                                     errorCode.getUserAction());
-        }
-        else
-        {
-            /*
-             * Save the name and properties.
-             */
-            this.classificationName = validateName(templateClassification.getName());
-            this.classificationProperties = templateClassification.getProperties();
-        }
-    }
-
-
-    /**
-     * Return the name of the classification
-     *
-     * @return name of classification
-     */
-    public String getName()
-    {
-        return classificationName;
-    }
-
-
-    /**
-     * Returns a collection of the additional stored properties for the classification.
-     * If no stored properties are present then null is returned.
-     *
-     * @return properties for the classification
-     */
-    public AdditionalProperties getProperties()
-    {
-        if (classificationProperties == null)
-        {
-            return classificationProperties;
-        }
-        else
-        {
-            return new AdditionalProperties(classificationProperties);
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Comment.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Comment.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Comment.java
deleted file mode 100644
index 40c354c..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Comment.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * Stores information about a comment connected to an asset.  Comments provide informal feedback to assets
- * and can be added at any time.
- *
- * Comments have the userId of the person who added the feedback, along with their comment text.
- *
- * Comments can have other comments attached.
- *
- * The content of the comment is a personal statement (which is why the user's id is in the comment)
- * and there is no formal review of the content.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Comment extends ElementHeader
-{
-    /*
-     * Attributes of a Comment
-     */
-    private String        commentText    = null;
-    private String        user           = null;
-    private List<Comment> commentReplies = null;
-    private CommentType   commentType    = null;
-
-
-    /**
-     * Default Constructor
-     */
-    public Comment()
-    {
-        super();
-    }
-
-
-    /**
-     * Copy/clone constructor.
-     *
-     * @param templateComment - element to copy
-     */
-    public Comment(Comment templateComment)
-    {
-        super(templateComment);
-
-        if (templateComment != null)
-        {
-            /*
-             * Copy the values from the supplied comment.
-             */
-            user = templateComment.getUser();
-            commentText = templateComment.getCommentText();
-
-            List<Comment> templateCommentReplies = templateComment.getCommentReplies();
-            if (templateCommentReplies != null)
-            {
-                commentReplies = new ArrayList<>(templateCommentReplies);
-            }
-        }
-    }
-
-
-    /**
-     * Return the user id of the person who created the comment.  Null means the user id is not known.
-     *
-     * @return String - commenting user
-     */
-    public String getUser() {
-        return user;
-    }
-
-
-    /**
-     * Set up the user id of the person who created the comment. Null means the user id is not known.
-     *
-     * @param user - String - commenting user
-     */
-    public void setUser(String user) {
-        this.user = user;
-    }
-
-
-    /**
-     * Return the comment text.
-     *
-     * @return String - commentText
-     */
-    public String getCommentText() {
-        return commentText;
-    }
-
-
-    /**
-     * Set up the comment text.
-     *
-     * @param commentText String
-     */
-    public void setCommentText(String  commentText) { this.commentText = commentText; }
-
-
-    /**
-     * Return an enumeration of the replies to this comment - null means no replies are available.
-     *
-     * @return Comments - comment replies list
-     */
-    public List<Comment> getCommentReplies()
-    {
-        if (commentReplies == null)
-        {
-            return commentReplies;
-        }
-        else
-        {
-            return new ArrayList<>(commentReplies);
-        }
-    }
-
-
-    /**
-     * Set up the comment replies enumeration - null means no replies are available.
-     *
-     * @param commentReplies - List of Comments
-     */
-    public void setCommentReplies(List<Comment> commentReplies)
-    {
-        if (commentReplies == null)
-        {
-            this.commentReplies = null;
-        }
-        else
-        {
-            this.commentReplies = new ArrayList<>(commentReplies);
-        }
-    }
-
-
-    /**
-     * Return the type of comment.
-     *
-     * @return comment type enum
-     */
-    public CommentType getCommentType()
-    {
-        return commentType;
-    }
-
-
-    /**
-     * Set up the type of comment.
-     *
-     * @param commentType - enum
-     */
-    public void setCommentType(CommentType commentType)
-    {
-        this.commentType = commentType;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/CommentType.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/CommentType.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/CommentType.java
deleted file mode 100644
index 675b2cc..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/CommentType.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import java.io.Serializable;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The CommentType allows comments to be used to ask and answer questions as well as make suggestions and
- * provide useful information to other users.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public enum CommentType implements Serializable
-{
-    STANDARD_COMMENT(0, "Comment", "General comment about the asset."),
-    QUESTION(1, "Question", "Asks a question to the people owning, managing or using the asset."),
-    ANSWER(2, "Answer", "Answers a question (posted as a reply to the question)."),
-    SUGGESTION(3, "Suggestion", "Provides a suggestion on how to improve the asset or its properties and description."),
-    USAGE_EXPERIENCE(4, "Experience", "Describes situations where this asset has been used and related hints and tips.");
-
-    private static final long     serialVersionUID = 1L;
-
-    private int            commentTypeCode;
-    private String         commentType;
-    private String         commentTypeDescription;
-
-
-    /**
-     * Typical Constructor
-     */
-    CommentType(int     commentTypeCode, String   commentType, String   commentTypeDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.commentTypeCode = commentTypeCode;
-        this.commentType = commentType;
-        this.commentTypeDescription = commentTypeDescription;
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - comment type code
-     */
-    public int getCommentTypeCode()
-    {
-        return commentTypeCode;
-    }
-
-
-    /**
-     * Return the default type name for this enum instance.
-     *
-     * @return String - default type name
-     */
-    public String getCommentType()
-    {
-        return commentType;
-    }
-
-
-    /**
-     * Return the default description for the star rating for this enum instance.
-     *
-     * @return String - default description
-     */
-    public String getCommentTypeDescription()
-    {
-        return commentTypeDescription;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Connection.java
----------------------------------------------------------------------
diff --git a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Connection.java b/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Connection.java
deleted file mode 100644
index 1bafb4b..0000000
--- a/omas-connectedasset/src/main/java/org/apache/atlas/omas/connectedasset/properties/Connection.java
+++ /dev/null
@@ -1,313 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omas.connectedasset.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * The connection is an object that contains the properties needed to create and initialise a connector to access a
- * specific data assets.
- *
- * The properties for a connection are defined in model 0201.  They include the following options for connector name:
- * <ul>
- *     <li>
- *         guid - Globally unique identifier for the connection.
- *     </li>
- *     <li>
- *         url - URL of the connection definition in the metadata repository.
- *         This URL can be stored as a property in another entity to create an explicit link to this connection.
- *     </li>
- *     <li>
- *         qualifiedName - The official (unique) name for the connection.
- *         This is often defined by the IT systems management organization and should be used (when available) on
- *         audit logs and error messages.  The qualifiedName is defined in the 0010 model as part of Referenceable.
- *     </li>
- *     <li>
- *         displayName - A consumable name for the connection.   Often a shortened form of the qualifiedName for use
- *         on user interfaces and messages.  The displayName should be only be used for audit logs and error messages
- *         if the qualifiedName is not set.
- *     </li>
- * </ul>
- *  Either the guid, qualifiedName or displayName can be used to specify the name for a connection.
- *
- *  Other properties for the connection include:
- *
- *  <ul>
- *      <li>
- *          type - information about the TypeDef for Connection
- *      </li>
- *      <li>
- *          description - A full description of the connection covering details of the assets it connects to
- *          along with usage and versioning information.
- *      </li>
- *      <li>
- *          additionalProperties - Any additional properties associated with the connection.
- *      </li>
- *      <li>
- *          securedProperties - Protected properties for secure log on by connector to back end server.  These
- *          are protected properties that can only be retrieved by privileged connector code.
- *      </li>
- *      <li>
- *          connectorType - Properties that describe the connector type for the connector.
- *      </li>
- *      <li>
- *          endpoint - Properties that describe the server endpoint where the connector will retrieve the assets.
- *      </li>
- *  </ul>
-
- * The connection class is simply used to cache the properties for an connection.
- * It is used by other classes to exchange this information between a metadata repository and a consumer.
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class Connection extends Referenceable
-{
-    /*
-     * Attributes of a connector
-     */
-    private String                    displayName = null;
-    private String                    description = null;
-    private ConnectorType             connectorType = null;
-    private Endpoint                  endpoint = null;
-
-    /*
-     * Secured properties are protected so they can only be accessed by subclassing this object.
-     */
-    protected AdditionalProperties    securedProperties = null;
-
-
-    /**
-     * Default Constructor - this is used when the connection is being used independently of the connected
-     * asset - typically when constructing Connectors and managing information about remote systems.
-     * This is why the parent asset is null.
-     */
-    public Connection()
-    {
-        super(null);
-    }
-
-
-    /**
-     * Copy/clone Constructor to return a copy of a connection object that is not connected to an asset.
-     *
-     * @param templateConnection - Connection to copy
-     */
-    public Connection(Connection   templateConnection)
-    {
-        super(templateConnection);
-
-        /*
-         * Copy over properties from the template.
-         */
-        if (templateConnection != null)
-        {
-            displayName = templateConnection.getDisplayName();
-            description = templateConnection.getDescription();
-
-            ConnectorType          templateConnectorType = templateConnection.getConnectorType();
-            Endpoint               templateEndpoint = templateConnection.getEndpoint();
-            AdditionalProperties   templateSecuredProperties = templateConnection.getSecuredProperties();
-
-            if (templateConnectorType != null)
-            {
-                connectorType = new ConnectorType(templateConnectorType);
-            }
-            if (templateEndpoint != null)
-            {
-                endpoint = new Endpoint(templateEndpoint);
-            }
-            if (templateSecuredProperties != null)
-            {
-                securedProperties = new AdditionalProperties(templateSecuredProperties);
-            }
-        }
-    }
-
-
-    /**
-     * Returns the stored display name property for the connection.
-     * Null means no displayName is available.
-     *
-     * @return displayName
-     */
-    public String getDisplayName() { return displayName; }
-
-
-    /**
-     * Updates the display name property stored for the connection.
-     * If a null is supplied it means no display name is available.
-     *
-     * @param  newDisplayName - consumable name
-     */
-    public void setDisplayName(String  newDisplayName) { displayName = newDisplayName; }
-
-
-    /**
-     * Returns a formatted string with the connection name.  It is used in formatting error messages for the
-     * exceptions thrown by consuming components.  It is extremely cautious because most of the exceptions
-     * are reporting a malformed connection object so who knows what else is wrong with it.
-     *
-     * Within the connection are 2 possible properties that could
-     * contain the connection name:
-     *   ** qualifiedName - this is a uniqueName and should be there
-     *   ** displayName - shorter simpler name but may not be unique - so may not identify the connection in error
-     *
-     * This method inspects these properties and builds up a string to represent the connection name
-     *
-     * @return connection name
-     */
-    public String  getConnectionName()
-    {
-        String   connectionName = "<Unknown>"; /* if all properties are blank */
-
-        /*
-         * The qualifiedName is preferred because it is unique.
-         */
-        if (qualifiedName != null && (!qualifiedName.equals("")))
-        {
-            /*
-             * Use qualified name.
-             */
-            connectionName = qualifiedName;
-        }
-        else if (displayName != null && (!displayName.equals("")))
-        {
-            /*
-             * The qualifiedName is not set but the displayName is available so use it.
-             */
-            connectionName = displayName;
-        }
-
-        return connectionName;
-    }
-
-
-    /**
-     * Returns the stored description property for the connection.
-     * If no description is provided then null is returned.
-     *
-     * @return description
-     */
-    public String getDescription()
-    {
-        return description;
-    }
-
-
-    /**
-     * Updates the description property stored for the connection.
-     * If a null is supplied it means no description is available.
-     *
-     * @param  newDescription - description
-     */
-    public void setDescription(String  newDescription) { description = newDescription; }
-
-
-    /**
-     * Returns a copy of the properties for this connection's connector type.
-     * A null means there is no connection type.
-     *
-     * @return connector type
-     */
-    public ConnectorType getConnectorType()
-    {
-        if (connectorType == null)
-        {
-            return connectorType;
-        }
-        else
-        {
-            return new ConnectorType(connectorType);
-        }
-    }
-
-
-    /**
-     * Updates the connector type for the connection.  If null is supplied, it means there is no connection type.
-     *
-     * @param newConnectorType - connector type to copy
-     */
-    public void setConnectorType(ConnectorType   newConnectorType) { connectorType = newConnectorType; }
-
-
-    /**
-     * Returns a copy of the properties for this connection's endpoint.
-     * Null means no endpoint information available.
-     *
-     * @return endpoint
-     */
-    public Endpoint getEndpoint()
-    {
-        if (endpoint == null)
-        {
-            return endpoint;
-        }
-        else
-        {
-            return new Endpoint(endpoint);
-        }
-    }
-
-
-    /**
-     * Updates the endpoint properties for this connection.  If null is supplied is means there is no endpoint
-     * defined for this connection.
-     *
-     * @param newEndpoint - endpoint properties
-     */
-    public void setEndpoint(Endpoint   newEndpoint) { endpoint = newEndpoint; }
-
-
-    /**
-     * Return a copy of the secured properties.  Null means no secured properties are available.
-     * This method is protected so only OCF (or subclasses) can access them.  When Connector is passed to calling
-     * OMAS, the secured properties are not available.
-     *
-     * @return secured properties - typically user credentials for the connection
-     */
-    protected AdditionalProperties getSecuredProperties()
-    {
-        if (securedProperties == null)
-        {
-            return securedProperties;
-        }
-        else
-        {
-            return new AdditionalProperties(securedProperties);
-        }
-    }
-
-
-    /**
-     * Set up a new secured properties object.  This is public so the metadata repository can set up the
-     * secured properties retrieved from the metadata repository.
-     *
-     * @param newSecuredProperties - typically user credentials for the connection
-     */
-    public void setSecuredProperties(AdditionalProperties newSecuredProperties)
-    {
-        securedProperties = newSecuredProperties;
-    }
-}
\ No newline at end of file


[42/51] [partial] atlas git commit: ATLAS-2722: moved unused code from branch-1.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/configuration/properties/AccessServiceConfig.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/configuration/properties/AccessServiceConfig.java b/omag-api/src/main/java/org/apache/atlas/omag/configuration/properties/AccessServiceConfig.java
deleted file mode 100644
index 0a5bec1..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/configuration/properties/AccessServiceConfig.java
+++ /dev/null
@@ -1,431 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.configuration.properties;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.ocf.properties.ElementOrigin;
-import org.apache.atlas.ocf.properties.beans.Connection;
-import org.apache.atlas.ocf.properties.beans.ConnectorType;
-import org.apache.atlas.ocf.properties.beans.ElementType;
-import org.apache.atlas.ocf.properties.beans.Endpoint;
-import org.apache.atlas.omag.configuration.registration.AccessServiceDescription;
-import org.apache.atlas.omag.configuration.registration.AccessServiceOperationalStatus;
-import org.apache.atlas.omag.configuration.registration.AccessServiceRegistration;
-import org.apache.atlas.omrs.topicconnectors.kafka.KafkaOMRSTopicProvider;
-
-import java.io.Serializable;
-import java.util.Map;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * AccessServiceConfig provides the configuration for a single Open Metadata Access Service (OMAS)
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class AccessServiceConfig implements Serializable
-{
-    private static final long serialVersionUID = 1L;
-
-    private static final String      defaultInTopicName = "InTopic";
-    private static final String      defaultOutTopicName = "OutTopic";
-
-    private int                            accessServiceId                = 0;
-    private String                         accessServiceAdminClass        = null;
-    private String                         accessServiceName              = null;
-    private String                         accessServiceDescription       = null;
-    private String                         accessServiceWiki              = null;
-    private AccessServiceOperationalStatus accessServiceOperationalStatus = null;
-    private Connection                     accessServiceInTopic           = null;
-    private Connection                     accessServiceOutTopic          = null;
-    private Map<String, String>            accessServiceOptions           = null;
-
-
-    /**
-     * Default constructor for use with Jackson libraries
-     */
-    public AccessServiceConfig()
-    {
-    }
-
-
-    /**
-     * Set up the default values for an access service using an access service description.
-     *
-     * @param accessServiceRegistration - AccessServiceDescription enum
-     */
-    public AccessServiceConfig(AccessServiceRegistration accessServiceRegistration)
-    {
-        this.accessServiceId = accessServiceRegistration.getAccessServiceCode();
-        this.accessServiceName = accessServiceRegistration.getAccessServiceName();
-        this.accessServiceAdminClass = accessServiceRegistration.getAccessServiceAdminClassName();
-        this.accessServiceDescription = accessServiceRegistration.getAccessServiceDescription();
-        this.accessServiceWiki = accessServiceRegistration.getAccessServiceWiki();
-        this.accessServiceOperationalStatus = accessServiceRegistration.getAccessServiceOperationalStatus();
-        this.accessServiceInTopic = this.getDefaultTopicConnection(defaultInTopicName,
-                                                                   accessServiceRegistration.getAccessServiceInTopic());
-        this.accessServiceOutTopic = this.getDefaultTopicConnection(defaultOutTopicName,
-                                                                    accessServiceRegistration.getAccessServiceOutTopic());
-    }
-
-
-    /**
-     * Return the code number (ordinal) for this access service.
-     *
-     * @return int ordinal
-     */
-    public int getAccessServiceId()
-    {
-        return accessServiceId;
-    }
-
-
-    /**
-     * Set up the code number (ordinal) for this access service.
-     *
-     * @param accessServiceId int ordinal
-     */
-    public void setAccessServiceId(int accessServiceId)
-    {
-        this.accessServiceId = accessServiceId;
-    }
-
-
-    /**
-     * Return the Java class name of the admin interface for this access service.
-     *
-     * @return String class name implementing the org.apache.atlas.omag.configuration.registration.AccessServiceAdmin
-     * interface.
-     */
-    public String getAccessServiceAdminClass()
-    {
-        return accessServiceAdminClass;
-    }
-
-
-    /**
-     * Set up the Java class name of the admin interface for this access service.
-     *
-     * @param accessServiceAdminClass - String class name implementing the
-     *                                org.apache.atlas.omag.configuration.registration.AccessServiceAdmin interface.
-     */
-    public void setAccessServiceAdminClass(String accessServiceAdminClass)
-    {
-        this.accessServiceAdminClass = accessServiceAdminClass;
-    }
-
-
-    /**
-     * Return the name of the access service.
-     *
-     * @return String name
-     */
-    public String getAccessServiceName()
-    {
-        return accessServiceName;
-    }
-
-
-    /**
-     * Set up the name of the access service.
-     *
-     * @param accessServiceName - String name
-     */
-    public void setAccessServiceName(String accessServiceName)
-    {
-        this.accessServiceName = accessServiceName;
-    }
-
-
-    /**
-     * Return the short description of the access service.  The default value is in English but this can be changed.
-     *
-     * @return String description
-     */
-    public String getAccessServiceDescription()
-    {
-        return accessServiceDescription;
-    }
-
-
-    /**
-     * Set up the short description of the access service.
-     *
-     * @param accessServiceDescription - String description
-     */
-    public void setAccessServiceDescription(String accessServiceDescription)
-    {
-        this.accessServiceDescription = accessServiceDescription;
-    }
-
-
-    /**
-     * Return the wiki page link for the access service.  The default value points to a page on the Atlas
-     * confluence wiki.
-     *
-     * @return String url
-     */
-    public String getAccessServiceWiki()
-    {
-        return accessServiceWiki;
-    }
-
-
-    /**
-     * Set up the wiki page link for the access service.
-     *
-     * @param accessServiceWiki - String url
-     */
-    public void setAccessServiceWiki(String accessServiceWiki)
-    {
-        this.accessServiceWiki = accessServiceWiki;
-    }
-
-
-    /**
-     * Return the status of this access service.
-     *
-     * @return AccessServiceOperationalStatus enum
-     */
-    public AccessServiceOperationalStatus getAccessServiceOperationalStatus()
-    {
-        return accessServiceOperationalStatus;
-    }
-
-
-    /**
-     * Set up the status of the access service.
-     *
-     * @param accessServiceOperationalStatus - AccessServiceOperationalStatus enum
-     */
-    public void setAccessServiceOperationalStatus(AccessServiceOperationalStatus accessServiceOperationalStatus)
-    {
-        this.accessServiceOperationalStatus = accessServiceOperationalStatus;
-    }
-
-
-    /**
-     * Return the OCF Connection for the topic used to pass requests to this access service.
-     * The default values are constructed from the access service name.
-     *
-     * @return Connection for InTopic
-     */
-    public Connection getAccessServiceInTopic()
-    {
-        return accessServiceInTopic;
-    }
-
-
-    /**
-     * Set up the OCF Connection for the topic used to pass requests to this access service.
-     *
-     * @param accessServiceInTopic - Connection properties
-     */
-    public void setAccessServiceInTopic(Connection accessServiceInTopic)
-    {
-        this.accessServiceInTopic = accessServiceInTopic;
-    }
-
-
-    /**
-     * Return the OCF Connection for the topic used by this access service to publish events.
-     * The default values are constructed from the access service name.
-     *
-     * @return Connection for OutTopic
-     */
-    public Connection getAccessServiceOutTopic()
-    {
-        return accessServiceOutTopic;
-    }
-
-
-    /**
-     * Set up the OCF Connection of the topic used by this access service to publish events.
-     *
-     * @param accessServiceOutTopic - Connection properties
-     */
-    public void setAccessServiceOutTopic(Connection accessServiceOutTopic)
-    {
-        this.accessServiceOutTopic = accessServiceOutTopic;
-    }
-
-
-    /**
-     * Return the options for this access service. These are properties that are specific to the access service.
-     *
-     * @return Map from String to String
-     */
-    public Map<String, String> getAccessServiceOptions()
-    {
-        return accessServiceOptions;
-    }
-
-
-    /**
-     * Set up the options for this access service.  These are properties that are specific to the access service.
-     *
-     * @param accessServiceOptions - Map from String to String
-     */
-    public void setAccessServiceOptions(Map<String, String> accessServiceOptions)
-    {
-        this.accessServiceOptions = accessServiceOptions;
-    }
-
-
-    /**
-     * Return default values for the topic connection.
-     *
-     * @param connectionName - name to use in the connection object
-     * @param topicName - name of the topic
-     * @return Connection object
-     */
-    private Connection getDefaultTopicConnection(String    connectionName,
-                                                 String    topicName)
-    {
-        String  description = connectionName + " for " + accessServiceName;
-
-        final String endpointGUID = "f6e296ae-d001-44b2-80c9-b8240a246d61";
-        final String connectorTypeGUID = "1db88a02-475f-43f9-b226-3b807f0caba5";
-        final String connectionGUID = "bb32263c-a9ce-4262-98b0-b629a9d08614";
-
-        final String endpointDescription = "OMRS default cohort registry endpoint.";
-
-        Endpoint endpoint = new Endpoint();
-
-        endpoint.setType(this.getEndpointType());
-        endpoint.setGUID(endpointGUID);
-        endpoint.setQualifiedName(topicName);
-        endpoint.setDisplayName(topicName);
-        endpoint.setDescription(description);
-        endpoint.setAddress(topicName);
-
-        final String connectorTypeJavaClassName = KafkaOMRSTopicProvider.class.getName();
-
-        ConnectorType connectorType = new ConnectorType();
-
-        connectorType.setType(this.getConnectorTypeType());
-        connectorType.setGUID(connectorTypeGUID);
-        connectorType.setQualifiedName(topicName);
-        connectorType.setDisplayName(topicName);
-        connectorType.setDescription(description);
-        connectorType.setConnectorProviderClassName(connectorTypeJavaClassName);
-
-        Connection connection = new Connection();
-
-        connection.setType(this.getConnectionType());
-        connection.setGUID(connectionGUID);
-        connection.setQualifiedName(connectionName);
-        connection.setDisplayName(connectionName);
-        connection.setDescription(description);
-        connection.setEndpoint(endpoint);
-        connection.setConnectorType(connectorType);
-
-        return connection;
-    }
-
-
-    /**
-     * Return the standard type for an endpoint.
-     *
-     * @return ElementType object
-     */
-    public ElementType getEndpointType()
-    {
-        final String        elementTypeId                   = "dbc20663-d705-4ff0-8424-80c262c6b8e7";
-        final String        elementTypeName                 = "Endpoint";
-        final long          elementTypeVersion              = 1;
-        final String        elementTypeDescription          = "Description of the network address and related information needed to call a software service.";
-        final String        elementAccessServiceURL         = null;
-        final ElementOrigin elementOrigin                   = ElementOrigin.LOCAL_COHORT;
-        final String        elementHomeMetadataCollectionId = null;
-
-        ElementType elementType = new ElementType();
-
-        elementType.setElementTypeId(elementTypeId);
-        elementType.setElementTypeName(elementTypeName);
-        elementType.setElementTypeVersion(elementTypeVersion);
-        elementType.setElementTypeDescription(elementTypeDescription);
-        elementType.setElementAccessServiceURL(elementAccessServiceURL);
-        elementType.setElementOrigin(elementOrigin);
-        elementType.setElementHomeMetadataCollectionId(elementHomeMetadataCollectionId);
-
-        return elementType;
-    }
-
-
-    /**
-     * Return the standard type for a connector type.
-     *
-     * @return ElementType object
-     */
-    public ElementType getConnectorTypeType()
-    {
-        final String        elementTypeId                   = "954421eb-33a6-462d-a8ca-b5709a1bd0d4";
-        final String        elementTypeName                 = "ConnectorType";
-        final long          elementTypeVersion              = 1;
-        final String        elementTypeDescription          = "A set of properties describing a type of connector.";
-        final String        elementAccessServiceURL         = null;
-        final ElementOrigin elementOrigin                   = ElementOrigin.LOCAL_COHORT;
-        final String        elementHomeMetadataCollectionId = null;
-
-        ElementType elementType = new ElementType();
-
-        elementType.setElementTypeId(elementTypeId);
-        elementType.setElementTypeName(elementTypeName);
-        elementType.setElementTypeVersion(elementTypeVersion);
-        elementType.setElementTypeDescription(elementTypeDescription);
-        elementType.setElementAccessServiceURL(elementAccessServiceURL);
-        elementType.setElementOrigin(elementOrigin);
-        elementType.setElementHomeMetadataCollectionId(elementHomeMetadataCollectionId);
-
-        return elementType;
-    }
-
-
-    /**
-     * Return the standard type for a connection type.
-     *
-     * @return ElementType object
-     */
-    public ElementType getConnectionType()
-    {
-        final String        elementTypeId                   = "114e9f8f-5ff3-4c32-bd37-a7eb42712253";
-        final String        elementTypeName                 = "Connection";
-        final long          elementTypeVersion              = 1;
-        final String        elementTypeDescription          = "A set of properties to identify and configure a connector instance.";
-        final String        elementAccessServiceURL         = null;
-        final ElementOrigin elementOrigin                   = ElementOrigin.LOCAL_COHORT;
-        final String        elementHomeMetadataCollectionId = null;
-
-        ElementType elementType = new ElementType();
-
-        elementType.setElementTypeId(elementTypeId);
-        elementType.setElementTypeName(elementTypeName);
-        elementType.setElementTypeVersion(elementTypeVersion);
-        elementType.setElementTypeDescription(elementTypeDescription);
-        elementType.setElementAccessServiceURL(elementAccessServiceURL);
-        elementType.setElementOrigin(elementOrigin);
-        elementType.setElementHomeMetadataCollectionId(elementHomeMetadataCollectionId);
-
-        return elementType;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/configuration/properties/OMAGServerConfig.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/configuration/properties/OMAGServerConfig.java b/omag-api/src/main/java/org/apache/atlas/omag/configuration/properties/OMAGServerConfig.java
deleted file mode 100644
index 46d4a65..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/configuration/properties/OMAGServerConfig.java
+++ /dev/null
@@ -1,256 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.configuration.properties;
-
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import org.apache.atlas.omrs.admin.properties.RepositoryServicesConfig;
-
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.List;
-
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
-import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.PUBLIC_ONLY;
-
-/**
- * OMAGServerConfig provides the properties used to initialize an open metadata and governance (OMAG) server.
- *
- * The OMAG server configuration has the following properties:
- * <ul>
- *     <li>
- *         localServerName - meaningful name for the server for use in messages and UIs.
- *         Ideally this value is unique to aid administrators in understanding the behavior of the local
- *         server/repository in the open metadata cluster.
- *
- *         The default value is "Default Server".
- *     </li>
- *     <li>
- *         localServerType - descriptive type name for the local server.  Again this is useful information for the
- *         administrator to understand which vendor implementation, or version of the vendor implementation, is
- *         in operation.
- *
- *         The default value is "Open Metadata and Governance Server".
- *     </li>
- *     <li>
- *         organizationName - descriptive name for the organization that owns the local server/repository.
- *         This is useful when the open metadata repository cluster consists of metadata servers from different
- *         organizations, or different departments of an enterprise.
- *
- *         The default value is null.
- *     </li>
- *     <li>
- *         localServerURL - network address of the server (typically URL and port number).
- *     </li>
- * </ul>
- */
-@JsonAutoDetect(getterVisibility=PUBLIC_ONLY, setterVisibility=PUBLIC_ONLY, fieldVisibility=NONE)
-@JsonInclude(JsonInclude.Include.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown=true)
-public class OMAGServerConfig implements Serializable
-{
-    /*
-     * Default values used when the server configuration does not provide a value.
-     */
-    private static final String  defaultLocalServerType                   = "Open Metadata and Governance Server";
-    private static final String  defaultLocalOrganizationName             = null;
-    private static final String  defaultLocalServerURL                    = "http://localhost:8080";
-    private static final int     defaultMaxPageSize                       = 1000;
-
-
-    /*
-     * Values in use by this server.
-     */
-    private String                    localServerName          = null;
-    private String                    localServerType          = defaultLocalServerType;
-    private String                    organizationName         = defaultLocalOrganizationName;
-    private String                    localServerURL           = defaultLocalServerURL;
-    private int                       maxPageSize              = defaultMaxPageSize;
-    private List<AccessServiceConfig> accessServicesConfig     = new ArrayList<>();
-    private RepositoryServicesConfig  repositoryServicesConfig = null;
-
-
-    private static final long serialVersionUID = 1L;
-
-
-    /**
-     * Default constructor used to set all properties to their default value.  This means the server can connect to the
-     * cluster (assuming the default topic name is used by the cluster) and replicate metadata, but it will not be
-     * remotely callable through an OMRS connector.
-     */
-    public OMAGServerConfig()
-    {
-
-    }
-
-
-    /**
-     * Return the name of the local server.
-     *
-     * @return String server name
-     */
-    public String getLocalServerName()
-    {
-        return localServerName;
-    }
-
-
-    /**
-     * Set up the name of the local server.
-     *
-     * @param localServerName - String local server name
-     */
-    public void setLocalServerName(String localServerName)
-    {
-        this.localServerName = localServerName;
-    }
-
-
-    /**
-     * Return the descriptive name for the server type.
-     *
-     * @return String server type
-     */
-    public String getLocalServerType()
-    {
-        return localServerType;
-    }
-
-
-    /**
-     * Set up the descriptive name for the server type.
-     *
-     * @param localServerType - String server type
-     */
-    public void setLocalServerType(String localServerType)
-    {
-        this.localServerType = localServerType;
-    }
-
-
-    /**
-     * Return the name of the organization that is running the server.
-     *
-     * @return String organization name
-     */
-    public String getOrganizationName()
-    {
-        return organizationName;
-    }
-
-
-    /**
-     * Set up the name of the organization that is running the server.
-     *
-     * @param organizationName - String organization name
-     */
-    public void setOrganizationName(String organizationName)
-    {
-        this.organizationName = organizationName;
-    }
-
-
-    /**
-     * Return the base URL for calling the local server.
-     *
-     * @return String URL
-     */
-    public String getLocalServerURL()
-    {
-        return localServerURL;
-    }
-
-
-    /**
-     * Set up the base URL for calling the local server.
-     *
-     * @param localServerURL - String URL
-     */
-    public void setLocalServerURL(String localServerURL)
-    {
-        this.localServerURL = localServerURL;
-    }
-
-
-    /**
-     * Return the maximum page size supported by this server.
-     *
-     * @return int number of elements
-     */
-    public int getMaxPageSize()
-    {
-        return maxPageSize;
-    }
-
-
-    /**
-     * Set up the  maximum page size supported by this server.
-     *
-     * @param maxPageSize - int number of elements
-     */
-    public void setMaxPageSize(int maxPageSize)
-    {
-        this.maxPageSize = maxPageSize;
-    }
-
-
-    /**
-     * Return the configuration for the registered Open Metadata Access Services (OMAS).
-     *
-     * @return array of configuration properties - one for each OMAS
-     */
-    public List<AccessServiceConfig> getAccessServicesConfig()
-    {
-        return accessServicesConfig;
-    }
-
-
-    /**
-     * Set up the configuration for the registered Open Metadata Access Services (OMAS).
-     *
-     * @param accessServicesConfig - array of configuration properties - one for each OMAS
-     */
-    public void setAccessServicesConfig(List<AccessServiceConfig> accessServicesConfig)
-    {
-        this.accessServicesConfig = accessServicesConfig;
-    }
-
-
-    /**
-     * Return the Open Metadata Repository Services (OMRS) config.
-     *
-     * @return configuration properties that control OMRS
-     */
-    public RepositoryServicesConfig getRepositoryServicesConfig()
-    {
-        return repositoryServicesConfig;
-    }
-
-
-    /**
-     * Set up the Open Metadata Repository Services (OMRS) config.
-     *
-     * @param repositoryServicesConfig - configuration properties that control OMRS
-     */
-    public void setRepositoryServicesConfig(RepositoryServicesConfig repositoryServicesConfig)
-    {
-        this.repositoryServicesConfig = repositoryServicesConfig;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceAdmin.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceAdmin.java b/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceAdmin.java
deleted file mode 100644
index f6c15d3..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceAdmin.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.configuration.registration;
-
-import org.apache.atlas.omag.configuration.properties.AccessServiceConfig;
-import org.apache.atlas.omag.ffdc.exception.OMAGConfigurationErrorException;
-import org.apache.atlas.omrs.auditlog.OMRSAuditLog;
-import org.apache.atlas.omrs.metadatacollection.repositoryconnector.OMRSRepositoryConnector;
-import org.apache.atlas.omrs.topicconnectors.OMRSTopicConnector;
-
-/**
- * AccessServiceAdmin is the interface that an access service implements to receive its configuration.
- * The java class that implements this interface is created with a default constructor and then
- * the initialize method is called.  It is configured in the AccessServiceDescription enumeration.
- */
-public interface AccessServiceAdmin
-{
-    /**
-     * Initialize the access service.
-     *
-     * @param accessServiceConfigurationProperties - specific configuration properties for this access service.
-     * @param enterpriseOMRSTopicConnector - connector for receiving OMRS Events from the cohorts
-     * @param enterpriseOMRSRepositoryConnector - connector for querying the cohort repositories
-     * @param auditLog - audit log component for logging messages.
-     * @param serverUserName - user id to use on OMRS calls where there is no end user.
-     * @throws OMAGConfigurationErrorException - invalid parameters in the configuration properties.
-     */
-    void initialize(AccessServiceConfig     accessServiceConfigurationProperties,
-                    OMRSTopicConnector      enterpriseOMRSTopicConnector,
-                    OMRSRepositoryConnector enterpriseOMRSRepositoryConnector,
-                    OMRSAuditLog            auditLog,
-                    String                  serverUserName) throws OMAGConfigurationErrorException;
-
-
-    /**
-     * Shutdown the access service.
-     */
-    void shutdown();
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceDescription.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceDescription.java b/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceDescription.java
deleted file mode 100644
index 1a15215..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceDescription.java
+++ /dev/null
@@ -1,185 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omag.configuration.registration;
-
-import java.io.Serializable;
-import java.util.ArrayList;
-
-/**
- * AccessServiceDescription provides a list of registered OMAS services.
- */
-public enum AccessServiceDescription implements Serializable
-{
-    ASSET_CATALOG_OMAS               (1000,   "AssetCatalog", "Search and understand your assets",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Asset+Catalog+OMAS"),
-    ASSET_CONSUMER_OMAS              (1001,   "AssetConsumer", "Access assets through connectors",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Asset+Consumer+OMAS"),
-    ASSET_OWNER_OMAS                 (1002,   "AssetOwner", "Manage an asset",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Asset+Owner+OMAS"),
-    COMMUNITY_PROFILE_OMAS           (1003,   "CommunityProfile", "Define personal profile and collaborate",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Community+Profile+OMAS"),
-    CONNECTED_ASSET_OMAS             (1004,   "ConnectedAsset", "Understand an asset",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Connected+Asset+OMAS"),
-    DATA_PLATFORM_OMAS               (1005,   "DataPlatform", "Capture changes in the types of data stored in a data platform",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Data+Platform+OMAS"),
-    DATA_SCIENCE_OMAS                (1006,   "DataScience", "Create and manage data science definitions and models",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Data+Science+OMAS"),
-    DEVOPS_OMAS                      (1007,   "DevOps", "Manage a DevOps pipeline",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/DevOps+OMAS"),
-    GOVERNANCE_ENGINE_OMAS           (1008,   "GovernanceEngine", "Set up an operational governance engine",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Governance+Engine+OMAS"),
-    GOVERNANCE_PROGRAM_OMAS          (1009,   "GovernanceProgram", "Manage the governance program",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Governance+Program+OMAS"),
-    INFORMATION_INFRASTRUCTURE_OMAS  (1010,   "InformationInfrastructure", "Describe and plan IT infrastructure",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Information+Infrastructure+OMAS"),
-    INFORMATION_LANDSCAPE_OMAS       (1011,   "InformationLandscape", "Design the information landscape",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Information+Landscape+OMAS"),
-    INFORMATION_PROCESS_OMAS         (1012,   "InformationProcess", "Manage process definitions and lineage tracking",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Information+Process+OMAS"),
-    INFORMATION_PROTECTION_OMAS      (1013,   "InformationProtection", "Manage information protection definitions and compliance",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Information+Protection+OMAS"),
-    INFORMATION_VIEW_OMAS            (1014,   "InformationView", "Support information virtualization and data set definitions",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Information+View+OMAS"),
-    METADATA_DISCOVERY_OMAS          (1015,   "MetadataDiscovery", "Support automated metadata discovery",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Metadata+Discovery+OMAS"),
-    PRIVACY_OFFICE_OMAS              (1016,   "PrivacyOffice", "Manage privacy compliance",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Privacy+Office+OMAS"),
-    PROJECT_MANAGEMENT_OMAS          (1017,   "ProjectManagement", "Manage data projects",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Project+Management+OMAS"),
-    SOFTWARE_DEVELOPMENT_OMAS        (1018,   "SoftwareDevelopment", "Develop software with best practices",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Software+Development+OMAS"),
-    STEWARDSHIP_ACTION_OMAS          (1019,   "StewardshipAction", "Manage exceptions and actions from open governance",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Stewardship+Action+OMAS"),
-    SUBJECT_AREA_OMAS                (1020,   "SubjectArea", "Document knowledge about a subject area",
-                                              "https://cwiki.apache.org/confluence/display/ATLAS/Subject+Area+OMAS");
-
-    private static final long     serialVersionUID    = 1L;
-    private static final String   defaultTopicRoot    = "omag/omas/";
-    private static final String   defaultInTopicLeaf  = "/inTopic";
-    private static final String   defaultOutTopicLeaf = "/outTopic";
-
-    private int                            accessServiceCode;
-    private String                         accessServiceName;
-    private String                         accessServiceDescription;
-    private String                         accessServiceWiki;
-    private AccessServiceOperationalStatus accessServiceOperationalStatus;
-    private String                         accessServiceAdminClassName;
-
-
-    /**
-     * Return a list containing each of the access service descriptions defined in this enum class.
-     *
-     * @return ArrayList of enums
-     */
-    public static ArrayList<AccessServiceDescription> getAccessServiceDescriptionList()
-    {
-        ArrayList<AccessServiceDescription>  accessServiceDescriptionList = new ArrayList<>();
-
-        accessServiceDescriptionList.add(AccessServiceDescription.ASSET_CATALOG_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.ASSET_CONSUMER_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.ASSET_OWNER_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.COMMUNITY_PROFILE_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.CONNECTED_ASSET_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.DATA_PLATFORM_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.DATA_SCIENCE_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.DEVOPS_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.GOVERNANCE_ENGINE_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.GOVERNANCE_PROGRAM_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.INFORMATION_INFRASTRUCTURE_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.INFORMATION_LANDSCAPE_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.INFORMATION_PROCESS_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.INFORMATION_PROTECTION_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.INFORMATION_VIEW_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.METADATA_DISCOVERY_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.PRIVACY_OFFICE_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.PROJECT_MANAGEMENT_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.SOFTWARE_DEVELOPMENT_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.STEWARDSHIP_ACTION_OMAS);
-        accessServiceDescriptionList.add(AccessServiceDescription.SUBJECT_AREA_OMAS);
-
-        return accessServiceDescriptionList;
-    }
-
-
-    /**
-     * Default Constructor
-     *
-     * @param accessServiceCode - ordinal for this access service
-     * @param accessServiceName - symbolic name for this access service
-     * @param accessServiceDescription - short description for this access service
-     * @param accessServiceWiki - wiki page for the access service for this access service
-     */
-    AccessServiceDescription(int                            accessServiceCode,
-                             String                         accessServiceName,
-                             String                         accessServiceDescription,
-                             String                         accessServiceWiki)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.accessServiceCode = accessServiceCode;
-        this.accessServiceName = accessServiceName;
-        this.accessServiceDescription = accessServiceDescription;
-        this.accessServiceWiki = accessServiceWiki;
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - type code
-     */
-    public int getAccessServiceCode()
-    {
-        return accessServiceCode;
-    }
-
-
-    /**
-     * Return the default name for this enum instance.
-     *
-     * @return String - default name
-     */
-    public String getAccessServiceName()
-    {
-        return accessServiceName;
-    }
-
-
-    /**
-     * Return the default description for the type for this enum instance.
-     *
-     * @return String - default description
-     */
-    public String getAccessServiceDescription()
-    {
-        return accessServiceDescription;
-    }
-
-
-    /**
-     * Return the URL for the wiki page describing this access service.
-     *
-     * @return String URL name for the wiki page
-     */
-    public String getAccessServiceWiki()
-    {
-        return accessServiceWiki;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceOperationalStatus.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceOperationalStatus.java b/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceOperationalStatus.java
deleted file mode 100644
index bf9e6b5..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceOperationalStatus.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.configuration.registration;
-
-
-import java.io.Serializable;
-
-/**
- * AccessServiceOperationalStatus sets up whether an open metadata access service (OMAS) is enabled or not.
- */
-public enum AccessServiceOperationalStatus implements Serializable
-{
-    NOT_IMPLEMENTED  (0, "Not Implemented", "Code for this access server is not available."),
-    ENABLED          (1, "Enabled",         "The access service is available and running."),
-    DISABLED         (2, "Disabled",        "The access service has been disabled.");
-
-    private static final long serialVersionUID = 1L;
-
-    private int            typeCode;
-    private String         typeName;
-    private String         typeDescription;
-
-
-    /**
-     * Default Constructor
-     *
-     * @param typeCode - ordinal for this enum
-     * @param typeName - symbolic name for this enum
-     * @param typeDescription - short description for this enum
-     */
-    AccessServiceOperationalStatus(int     typeCode, String   typeName, String   typeDescription)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.typeCode = typeCode;
-        this.typeName = typeName;
-        this.typeDescription = typeDescription;
-    }
-
-
-    /**
-     * Return the code for this enum instance
-     *
-     * @return int - type code
-     */
-    public int getTypeCode()
-    {
-        return typeCode;
-    }
-
-
-    /**
-     * Return the default name for this enum instance.
-     *
-     * @return String - default name
-     */
-    public String getTypeName()
-    {
-        return typeName;
-    }
-
-
-    /**
-     * Return the default description for the type for this enum instance.
-     *
-     * @return String - default description
-     */
-    public String getTypeDescription()
-    {
-        return typeDescription;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceRegistration.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceRegistration.java b/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceRegistration.java
deleted file mode 100644
index c2950c4..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/configuration/registration/AccessServiceRegistration.java
+++ /dev/null
@@ -1,228 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.configuration.registration;
-
-/**
- * AccessServiceRegistration is used by an access service to register its admin interface
- */
-public class AccessServiceRegistration
-{
-    private static final long     serialVersionUID    = 1L;
-    private static final String   defaultTopicRoot    = "omag/omas/";
-    private static final String   defaultInTopicLeaf  = "/inTopic";
-    private static final String   defaultOutTopicLeaf = "/outTopic";
-
-
-    private int                            accessServiceCode;
-    private String                         accessServiceName;
-    private String                         accessServiceDescription;
-    private String                         accessServiceWiki;
-    private AccessServiceOperationalStatus accessServiceOperationalStatus;
-    private String                         accessServiceAdminClassName;
-
-    /**
-     * Complete Constructor
-     *
-     * @param accessServiceCode - ordinal for this access service
-     * @param accessServiceName - symbolic name for this access service
-     * @param accessServiceDescription - short description for this access service
-     * @param accessServiceWiki - wiki page for the access service for this access service
-     * @param accessServiceOperationalStatus - default initial operational status for the access service
-     * @param accessServiceAdminClassName - class name of admin class
-     */
-    public AccessServiceRegistration(int                            accessServiceCode,
-                                     String                         accessServiceName,
-                                     String                         accessServiceDescription,
-                                     String                         accessServiceWiki,
-                                     AccessServiceOperationalStatus accessServiceOperationalStatus,
-                                     String                         accessServiceAdminClassName)
-    {
-        /*
-         * Save the values supplied
-         */
-        this.accessServiceCode = accessServiceCode;
-        this.accessServiceName = accessServiceName;
-        this.accessServiceDescription = accessServiceDescription;
-        this.accessServiceWiki = accessServiceWiki;
-        this.accessServiceOperationalStatus = accessServiceOperationalStatus;
-        this.accessServiceAdminClassName = accessServiceAdminClassName;
-    }
-
-
-    /**
-     * Default constructor
-     */
-    public AccessServiceRegistration()
-    {
-    }
-
-    /**
-     * Return the code for this access service
-     *
-     * @return int - type code
-     */
-    public int getAccessServiceCode()
-    {
-        return accessServiceCode;
-    }
-
-
-    /**
-     * Set up the code for this access service
-     *
-     * @param accessServiceCode  int - type code
-     */
-    public void setAccessServiceCode(int accessServiceCode)
-    {
-        this.accessServiceCode = accessServiceCode;
-    }
-
-
-    /**
-     * Return the default name for this access service.
-     *
-     * @return String - default name
-     */
-    public String getAccessServiceName()
-    {
-        return accessServiceName;
-    }
-
-
-    /**
-     * Set up the default name for this access service.
-     *
-     * @param accessServiceName  String - default name
-     */
-    public void setAccessServiceName(String accessServiceName)
-    {
-        this.accessServiceName = accessServiceName;
-    }
-
-
-    /**
-     * Return the default description for the type for this access service.
-     *
-     * @return String - default description
-     */
-    public String getAccessServiceDescription()
-    {
-        return accessServiceDescription;
-    }
-
-
-    /**
-     * Set up the default description for the type for this access service.
-     *
-     * @param accessServiceDescription  String - default description
-     */
-    public void setAccessServiceDescription(String accessServiceDescription)
-    {
-        this.accessServiceDescription = accessServiceDescription;
-    }
-
-
-    /**
-     * Return the URL for the wiki page describing this access service.
-     *
-     * @return String URL name for the wiki page
-     */
-    public String getAccessServiceWiki()
-    {
-        return accessServiceWiki;
-    }
-
-
-    /**
-     * Set up the URL for the wiki page describing this access service.
-     *
-     * @param accessServiceWiki  String URL name for the wiki page
-     */
-    public void setAccessServiceWiki(String accessServiceWiki)
-    {
-        this.accessServiceWiki = accessServiceWiki;
-    }
-
-
-    /**
-     * Return the initial operational status for this access service.
-     *
-     * @return AccessServiceOperationalStatus enum
-     */
-    public AccessServiceOperationalStatus getAccessServiceOperationalStatus()
-    {
-        return accessServiceOperationalStatus;
-    }
-
-
-    /**
-     * Set up the initial operational status for this access service.
-     *
-     * @param accessServiceOperationalStatus - AccessServiceOperationalStatus enum
-     */
-    public void setAccessServiceOperationalStatus(AccessServiceOperationalStatus accessServiceOperationalStatus)
-    {
-        this.accessServiceOperationalStatus = accessServiceOperationalStatus;
-    }
-
-    /**
-     * Return the class name of the admin class that should be called during initialization and
-     * termination.
-     *
-     * @return class name
-     */
-    public String getAccessServiceAdminClassName()
-    {
-        return accessServiceAdminClassName;
-    }
-
-
-    /**
-     * Set up the class name of the admin class that should be called during initialization and
-     * termination.
-     *
-     * @param accessServiceAdminClassName  class name
-     */
-    public void setAccessServiceAdminClassName(String accessServiceAdminClassName)
-    {
-        this.accessServiceAdminClassName = accessServiceAdminClassName;
-    }
-
-
-    /**
-     * Return the InTopic name for the access service.
-     *
-     * @return String topic name
-     */
-    public String getAccessServiceInTopic()
-    {
-        return defaultTopicRoot + accessServiceName + defaultInTopicLeaf;
-    }
-
-
-    /**
-     * Return the OutTopic name for the access service.
-     *
-     * @return String topic name
-     */
-    public String getAccessServiceOutTopic()
-    {
-        return defaultTopicRoot + accessServiceName + defaultOutTopicLeaf;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/OMAGServerConfigStore.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/OMAGServerConfigStore.java b/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/OMAGServerConfigStore.java
deleted file mode 100644
index cb179cd..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/OMAGServerConfigStore.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.configuration.store;
-
-import org.apache.atlas.omag.configuration.properties.OMAGServerConfig;
-
-/**
- * OMAGServerConfigStore provides the interface to the configuration for an OMAG Server.  This is accessed
- * through a connector.
- */
-public interface OMAGServerConfigStore
-{
-    /**
-     * Save the server configuration.
-     *
-     * @param configuration - configuration properties to save
-     */
-    void saveServerConfig(OMAGServerConfig   configuration);
-
-
-    /**
-     * Retrieve the configuration saved from a previous run of the server.
-     *
-     * @return server configuration
-     */
-    OMAGServerConfig  retrieveServerConfig();
-
-
-    /**
-     * Remove the server configuration.
-     */
-    void removeServerConfig();
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/OMAGServerConfigStoreConnectorBase.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/OMAGServerConfigStoreConnectorBase.java b/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/OMAGServerConfigStoreConnectorBase.java
deleted file mode 100644
index 2de0776..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/OMAGServerConfigStoreConnectorBase.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.configuration.store;
-
-import org.apache.atlas.ocf.ConnectorBase;
-
-/**
- * OMAGServerConfigStoreConnectorBase provides the base class for an OMAG Server's configuration store.  It defines the
- * specific interface for this type of connector.
- */
-public abstract class OMAGServerConfigStoreConnectorBase extends ConnectorBase implements OMAGServerConfigStore
-{
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/OMAGServerConfigStoreProviderBase.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/OMAGServerConfigStoreProviderBase.java b/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/OMAGServerConfigStoreProviderBase.java
deleted file mode 100644
index f7899e3..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/OMAGServerConfigStoreProviderBase.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.configuration.store;
-
-
-import org.apache.atlas.ocf.ConnectorProviderBase;
-
-/**
- * The OMAGServerConfigStoreProviderBase provides a base class for the connector provider supporting the OMAG
- * server configuration stores.  It extends ConnectorProviderBase which does the creation of connector instances.
- * The subclasses of OMAGServerConfigStoreProviderBase must initialize ConnectorProviderBase with the Java class
- * name of the registry store connector implementation (by calling super.setConnectorClassName(className)).
- * Then the connector provider will work.
- */
-public class OMAGServerConfigStoreProviderBase extends ConnectorProviderBase
-{
-    /**
-     * Default Constructor
-     */
-    public OMAGServerConfigStoreProviderBase()
-    {
-        /*
-         * Nothing to do
-         */
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/file/FileBasedServerConfigStoreConnector.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/file/FileBasedServerConfigStoreConnector.java b/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/file/FileBasedServerConfigStoreConnector.java
deleted file mode 100644
index 56550b2..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/file/FileBasedServerConfigStoreConnector.java
+++ /dev/null
@@ -1,178 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.configuration.store.file;
-
-import com.fasterxml.jackson.databind.ObjectMapper;
-import org.apache.atlas.ocf.properties.Connection;
-import org.apache.atlas.ocf.properties.Endpoint;
-import org.apache.atlas.omag.configuration.properties.OMAGServerConfig;
-import org.apache.atlas.omag.configuration.store.OMAGServerConfigStoreConnectorBase;
-import org.apache.commons.io.FileUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-import java.io.IOException;
-
-public class FileBasedServerConfigStoreConnector extends OMAGServerConfigStoreConnectorBase
-{
-    /*
-     * This is the name of the configuration file that is used if there is no file name in the connection.
-     */
-    private static final String defaultFilename = "omag.server.config";
-
-    /*
-     * Variables used in writing to the file.
-     */
-    private String           configStoreName  = null;
-
-    /*
-     * Variables used for logging and debug.
-     */
-    private static final Logger log = LoggerFactory.getLogger(FileBasedServerConfigStoreConnector.class);
-
-
-    /**
-     * Default constructor
-     */
-    public FileBasedServerConfigStoreConnector()
-    {
-    }
-
-
-    @Override
-    public void initialize(String connectorInstanceId, Connection connection)
-    {
-        super.initialize(connectorInstanceId, connection);
-
-        Endpoint endpoint = connection.getEndpoint();
-
-        if (endpoint != null)
-        {
-            configStoreName = endpoint.getAddress();
-        }
-
-        if (configStoreName == null)
-        {
-            configStoreName = defaultFilename;
-        }
-    }
-
-
-    /**
-     * Save the server configuration.
-     *
-     * @param omagServerConfig - configuration properties to save
-     */
-    public void saveServerConfig(OMAGServerConfig omagServerConfig)
-    {
-        File    configStoreFile = new File(configStoreName);
-
-        try
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Writing server config store properties", omagServerConfig);
-            }
-
-            if (omagServerConfig == null)
-            {
-                configStoreFile.delete();
-            }
-            else
-            {
-                ObjectMapper objectMapper = new ObjectMapper();
-
-                String configStoreFileContents = objectMapper.writeValueAsString(omagServerConfig);
-
-                FileUtils.writeStringToFile(configStoreFile, configStoreFileContents, false);
-            }
-        }
-        catch (IOException   ioException)
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Unusable Server config Store :(", ioException);
-            }
-        }
-    }
-
-
-    /**
-     * Retrieve the configuration saved from a previous run of the server.
-     *
-     * @return server configuration
-     */
-    public OMAGServerConfig  retrieveServerConfig()
-    {
-        File             configStoreFile     = new File(configStoreName);
-        OMAGServerConfig newConfigProperties;
-
-        try
-        {
-            if (log.isDebugEnabled())
-            {
-                log.debug("Retrieving server configuration properties");
-            }
-
-            String configStoreFileContents = FileUtils.readFileToString(configStoreFile, "UTF-8");
-
-            ObjectMapper objectMapper = new ObjectMapper();
-
-            newConfigProperties = objectMapper.readValue(configStoreFileContents, OMAGServerConfig.class);
-        }
-        catch (IOException ioException)
-        {
-            /*
-             * The config file is not found, create a new one ...
-             */
-
-            if (log.isDebugEnabled())
-            {
-                log.debug("New server config Store", ioException);
-            }
-
-            newConfigProperties = new OMAGServerConfig();
-        }
-
-        return newConfigProperties;
-    }
-
-
-    /**
-     * Remove the server configuration.
-     */
-    public void removeServerConfig()
-    {
-        File    configStoreFile = new File(configStoreName);
-
-        configStoreFile.delete();
-    }
-
-
-    /**
-     * Close the config file
-     */
-    public void disconnect()
-    {
-        if (log.isDebugEnabled())
-        {
-            log.debug("Closing Config Store.");
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/file/FileBasedServerConfigStoreProvider.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/file/FileBasedServerConfigStoreProvider.java b/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/file/FileBasedServerConfigStoreProvider.java
deleted file mode 100644
index 26f5d3d..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/configuration/store/file/FileBasedServerConfigStoreProvider.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.configuration.store.file;
-
-import org.apache.atlas.omag.configuration.store.OMAGServerConfigStoreProviderBase;
-
-/**
- * FileBasedServerConfigStoreProvider is the OCF connector provider for the file based server configuration store.
- */
-public class FileBasedServerConfigStoreProvider extends OMAGServerConfigStoreProviderBase
-{
-    /**
-     * Constructor used to initialize the ConnectorProviderBase with the Java class name of the specific
-     * configuration store implementation.
-     */
-    public FileBasedServerConfigStoreProvider()
-    {
-        Class    connectorClass = FileBasedServerConfigStoreConnector.class;
-
-        super.setConnectorClassName(connectorClass.getName());
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/OMAGErrorCode.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/OMAGErrorCode.java b/omag-api/src/main/java/org/apache/atlas/omag/ffdc/OMAGErrorCode.java
deleted file mode 100644
index 7bd264b..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/OMAGErrorCode.java
+++ /dev/null
@@ -1,234 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-package org.apache.atlas.omag.ffdc;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.text.MessageFormat;
-import java.util.Arrays;
-
-/**
- * The OMAGErrorCode is used to define first failure data capture (FFDC) for errors that occur within the OMAG Server
- * It is used in conjunction with OMAG Exceptions, both Checked and Runtime (unchecked).
- *
- * The 5 fields in the enum are:
- * <ul>
- *     <li>HTTP Error Code - for translating between REST and JAVA - Typically the numbers used are:</li>
- *     <li><ul>
- *         <li>500 - internal error</li>
- *         <li>501 - not implemented </li>
- *         <li>503 - Service not available</li>
- *         <li>400 - invalid parameters</li>
- *         <li>401 - unauthorized</li>
- *         <li>404 - not found</li>
- *         <li>405 - method not allowed</li>
- *         <li>409 - data conflict errors - eg item already defined</li>
- *     </ul></li>
- *     <li>Error Message Id - to uniquely identify the message</li>
- *     <li>Error Message Text - includes placeholder to allow additional values to be captured</li>
- *     <li>SystemAction - describes the result of the error</li>
- *     <li>UserAction - describes how a user should correct the error</li>
- * </ul>
- */
-public enum OMAGErrorCode
-{
-    NULL_LOCAL_SERVER_NAME(400, "OMAG-ADMIN-400-001 ",
-            "OMAG server has been called with a null local server name",
-            "The system is unable to configure the local server.",
-            "The local server name is supplied by the caller to the OMAG server. This call needs to be corrected before the server can operate correctly."),
-
-    BAD_LOCAL_SERVER_NAME(400, "OMAG-ADMIN-400-002 ",
-            "OMAG server has been called with server name {0} and in previous calls, the server name was {1}",
-            "The system is unable to configure the local server.",
-            "The local server name is supplied by the caller to the OMAG server. This call needs to be corrected before the server can operate correctly."),
-
-    NULL_USER_NAME(400, "OMAG-ADMIN-400-003 ",
-            "OMAG server {0} has been called with a null user name (userId)",
-            "The system is unable to configure the local server.",
-            "The user name name is supplied by the caller to the OMAG server. This call needs to be corrected before the server can operate correctly."),
-
-    NULL_SERVICE_MODE(400, "OMAG-ADMIN-400-004 ",
-            "OMAG server {0} has been configured with a null service mode",
-            "The system is unable to configure the local server.",
-            "The service mode is supplied by the caller to the OMAG server. This call needs to be corrected before the server can operate correctly."),
-
-    NULL_LOCAL_REPOSITORY_MODE(400, "OMAG-ADMIN-400-005 ",
-            "OMAG server {0} has been configured with a null local repository service mode",
-            "The system is unable to configure the local server.",
-            "The service mode is supplied by the caller to the OMAG server. This call needs to be corrected before the server can operate correctly."),
-
-    NULL_COHORT_NAME(400, "OMAG-ADMIN-400-006 ",
-            "OMAG server {0} has been configured with a null cohort name",
-            "The system is unable to configure the local server.",
-            "The service mode is supplied by the caller to the OMAG server. This call needs to be corrected before the server can operate correctly."),
-
-    LOCAL_REPOSITORY_MODE_NOT_SET(400, "OMAG-ADMIN-400-007 ",
-            "The local repository mode has not been set for OMAG server {0}",
-            "The local repository mode must be enabled before the event mapper connection or repository proxy connection is set.  The system is unable to configure the local server.",
-            "The local repository mode is supplied by the caller to the OMAG server. This call to enable the local repository needs to be made before the call to set the event mapper connection or repository proxy connection."),
-
-    NULL_SERVER_CONFIG(400, "OMAG-ADMIN-400-008 ",
-            "The OMAG server {0} has been passed null configuration.",
-            "The system is unable to initialize the local server instance.",
-            "Retry the request with server configuration."),
-
-    NULL_REPOSITORY_CONFIG(400, "OMAG-ADMIN-400-009 ",
-            "The OMAG server {0} has been passed null open metadata repository services configuration",
-            "The system is unable to initialize the local server instance.",
-            "Set up the open metadata repository services configuration and then retry the request with server configuration."),
-
-    NULL_ACCESS_SERVICE_ADMIN_CLASS(400, "OMAG-ADMIN-400-010 ",
-            "The OMAG server {0} has been passed a null admin class name for access service {1}",
-            "The system is unable to initialize this access service.",
-            "if the access service should be initialized then set up the appropriate admin class name and restart the server instance."),
-
-    BAD_ACCESS_SERVICE_ADMIN_CLASS(400, "OMAG-ADMIN-400-011 ",
-            "The OMAG server {0} has been passed an invalid admin class name {1} for access service {2}",
-            "The system is unable to initialize this access service.",
-            "If the access service should be initialized then set up the appropriate admin class name and restart the server instance."),
-
-    BAD_CONFIG_FILE(400, "OMAG-ADMIN-400-012 ",
-            "The OMAG server {0} is not able to open its configuration file {1} due to the following error: {2}",
-            "The system is unable to initialize the server.",
-            "Review the error message to determine the cause of the problem."),
-
-    NULL_CONFIG_FILE(400, "OMAG-ADMIN-400-012 ",
-            "The OMAG server is not able to save its configuration file",
-            "The system is unable to maintain the configuration for the server.",
-            "Review any related error messages to determine the cause of the problem."),
-
-    BAD_MAX_PAGE_SIZE(400, "OMAG-ADMIN-400-013 ",
-            "The OMAG server {0} has been passed an invalid maximum page size of {1}",
-            "The system has ignored this value.",
-            "The maximum page size must be a number greater than zero.  Retry the request with a valid value."),
-
-    ENTERPRISE_TOPIC_START_FAILED(400, "OMAG-ADMIN-400-014 ",
-            "The OMAG server {0} is unable to start the enterprise OMRS topic connector, error message was {1}",
-            "The open metadata access services will not be able to receive events from the connected repositories.",
-            "Review the error messages and once the source of the problem is resolved, restart the server and retry the request.")
-            ;
-
-    private int    httpErrorCode;
-    private String errorMessageId;
-    private String errorMessage;
-    private String systemAction;
-    private String userAction;
-
-    private static final Logger log = LoggerFactory.getLogger(OMAGErrorCode.class);
-
-
-    /**
-     * The constructor for OMRSErrorCode expects to be passed one of the enumeration rows defined in
-     * OMRSErrorCode above.   For example:
-     *
-     *     OMRSErrorCode   errorCode = OMRSErrorCode.SERVER_NOT_AVAILABLE;
-     *
-     * This will expand out to the 5 parameters shown below.
-     *
-     * @param newHTTPErrorCode - error code to use over REST calls
-     * @param newErrorMessageId - unique Id for the message
-     * @param newErrorMessage - text for the message
-     * @param newSystemAction - description of the action taken by the system when the error condition happened
-     * @param newUserAction - instructions for resolving the error
-     */
-    OMAGErrorCode(int  newHTTPErrorCode, String newErrorMessageId, String newErrorMessage, String newSystemAction, String newUserAction)
-    {
-        this.httpErrorCode = newHTTPErrorCode;
-        this.errorMessageId = newErrorMessageId;
-        this.errorMessage = newErrorMessage;
-        this.systemAction = newSystemAction;
-        this.userAction = newUserAction;
-    }
-
-
-    public int getHTTPErrorCode()
-    {
-        return httpErrorCode;
-    }
-
-
-    /**
-     * Returns the unique identifier for the error message.
-     *
-     * @return errorMessageId
-     */
-    public String getErrorMessageId()
-    {
-        return errorMessageId;
-    }
-
-
-    /**
-     * Returns the error message with placeholders for specific details.
-     *
-     * @return errorMessage (unformatted)
-     */
-    public String getUnformattedErrorMessage()
-    {
-        return errorMessage;
-    }
-
-
-    /**
-     * Returns the error message with the placeholders filled out with the supplied parameters.
-     *
-     * @param params - strings that plug into the placeholders in the errorMessage
-     * @return errorMessage (formatted with supplied parameters)
-     */
-    public String getFormattedErrorMessage(String... params)
-    {
-        if (log.isDebugEnabled())
-        {
-            log.debug(String.format("<== OMAGErrorCode.getMessage(%s)", Arrays.toString(params)));
-        }
-
-        MessageFormat mf = new MessageFormat(errorMessage);
-        String result = mf.format(params);
-
-        if (log.isDebugEnabled())
-        {
-            log.debug(String.format("==> OMAGErrorCode.getMessage(%s): %s", Arrays.toString(params), result));
-        }
-
-        return result;
-    }
-
-
-    /**
-     * Returns a description of the action taken by the system when the condition that caused this exception was
-     * detected.
-     *
-     * @return systemAction
-     */
-    public String getSystemAction()
-    {
-        return systemAction;
-    }
-
-
-    /**
-     * Returns instructions of how to resolve the issue reported in this exception.
-     *
-     * @return userAction
-     */
-    public String getUserAction()
-    {
-        return userAction;
-    }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGCheckedExceptionBase.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGCheckedExceptionBase.java b/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGCheckedExceptionBase.java
deleted file mode 100644
index 13475e5..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGCheckedExceptionBase.java
+++ /dev/null
@@ -1,160 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omag.ffdc.exception;
-
-/**
- * OMAGCheckedExceptionBase provides a checked exception for reporting errors found when using the OMAG Server.
- * Typically these errors are either configuration or operational errors that can be fixed by an administrator
- * or power user.  However, there may be the odd bug that surfaces here. The OMAGErrorCode can be used with
- * this exception to populate it with standard messages.
- */
-public class OMAGCheckedExceptionBase extends Exception
-{
-    /*
-     * These default values are only seen if this exception is initialized using one of its superclass constructors.
-     */
-    private int       reportedHTTPCode;
-    private String    reportingClassName;
-    private String    reportingActionDescription;
-    private String    reportedErrorMessage;
-    private String    reportedSystemAction;
-    private String    reportedUserAction;
-    private Throwable reportedCaughtException = null;
-
-
-    /**
-     * This is the typical constructor used for creating a OMRSCheckedExceptionBase.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public OMAGCheckedExceptionBase(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(errorMessage);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-    }
-
-
-    /**
-     * This is the constructor used for creating a OMRSCheckedExceptionBase when an unexpected error has been caught.
-     *
-     * @param httpCode - http response code to use if this exception flows over a rest call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - previous error causing this exception
-     */
-    public OMAGCheckedExceptionBase(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(errorMessage, caughtError);
-        this.reportedHTTPCode = httpCode;
-        this.reportingClassName = className;
-        this.reportingActionDescription = actionDescription;
-        this.reportedErrorMessage = errorMessage;
-        this.reportedSystemAction = systemAction;
-        this.reportedUserAction = userAction;
-        this.reportedCaughtException = caughtError;
-    }
-
-
-    /**
-     * Return the HTTP response code to use with this exception.
-     *
-     * @return reportedHTTPCode
-     */
-    public int getReportedHTTPCode()
-    {
-        return reportedHTTPCode;
-    }
-
-    /**
-     * The class that created this exception.
-     *
-     * @return reportingClassName
-     */
-    public String getReportingClassName()
-    {
-        return reportingClassName;
-    }
-
-
-    /**
-     * The type of request that the class was performing when the condition occurred that resulted in this
-     * exception.
-     *
-     * @return reportingActionDescription
-     */
-    public String getReportingActionDescription()
-    {
-        return reportingActionDescription;
-    }
-
-
-    /**
-     * A formatted short description of the cause of the condition that resulted in this exception.
-     *
-     * @return reportedErrorMessage
-     */
-    public String getErrorMessage()
-    {
-        return reportedErrorMessage;
-    }
-
-
-    /**
-     * A description of the action that the system took as a result of the error condition.
-     *
-     * @return reportedSystemAction
-     */
-    public String getReportedSystemAction()
-    {
-        return reportedSystemAction;
-    }
-
-
-    /**
-     * A description of the action necessary to correct the error.
-     *
-     * @return reportedUserAction
-     */
-    public String getReportedUserAction()
-    {
-        return reportedUserAction;
-    }
-
-
-    /**
-     * An exception that was caught and wrapped by this exception.  If a null is returned, then this exception is
-     * newly created and not the result of a previous exception.
-     *
-     * @return reportedCaughtException
-     */
-    public Throwable getReportedCaughtException() { return reportedCaughtException; }
-}

http://git-wip-us.apache.org/repos/asf/atlas/blob/b0ecc36a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGConfigurationErrorException.java
----------------------------------------------------------------------
diff --git a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGConfigurationErrorException.java b/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGConfigurationErrorException.java
deleted file mode 100644
index 933d976..0000000
--- a/omag-api/src/main/java/org/apache/atlas/omag/ffdc/exception/OMAGConfigurationErrorException.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
- * 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.
- */
-
-package org.apache.atlas.omag.ffdc.exception;
-
-/**
- * OMAGConfigurationErrorException is used when configuration parameters passed on earlier calls turn out to
- * be invalid.
- */
-public class OMAGConfigurationErrorException extends OMAGCheckedExceptionBase
-{
-    /**
-     * This is the typical constructor used for creating a OMAGConfigurationErrorException.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     */
-    public OMAGConfigurationErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction);
-    }
-
-
-    /**
-     * This is the constructor used for creating a OMAGConfigurationErrorException that resulted from a previous error.
-     *
-     * @param httpCode - http response code to use if this exception flows over a REST call
-     * @param className - name of class reporting error
-     * @param actionDescription - description of function it was performing when error detected
-     * @param errorMessage - description of error
-     * @param systemAction - actions of the system as a result of the error
-     * @param userAction - instructions for correcting the error
-     * @param caughtError - the error that resulted in this exception.
-     * */
-    public OMAGConfigurationErrorException(int  httpCode, String className, String  actionDescription, String errorMessage, String systemAction, String userAction, Throwable caughtError)
-    {
-        super(httpCode, className, actionDescription, errorMessage, systemAction, userAction, caughtError);
-    }
-}