NodeFinder is used to find a node with a given path. If the path to the node contains sub-paths to exo:symlink nodes, find real link node. 

|| *Method* || *Return* || *Prototype* || *Desription* ||
| *getNode* | {{Node}} | getNode(Node ancestorNode, String relativePath) throws PathNotFoundException, RepositoryException; |  Return the node at relPath related to ancestor node.{example}{example} @param ancestorNode: The ancestor of the node to retrieve from which we start.{example}{example} @param relativePath: The relative path of the node to retrieve.{example}{example}@throws PathNotFoundException: If "no", the node exists at the specified path.{example}{example} @throws RepositoryException:   if another error occurs.  |
| *getNode* | {{Node}} | getNode(Node ancestorNode, String relativePath, boolean giveTarget) throws PathNotFoundException, RepositoryException;|  Return the node at relPath related to ancestor node. If the node is a link and giveTarget has been set to <code>true</code>, the target node will be returned {example}{example} @param ancestorNode: The ancestor of the node to retrieve from which we start.{example}{example} @param relativePath: The relative path of the node to retrieve. {example}{example} @param giveTarget:   Indicate if the target must be returned in case the item is a link{example}{example}@throws PathNotFoundException: If no node exists at the specified path.{example}{example} @throws RepositoryException:   if another error occurs. |
| *getItem* | {{Item}} | getItem(String repository, String workspace, String absPath) throws PathNotFoundException, RepositoryException; |  Return the item at the specified absolute path.{example}{example} @param repository: The name of repository{example}{example} @param workspace:  The name of workspace {example}{example} @param absPath: An absolute path.{example}{example} @throws PathNotFoundException: if the specified path cannot be found. {example}{example} @throws RepositoryException:   if another error occurs.  |
| *getItemSys* | {{Item}} | getItemSys(String repository, String workspace, String absPath, boolean system) throws PathNotFoundException{example}{example}, RepositoryException; |  Return the item at the specified absolute path.{example}{example} @param repository: The name of repository{example}{example} @param workspace:  The name of workspace{example}{example} @param absPath:  An absolute path.{example}{example}@throws PathNotFoundException: if the specified path cannot be found.{example}{example} @throws RepositoryException:   if another error occurs.  |
| *getItem* | {{Item}} | getItem(String repository, String workspace, String : absPath, boolean giveTarget) throws PathNotFoundException, {example}{example}RepositoryException; |  Return the item at the specified absolute path. If the item is a link and giveTarget has been set to <code>true</code>, the target node will be returned {example}{example} @param repository: The name of repository{example}{example} @param workspace:  The name of workspace {example}{example} @param absPath:    An absolute path. {example}{example} @param giveTarget: Indicates if the target must be returned in case the item is a link {example}{example} @throws PathNotFoundException: if the specified path cannot be found. {example}{example} @throws RepositoryException:   if another error occurs. |
| *getItemGiveTargetSys* | {{Item}} | getItemGiveTargetSys(String{example}{example} repository, String workspace, String absPath, boolean giveTarget, boolean system) throws PathNotFoundException, RepositoryException;| Return the item at the specified absolute path. If the item is a link and giveTarget has been set to <code>true</code>, the target node will be returned  {example}{example} @param repository: The name of repository{example}{example} @param workspace: The name of workspace{example}{example} @param absPath: An absolute path.{example}{example} @param giveTarget: Indicates if the target must be returned in case the item is a link {example}{example} @param system: system provider{example}{example} @throws PathNotFoundException: if the specified path cannot be found.{example}{example} @throws RepositoryException:   if another error occurs. |
| *getItem* | {{Item}} | getItem(Session session, String absPath) throws PathNotFoundException, RepositoryException; |  Return the item at the specified absolute path.{example}{example} @param session:  The session to use in order to get the item {example}{example} @param absPath: An absolute path.{example}{example} @throws PathNotFoundException: if the specified path cannot be found.{example}{example} @throws RepositoryException:   if another error occurs.  |
| *getItem* | {{Item}} | getItem(Session session, String absPath, boolean giveTarget) throws PathNotFoundException, RepositoryException; |  Return the item at the specified absolute path. If the item is a link and giveTarget has been set to <code>true</code>, the target node will be returned {example}{example}@param session: The session to use in order to get the item{example}{example}@param absPath: An absolute path.{example}{example}@param giveTarget: Indicates if the target must be returned in case the item is a link{example}{example}@throws PathNotFoundException: if the specified path cannot be found.{example}{example}@throws RepositoryException:   if another error occurs. |
| *getItemTarget* | {{Item}} | {{getItemTarget(Session session, String absPath, boolean giveTarget, boolean system) throws PathNotFoundException, RepositoryException;}} |  Return the item at the specified absolute path. If the item is a link and giveTarget has been set to <code>true</code>, the target node will be returned {example}{example} @param session: The session to use in order to get the item{example}{example} @param absPath: An absolute path.{example}{example} @param giveTarget: Indicates if the target must be returned in case the item is a link    {example}{example} @param system: system provider{example}{example} @throws PathNotFoundException: if the specified path cannot be found.{example}{example} @throws RepositoryException:   if another error occurs. |
| *itemExists* | {{boolean}} | itemExists(Session session, String absPath) throws RepositoryException; |  Return <code>true</code> if an item exists at absPath; otherwise returns <code>false</code>{example}{example}Also return <code>false</code> if the specified absPath is malformed. {example}{example}@param session: The session to use in order to get the item{example}{example}@param absPath: An absolute path.{example}{example}@return <code>true</code> if an item exists at absPath; otherwise returns <code>false</code>. {example}{example}@throws RepositoryException:   if an error occurs.  |
