You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2009/04/11 01:38:41 UTC

svn commit: r764106 - in /tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/util: IdToDependencyNode.java idToDependencyNode.java

Author: hlship
Date: Fri Apr 10 23:38:40 2009
New Revision: 764106

URL: http://svn.apache.org/viewvc?rev=764106&view=rev
Log:
Correct case of class name.

Added:
    tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/util/IdToDependencyNode.java
      - copied, changed from r764094, tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/util/idToDependencyNode.java
Removed:
    tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/util/idToDependencyNode.java

Copied: tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/util/IdToDependencyNode.java (from r764094, tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/util/idToDependencyNode.java)
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/util/IdToDependencyNode.java?p2=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/util/IdToDependencyNode.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/util/idToDependencyNode.java&r1=764094&r2=764106&rev=764106&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/util/idToDependencyNode.java (original)
+++ tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/util/IdToDependencyNode.java Fri Apr 10 23:38:40 2009
@@ -29,214 +29,214 @@
  * Used to order objects into an "execution" order. Each object must have a unique id. It may specify a list of
  * constraints which identify the ordering of the objects.
  */
-public class idToDependencyNode<T>
+public class IdToDependencyNode<T>
 {
-    private final OneShotLock lock = new OneShotLock();
+  private final OneShotLock lock = new OneShotLock();
 
-    private final Logger logger;
+  private final Logger logger;
 
-    private final List<Orderable> orderables = CollectionFactory.newList();
+  private final List<Orderable> orderables = CollectionFactory.newList();
 
-    private final Map<String, Orderable<T>> idToOrderable = CollectionFactory.newCaseInsensitiveMap();
+  private final Map<String, Orderable<T>> idToOrderable = CollectionFactory.newCaseInsensitiveMap();
 
-    private final Map<String, DependencyNode<T>> idToDependencyNode = CollectionFactory.newCaseInsensitiveMap();
+  private final Map<String, DependencyNode<T>> idToDependencyNode = CollectionFactory.newCaseInsensitiveMap();
 
-    // Special node that is always dead last: all other nodes are a dependency
-    // of the trailer.
+  // Special node that is always dead last: all other nodes are a dependency
+  // of the trailer.
 
-    private DependencyNode<T> trailer;
+  private DependencyNode<T> trailer;
 
-    interface DependencyLinker<T>
+  interface DependencyLinker<T>
+  {
+    void link(DependencyNode<T> source, DependencyNode<T> target);
+  }
+
+  // before: source is added as a dependency of target, so source will
+  // appear before target.
+
+  final DependencyLinker<T> before = new DependencyLinker<T>()
+  {
+    public void link(DependencyNode<T> source, DependencyNode<T> target)
     {
-        void link(DependencyNode<T> source, DependencyNode<T> target);
+      target.addDependency(source);
     }
+  };
 
-    // before: source is added as a dependency of target, so source will
-    // appear before target.
+  // after: target is added as a dependency of source, so source will appear
+  // after target.
 
-    final DependencyLinker<T> before = new DependencyLinker<T>()
+  final DependencyLinker<T> after = new DependencyLinker<T>()
+  {
+    public void link(DependencyNode<T> source, DependencyNode<T> target)
     {
-        public void link(DependencyNode<T> source, DependencyNode<T> target)
-        {
-            target.addDependency(source);
-        }
-    };
+      source.addDependency(target);
+    }
+  };
 
-    // after: target is added as a dependency of source, so source will appear
-    // after target.
+  public IdToDependencyNode(Logger logger)
+  {
+    this.logger = logger;
+  }
 
-    final DependencyLinker<T> after = new DependencyLinker<T>()
-    {
-        public void link(DependencyNode<T> source, DependencyNode<T> target)
-        {
-            source.addDependency(target);
-        }
-    };
+  /**
+   * Adds an object to be ordered.
+   *
+   * @param orderable
+   */
+  public void add(Orderable<T> orderable)
+  {
+    lock.check();
 
-    public idToDependencyNode(Logger logger)
+    String id = orderable.getId();
+
+    if (idToOrderable.containsKey(id))
     {
-        this.logger = logger;
+      logger.warn(UtilMessages.duplicateOrderer(id));
+      return;
     }
 
-    /**
-     * Adds an object to be ordered.
-     *
-     * @param orderable
-     */
-    public void add(Orderable<T> orderable)
-    {
-        lock.check();
+    orderables.add(orderable);
 
-        String id = orderable.getId();
+    idToOrderable.put(id, orderable);
+  }
 
-        if (idToOrderable.containsKey(id))
-        {
-            logger.warn(UtilMessages.duplicateOrderer(id));
-            return;
-        }
+  /**
+   * Adds an object to be ordered.
+   *
+   * @param id          unique, qualified id for the target
+   * @param target      the object to be ordered (or null as a placeholder)
+   * @param constraints optional, variable constraints
+   * @see #add(org.apache.tapestry5.ioc.Orderable)
+   */
 
-        orderables.add(orderable);
+  public void add(String id, T target, String... constraints)
+  {
+    lock.check();
 
-        idToOrderable.put(id, orderable);
-    }
+    add(new Orderable<T>(id, target, constraints));
+  }
 
-    /**
-     * Adds an object to be ordered.
-     *
-     * @param id          unique, qualified id for the target
-     * @param target      the object to be ordered (or null as a placeholder)
-     * @param constraints optional, variable constraints
-     * @see #add(org.apache.tapestry5.ioc.Orderable)
-     */
+  public List<T> getOrdered()
+  {
+    lock.lock();
 
-    public void add(String id, T target, String... constraints)
-    {
-        lock.check();
+    initializeGraph();
 
-        add(new Orderable<T>(id, target, constraints));
-    }
+    List<T> result = newList();
 
-    public List<T> getOrdered()
+    for (Orderable<T> orderable : trailer.getOrdered())
     {
-        lock.lock();
+      T target = orderable.getTarget();
 
-        initializeGraph();
+      // Nulls are placeholders that are skipped.
 
-        List<T> result = newList();
+      if (target != null) result.add(target);
+    }
 
-        for (Orderable<T> orderable : trailer.getOrdered())
-        {
-            T target = orderable.getTarget();
+    return result;
+  }
 
-            // Nulls are placeholders that are skipped.
+  private void initializeGraph()
+  {
+    trailer = new DependencyNode<T>(logger, new Orderable<T>("*-trailer-*", null));
 
-            if (target != null) result.add(target);
-        }
+    addNodes();
 
-        return result;
-    }
+    addDependencies();
+  }
 
-    private void initializeGraph()
+  private void addNodes()
+  {
+    for (Orderable<T> orderable : orderables)
     {
-        trailer = new DependencyNode<T>(logger, new Orderable<T>("*-trailer-*", null));
+      DependencyNode<T> node = new DependencyNode<T>(logger, orderable);
 
-        addNodes();
+      idToDependencyNode.put(orderable.getId(), node);
 
-        addDependencies();
+      trailer.addDependency(node);
     }
+  }
 
-    private void addNodes()
+  private void addDependencies()
+  {
+    for (Orderable<T> orderable : orderables)
     {
-        for (Orderable<T> orderable : orderables)
-        {
-            DependencyNode<T> node = new DependencyNode<T>(logger, orderable);
-
-            idToDependencyNode.put(orderable.getId(), node);
-
-            trailer.addDependency(node);
-        }
+      addDependencies(orderable);
     }
+  }
 
-    private void addDependencies()
-    {
-        for (Orderable<T> orderable : orderables)
-        {
-            addDependencies(orderable);
-        }
-    }
+  private void addDependencies(Orderable<T> orderable)
+  {
+    String sourceId = orderable.getId();
 
-    private void addDependencies(Orderable<T> orderable)
+    for (String constraint : orderable.getConstraints())
     {
-        String sourceId = orderable.getId();
-
-        for (String constraint : orderable.getConstraints())
-        {
-            addDependencies(sourceId, constraint);
-        }
+      addDependencies(sourceId, constraint);
     }
+  }
 
-    private void addDependencies(String sourceId, String constraint)
-    {
-        int colonx = constraint.indexOf(':');
-
-        String type = colonx > 0 ? constraint.substring(0, colonx) : null;
+  private void addDependencies(String sourceId, String constraint)
+  {
+    int colonx = constraint.indexOf(':');
 
-        DependencyLinker<T> linker = null;
+    String type = colonx > 0 ? constraint.substring(0, colonx) : null;
 
-        if ("after".equals(type))
-            linker = after;
-        else if ("before".equals(type)) linker = before;
+    DependencyLinker<T> linker = null;
 
-        if (linker == null)
-        {
-            logger.warn(UtilMessages.constraintFormat(constraint, sourceId));
-            return;
-        }
+    if ("after".equals(type))
+      linker = after;
+    else if ("before".equals(type)) linker = before;
 
-        String patternList = constraint.substring(colonx + 1);
-
-        linkNodes(sourceId, patternList, linker);
+    if (linker == null)
+    {
+      logger.warn(UtilMessages.constraintFormat(constraint, sourceId));
+      return;
     }
 
-    private void linkNodes(String sourceId, String patternList, DependencyLinker<T> linker)
-    {
-        Collection<DependencyNode<T>> nodes = findDependencies(sourceId, patternList);
+    String patternList = constraint.substring(colonx + 1);
 
-        DependencyNode<T> source = idToDependencyNode.get(sourceId);
+    linkNodes(sourceId, patternList, linker);
+  }
 
-        for (DependencyNode<T> target : nodes)
-        {
-            linker.link(source, target);
-        }
-    }
+  private void linkNodes(String sourceId, String patternList, DependencyLinker<T> linker)
+  {
+    Collection<DependencyNode<T>> nodes = findDependencies(sourceId, patternList);
+
+    DependencyNode<T> source = idToDependencyNode.get(sourceId);
 
-    private Collection<DependencyNode<T>> findDependencies(String sourceId, String patternList)
+    for (DependencyNode<T> target : nodes)
     {
-        IdMatcher matcher = buildMatcherForPattern(patternList);
+      linker.link(source, target);
+    }
+  }
 
-        Collection<DependencyNode<T>> result = newList();
+  private Collection<DependencyNode<T>> findDependencies(String sourceId, String patternList)
+  {
+    IdMatcher matcher = buildMatcherForPattern(patternList);
 
-        for (String id : idToDependencyNode.keySet())
-        {
-            if (sourceId.equals(id)) continue;
+    Collection<DependencyNode<T>> result = newList();
 
-            if (matcher.matches(id)) result.add(idToDependencyNode.get(id));
-        }
+    for (String id : idToDependencyNode.keySet())
+    {
+      if (sourceId.equals(id)) continue;
 
-        return result;
+      if (matcher.matches(id)) result.add(idToDependencyNode.get(id));
     }
 
-    private IdMatcher buildMatcherForPattern(String patternList)
-    {
-        List<IdMatcher> matchers = newList();
+    return result;
+  }
 
-        for (String pattern : patternList.split(","))
-        {
-            IdMatcher matcher = new IdMatcherImpl(pattern.trim());
+  private IdMatcher buildMatcherForPattern(String patternList)
+  {
+    List<IdMatcher> matchers = newList();
 
-            matchers.add(matcher);
-        }
+    for (String pattern : patternList.split(","))
+    {
+      IdMatcher matcher = new IdMatcherImpl(pattern.trim());
 
-        return matchers.size() == 1 ? matchers.get(0) : new OrIdMatcher(matchers);
+      matchers.add(matcher);
     }
+
+    return matchers.size() == 1 ? matchers.get(0) : new OrIdMatcher(matchers);
+  }
 }