View Javadoc

1   /*
2    *
3    *   Copyright 2005 The Apache Software Foundation.
4    *
5    *  Licensed under the Apache License, Version 2.0 (the "License");
6    *  you may not use this file except in compliance with the License.
7    *  You may obtain a copy of the License at
8    *
9    *      http://www.apache.org/licenses/LICENSE-2.0
10   *
11   *  Unless required by applicable law or agreed to in writing, software
12   *  distributed under the License is distributed on an "AS IS" BASIS,
13   *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   *  See the License for the specific language governing permissions and
15   *  limitations under the License.
16   *
17   */
18  package org.apache.commons.scxml;
19  
20  /***
21   * Interface for a component that may be used by the SCXML engines
22   * to resolve context sensitive paths.
23   *
24   */
25  public interface PathResolver {
26  
27      /***
28       * Resolve this context sensitive path to an absolute URL.
29       *
30       * @param ctxPath Context sensitive path, can be a relative URL
31       * @return Resolved path (an absolute URL) or <code>null</code>
32       */
33      String resolvePath(String ctxPath);
34  
35      /***
36       * Get a PathResolver rooted at this context sensitive path.
37       *
38       * @param ctxPath Context sensitive path, can be a relative URL
39       * @return Returns a new resolver rooted at ctxPath
40       */
41      PathResolver getResolver(String ctxPath);
42  
43  }
44