View Javadoc

1   package com.pathfinder.api;
2   
3   import java.rmi.Remote;
4   import java.rmi.RemoteException;
5   import java.util.List;
6   import java.util.Properties;
7   
8   /**
9    * Part of the external graph traversal API exposed by the routing team
10   * and used by us (booking and tracking team).
11   *
12   */
13  public interface GraphTraversalService extends Remote {
14  
15    /**
16     * @param originUnLocode origin UN Locode
17     * @param destinationUnLocode destination UN Locode
18     * @param limitations restrictions on the path selection, as key-value according to some API specification
19     * @return A list of transit paths
20     * @throws RemoteException RMI problem
21     */
22    List<TransitPath> findShortestPath(String originUnLocode,
23                                       String destinationUnLocode,
24                                       Properties limitations) throws RemoteException;
25  
26  }