/*
* Copyright 2008 the original author or authors.
- *
+ *
* 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.wamblee.system.graph;
+/**
+ * DOCUMENT ME!
+ *
+ * @author $author$
+ * @version $Revision$
+ *
+ * @param <FromType> DOCUMENT ME!
+ * @param <ToType> DOCUMENT ME!
+ */
public class EdgeSelector<FromType extends Node, ToType extends Node> {
-
- public static interface Selector<FromType extends Node, ToType extends Node> {
- void execute(FromType aFrom, ToType aTo);
- }
-
- private Class<FromType> fromType;
+ /**
+ * DOCUMENT ME!
+ */
+ private Class<FromType> fromType;
+
+ /**
+ * DOCUMENT ME!
+ */
private Class<ToType> toType;
-
+
+ /**
+ * Creates a new EdgeSelector object.
+ *
+ * @param aFrom DOCUMENT ME!
+ * @param aTo DOCUMENT ME!
+ */
public EdgeSelector(Class<FromType> aFrom, Class<ToType> aTo) {
- fromType = aFrom;
- toType = aTo;
+ fromType = aFrom;
+ toType = aTo;
}
- public void execute(Selector<FromType,ToType> aSelector, Edge aEdge) {
- if ( fromType.isInstance(aEdge.getFrom()) && toType.isInstance(aEdge.getTo())) {
- aSelector.execute((FromType)aEdge.getFrom(), (ToType)aEdge.getTo());
- }
+ /**
+ * DOCUMENT ME!
+ *
+ * @param aSelector DOCUMENT ME!
+ * @param aEdge DOCUMENT ME!
+ */
+ public void execute(Selector<FromType, ToType> aSelector, Edge aEdge) {
+ if (fromType.isInstance(aEdge.getFrom())
+ && toType.isInstance(aEdge.getTo())) {
+ aSelector.execute((FromType) aEdge.getFrom(), (ToType) aEdge.getTo());
+ }
+ }
+
+ public static interface Selector<FromType extends Node, ToType extends Node> {
+ void execute(FromType aFrom, ToType aTo);
}
}