1 package com.atlassian.plugin.osgi.container.impl;
2
3 import com.atlassian.plugin.osgi.container.PackageScannerConfiguration;
4
5 import javax.servlet.ServletContext;
6 import java.util.*;
7
8
9
10
11 public class DefaultPackageScannerConfiguration implements PackageScannerConfiguration
12 {
13
14 private List<String> jarIncludes = Arrays.asList("*.jar");
15 private List<String> jarExcludes = Collections.emptyList();
16 private List<String> packageIncludes = Arrays.asList(
17 "com.atlassian.*", "com.google.common.*", "javax.*", "net.jcip.*", "org.jfree.*",
18 "org.joda.*", "org.quartz", "org.quartz.*", "com.opensymphony.*", "org.apache.*", "org.ofbiz.*", "org.xml.*", "org.w3c.*", "webwork.*",
19 "org.tuckey.web.filters.urlrewrite.*", "org.bouncycastle*", "org.dom4j*", "org.jdom*", "com.perforce*", "org.slf4j*");
20 private List<String> packageExcludes = Arrays.asList("com.springframework*", "org.apache.tomcat.*",
21 "org.apache.catalina.*", "org.apache.jasper.*", "org.apache.coyote.*", "org.apache.naming*",
22 "org.apache.commons.logging*", "com.atlassian.plugin.osgi.bridge.*");
23 private Map<String, String> packageVersions;
24 private String hostVersion;
25 private ServletContext servletContext;
26
27 public DefaultPackageScannerConfiguration()
28 {
29 this(null);
30 }
31
32
33
34
35
36 public DefaultPackageScannerConfiguration(String hostVersion)
37 {
38 this.hostVersion = hostVersion;
39 jarIncludes = new ArrayList<String>(jarIncludes);
40 jarExcludes = new ArrayList<String>(jarExcludes);
41 packageIncludes = new ArrayList<String>(packageIncludes);
42 packageExcludes = new ArrayList<String>(packageExcludes);
43 packageVersions = new HashMap<String, String>();
44 }
45
46
47 public void setJarIncludes(List<String> jarIncludes)
48 {
49 this.jarIncludes = jarIncludes;
50 }
51
52 public void setJarExcludes(List<String> jarExcludes)
53 {
54 this.jarExcludes = jarExcludes;
55 }
56
57 public void setPackageIncludes(List<String> packageIncludes)
58 {
59 this.packageIncludes = packageIncludes;
60 }
61
62 public void setPackageExcludes(List<String> packageExcludes)
63 {
64 this.packageExcludes = packageExcludes;
65 }
66
67
68
69
70
71
72
73 public void setJarPatterns(List<String> includes, List<String> excludes)
74 {
75 this.jarIncludes = includes;
76 this.jarExcludes = excludes;
77 }
78
79
80
81
82
83
84
85 public void setPackagePatterns(List<String> includes, List<String> excludes)
86 {
87 this.packageIncludes = includes;
88 this.packageExcludes = excludes;
89 }
90
91
92
93
94
95
96 public void setPackageVersions(Map<String, String> packageToVersions)
97 {
98 this.packageVersions = packageToVersions;
99 }
100
101 public List<String> getJarIncludes()
102 {
103 return jarIncludes;
104 }
105
106 public List<String> getJarExcludes()
107 {
108 return jarExcludes;
109 }
110
111 public List<String> getPackageIncludes()
112 {
113 return packageIncludes;
114 }
115
116 public List<String> getPackageExcludes()
117 {
118 return packageExcludes;
119 }
120
121 public Map<String, String> getPackageVersions()
122 {
123 return packageVersions;
124 }
125
126 public String getCurrentHostVersion()
127 {
128 return hostVersion;
129 }
130
131 public ServletContext getServletContext()
132 {
133 return servletContext;
134 }
135
136 public void setServletContext(ServletContext servletContext)
137 {
138 this.servletContext = servletContext;
139 }
140 }