1 package gov.bnl.gums.userGroup;
2
3 import java.lang.ref.SoftReference;
4
5 import gov.bnl.gums.configuration.Configuration;
6 import gov.bnl.gums.db.UserGroupDB;
7
8 import org.apache.log4j.Logger;
9
10
11
12
13
14
15
16
17 public class VomsServer {
18 private Logger log = Logger.getLogger(VOMSUserGroup.class);
19 private String name = "";
20 private String description = "";
21 private String baseUrl = "";
22 private String sslKey = "";
23 private String sslCertfile = "";
24 private String sslCAFiles = "";
25 private String sslKeyPasswd = "";
26 private UserGroupDB db = null;
27 private String persistenceFactory;
28 private SoftReference configurationRef = null;
29
30
31
32
33
34 public VomsServer() {
35 }
36
37
38
39
40
41
42 public VomsServer(Configuration configuration) {
43 this.configurationRef = new SoftReference(configuration);
44 }
45
46
47
48
49
50
51
52 public VomsServer(Configuration configuration, String name) {
53 this.configurationRef = new SoftReference(configuration);
54 this.name = name;
55 }
56
57
58 public VomsServer clone(Configuration configuration) {
59 VomsServer vomsServer = new VomsServer(configuration, new String(name));
60 vomsServer.setDescription(new String(getDescription()));
61 vomsServer.setBaseUrl(new String(baseUrl));
62 vomsServer.setSslKey(new String(sslKey));
63 vomsServer.setSslCertfile(new String(sslCertfile));
64 vomsServer.setSslKeyPasswd(new String(sslKeyPasswd));
65 vomsServer.setSslCAFiles(new String(sslCAFiles));
66 vomsServer.setPersistenceFactory(new String(persistenceFactory));
67 return vomsServer;
68 }
69
70
71
72
73
74 public String getBaseUrl() {
75 return baseUrl;
76 }
77
78 public Configuration getConfiguration() {
79 if (configurationRef==null)
80 return null;
81 return (Configuration)configurationRef.get();
82 }
83
84 public String getDescription() {
85 return description;
86 }
87
88 public UserGroupDB getDB(String userGroup) {
89 return getConfiguration().getPersistenceFactory(persistenceFactory).retrieveUserGroupDB( userGroup );
90 }
91
92 public String getName() {
93 return name;
94 }
95
96 public String getPersistenceFactory() {
97 return persistenceFactory;
98 }
99
100
101
102
103
104 public String getSslCAFiles() {
105 return this.sslCAFiles;
106 }
107
108
109
110
111
112 public String getSslCertfile() {
113 return this.sslCertfile;
114 }
115
116
117
118
119
120 public String getSslKey() {
121 return this.sslKey;
122 }
123
124
125
126
127
128 public String getSslKeyPasswd() {
129 return this.sslKeyPasswd;
130 }
131
132
133
134
135
136
137
138 public void setBaseUrl(String baseUrl) {
139 this.baseUrl = baseUrl;
140 }
141
142 public void setConfiguration(Configuration configuration) {
143 this.configurationRef = new SoftReference(configuration);
144 }
145
146 public void setDescription(String description) {
147 this.description = description;
148 }
149
150 public void setName(String name) {
151 this.name = name;
152 }
153
154 public void setPersistenceFactory(String persistenceFactory) {
155 this.persistenceFactory = persistenceFactory;
156 }
157
158
159
160
161
162 public void setSslCAFiles(String sslCAFiles) {
163 this.sslCAFiles = sslCAFiles;
164 }
165
166
167
168
169
170 public void setSslCertfile(String sslCertfile) {
171 this.sslCertfile = sslCertfile;
172 }
173
174
175
176
177
178 public void setSslKey(String sslKey) {
179 this.sslKey = sslKey;
180 }
181
182
183
184
185
186 public void setSslKeyPasswd(String sslKeyPasswd) {
187 this.sslKeyPasswd = sslKeyPasswd;
188 }
189
190 public String toString() {
191 return "vomsServer: baseUrl='" + baseUrl + "' sslCertfile='" + getSslCertfile() + "' sslKey='" + getSslKey() + "' sslKeyPasswd set:" + (!getSslKeyPasswd().equals("")) + " - sslCAFiles='" + getSslCAFiles() + "'";
192 }
193
194 public String toXML() {
195 String retStr = "\t\t<vomsServer\n"+
196 "\t\t\tname='"+name+"'\n"+
197 "\t\t\tdescription='"+getDescription()+"'\n"+
198 "\t\t\tpersistenceFactory='"+persistenceFactory+"'\n"+
199 "\t\t\tbaseUrl='"+baseUrl+"'\n";
200 if (sslKey != null)
201 retStr += "\t\t\tsslKey='"+sslKey+"'\n";
202 if (sslCertfile != null)
203 retStr += "\t\t\tsslCertfile='"+sslCertfile+"'\n";
204 if (sslKeyPasswd != null)
205 retStr += "\t\t\tsslKeyPasswd='"+sslKeyPasswd+"'\n";
206 if (sslCAFiles != null)
207 retStr += "\t\t\tsslCAFiles='"+sslCAFiles+"'\n";
208
209 if (retStr.charAt(retStr.length()-1)=='\n')
210 retStr = retStr.substring(0, retStr.length()-1);
211
212 retStr += "/>\n\n";
213
214 return retStr;
215 }
216
217 }