View Javadoc

1   package org.apache.onami.autobind.configuration;
2   
3   /*
4    * Licensed to the Apache Software Foundation (ASF) under one or more
5    * contributor license agreements.  See the NOTICE file distributed with
6    * this work for additional information regarding copyright ownership.
7    * The ASF licenses this file to You under the Apache License, Version 2.0
8    * (the "License"); you may not use this file except in compliance with
9    * the License.  You may obtain a copy of the License at
10   *
11   *  http://www.apache.org/licenses/LICENSE-2.0
12   *
13   * Unless required by applicable law or agreed to in writing, software
14   * distributed under the License is distributed on an "AS IS" BASIS,
15   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16   * See the License for the specific language governing permissions and
17   * limitations under the License.
18   */
19  
20  import static org.apache.onami.autobind.configuration.PathConfig.PathType.CLASSPATH;
21  
22  import java.lang.annotation.Documented;
23  
24  @Documented
25  public @interface PathConfig
26  {
27  
28      String value();
29  
30      PathType type() default CLASSPATH;
31  
32      public static enum PathType
33      {
34  
35          /**
36           * Use the Classloader to fetch the Configuration
37           */
38          CLASSPATH,
39  
40          /**
41           * Tries to load the Configuration from a File. Can be absolute or relative. Relative to the the Path of
42           * ClassLoader.getResources("/").
43           */
44          FILE,
45  
46          /**
47           * Can be each Kind of URL. file:/, classpath:/, http://
48           */
49          URL
50  
51      }
52  
53  }