1   
2   
3   
4   
5   
6   
7   
8   
9   
10  
11  
12  
13  
14  
15  
16  package org.jdiagnose.library.web.breadcrumb;
17  
18  import java.util.List;
19  import java.util.Map;
20  import java.util.Properties;
21  import java.util.Set;
22  
23  import javax.servlet.http.HttpServletRequest;
24  
25  /***
26   * @author jmccrindle
27   */
28  public class JDiagnoseTrail implements Trail {
29  
30      private DefaultTrail trail = null;
31      private PropertiesCrumbFactory propertiesCrumbFactory = null;
32      private MapCrumbFactory mapCrumbFactory = null;
33      private UriCrumbStrategy uriCrumbStrategy = null;
34      
35      public JDiagnoseTrail() {
36          uriCrumbStrategy = new UriCrumbStrategy();
37          mapCrumbFactory = new MapCrumbFactory();
38          propertiesCrumbFactory = new PropertiesCrumbFactory(mapCrumbFactory);
39          trail = new DefaultTrail(uriCrumbStrategy, propertiesCrumbFactory);
40      }
41      
42      
43  
44  
45      public List getBreadcrumb(HttpServletRequest request) {
46          return trail.getBreadcrumb(request);
47      }
48      
49      public void setFactories(Map factories) {
50          mapCrumbFactory.setFactories(factories);
51      }
52      
53      public void setProperties(Properties properties) {
54          propertiesCrumbFactory.setProperties(properties);
55      }
56      
57      public void setPrefixes(Set prefixes) {
58          uriCrumbStrategy.setPrefixes(prefixes);
59      }
60      
61      public void setSuffix(String suffix) {
62          uriCrumbStrategy.setSuffix(suffix);
63      }
64  }