Move adsal into its own subdirectory.
[controller.git] / opendaylight / hosttracker_new / implementation / src / main / java / org / opendaylight / controller / hosttracker / internal / DeviceIterator.java
diff --git a/opendaylight/hosttracker_new/implementation/src/main/java/org/opendaylight/controller/hosttracker/internal/DeviceIterator.java b/opendaylight/hosttracker_new/implementation/src/main/java/org/opendaylight/controller/hosttracker/internal/DeviceIterator.java
deleted file mode 100644 (file)
index 68f175c..0000000
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * Copyright (c) 2012 Big Switch Networks, Inc.
- *
- * Licensed under the Eclipse Public License, Version 1.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.eclipse.org/legal/epl-v10.html
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- * implied. See the License for the specific language governing
- * permissions and limitations under the License.
- *
- * This file incorporates work covered by the following copyright and
- * permission notice:
- *
- *    Originally created by David Erickson, Stanford University
- *
- *    Licensed under the Apache License, Version 2.0 (the "License");
- *    you may not use this file except in compliance with the
- *    License. You may obtain a copy of the License at
- *
- *         http://www.apache.org/licenses/LICENSE-2.0
- *
- *    Unless required by applicable law or agreed to in writing,
- *    software distributed under the License is distributed on an "AS
- *    IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- *    express or implied. See the License for the specific language
- *    governing permissions and limitations under the License.
- */
-
-package org.opendaylight.controller.hosttracker.internal;
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.opendaylight.controller.hosttracker.IEntityClass;
-import org.opendaylight.controller.hosttracker.SwitchPort;
-import org.opendaylight.controller.sal.core.NodeConnector;
-import org.opendaylight.controller.sal.utils.FilterIterator;
-
-/**
- * An iterator for handling device queries
- */
-public class DeviceIterator extends FilterIterator<Device> {
-    private IEntityClass[] entityClasses;
-
-    private Long macAddress;
-    private Short vlan;
-    private Integer ipv4Address;
-    private NodeConnector port;
-
-    /**
-     * Construct a new device iterator over the key fields
-     *
-     * @param subIterator
-     *            an iterator over the full data structure to scan
-     * @param entityClasses
-     *            the entity classes to search for
-     * @param macAddress
-     *            The MAC address
-     * @param vlan
-     *            the VLAN
-     * @param ipv4Address
-     *            the ipv4 address
-     * @param switchDPID
-     *            the switch DPID
-     * @param switchPort
-     *            the switch port
-     */
-    public DeviceIterator(Iterator<Device> subIterator,
-            IEntityClass[] entityClasses, Long macAddress, Short vlan,
-            Integer ipv4Address, NodeConnector port) {
-        super(subIterator);
-        this.entityClasses = entityClasses;
-        this.subIterator = subIterator;
-        this.macAddress = macAddress;
-        this.vlan = vlan;
-        this.ipv4Address = ipv4Address;
-        this.port = port;
-    }
-
-    @Override
-    protected boolean matches(Device value) {
-        boolean match;
-        if (entityClasses != null) {
-            IEntityClass clazz = value.getEntityClass();
-            if (clazz == null)
-                return false;
-
-            match = false;
-            for (IEntityClass entityClass : entityClasses) {
-                if (clazz.equals(entityClass)) {
-                    match = true;
-                    break;
-                }
-            }
-            if (!match)
-                return false;
-        }
-        if (macAddress != null) {
-            if (macAddress.longValue() != value.getMACAddress())
-                return false;
-        }
-        if (vlan != null) {
-            Short[] vlans = value.getVlanId();
-            if (Arrays.binarySearch(vlans, vlan) < 0)
-                return false;
-        }
-        if (ipv4Address != null) {
-            Integer[] ipv4Addresses = value.getIPv4Addresses();
-            if (Arrays.binarySearch(ipv4Addresses, ipv4Address) < 0)
-                return false;
-        }
-        if (port != null) {
-            SwitchPort[] sps = value.getAttachmentPoints();
-            if (sps == null)
-                return false;
-
-            match = false;
-            for (SwitchPort sp : sps) {
-                if (sp.getPort().equals(sp.getPort())) {
-                    match = true;
-                    break;
-                }
-            }
-            if (!match)
-                return false;
-        }
-        return true;
-    }
-}