1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.discovery.resource.names;
18
19 import org.apache.commons.discovery.ResourceNameDiscover;
20 import org.apache.commons.discovery.ResourceNameIterator;
21 import org.apache.commons.discovery.log.DiscoveryLogFactory;
22 import org.apache.commons.logging.Log;
23
24
25 /***
26 * Recover resource name from System Properties.
27 *
28 * @author Richard A. Sitze
29 */
30 public class DiscoverNamesInSystemProperties
31 extends ResourceNameDiscoverImpl
32 implements ResourceNameDiscover
33 {
34 private static Log log = DiscoveryLogFactory.newLog(DiscoverNamesInSystemProperties.class);
35 public static void setLog(Log _log) {
36 log = _log;
37 }
38
39 /*** Construct a new resource discoverer
40 */
41 public DiscoverNamesInSystemProperties() {
42 }
43
44 /***
45 * @return Enumeration of ResourceInfo
46 */
47 public ResourceNameIterator findResourceNames(final String resourceName) {
48 if (log.isDebugEnabled())
49 log.debug("find: resourceName='" + resourceName + "'");
50
51 return new ResourceNameIterator() {
52 private String resource = System.getProperty(resourceName);
53
54 public boolean hasNext() {
55 return resource != null;
56 }
57
58 public String nextResourceName() {
59 String element = resource;
60 resource = null;
61 return element;
62 }
63 };
64 }
65 }