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) */
-    }
-}

Reply via email to