dblevins 2004/12/17 00:54:22
Modified: modules/core/src/java/org/openejb/server
ServiceAccessController.java ServiceLogger.java
SimpleSocketService.java
Log:
Revamped the AccessController slightly.
Added attributes for specifying the data logged on success or failure. The
attributes arent' used yet, but will be shortly.
Upated the SimpleSocketService to use the new constructors.
Revision Changes Path
1.4 +14 -6
openejb/modules/core/src/java/org/openejb/server/ServiceAccessController.java
Index: ServiceAccessController.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/server/ServiceAccessController.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ServiceAccessController.java 9 Apr 2004 19:04:01 -0000 1.3
+++ ServiceAccessController.java 17 Dec 2004 05:54:22 -0000 1.4
@@ -66,7 +66,7 @@
*/
public class ServiceAccessController implements ServerService {
private final ServerService next;
- private InetAddress[] allowedHosts;
+ private InetAddress[] allowHosts;
public ServiceAccessController(ServerService next) {
this.next = next;
@@ -74,7 +74,7 @@
public ServiceAccessController(ServerService next, InetAddress[]
allowedHosts) {
this.next = next;
- this.allowedHosts = allowedHosts;
+ this.allowHosts = allowedHosts;
}
public void service(Socket socket) throws ServiceException, IOException {
@@ -84,6 +84,14 @@
next.service(socket);
}
+ public InetAddress[] getAllowHosts() {
+ return allowHosts;
+ }
+
+ public void setAllowHosts(InetAddress[] allowHosts) {
+ this.allowHosts = allowHosts;
+ }
+
public void checkHostsAuthorization(InetAddress clientAddress,
InetAddress serverAddress) throws SecurityException {
// Authorization flag. This starts out as unauthorized
// and will stay that way unless a matching admin ip is
@@ -95,8 +103,8 @@
// match, the following for loop will be skipped.
authorized = clientAddress.equals(serverAddress);
- for (int i = 0; !authorized && i < allowedHosts.length; i++) {
- authorized = allowedHosts[i].equals(clientAddress);
+ for (int i = 0; !authorized && i < allowHosts.length; i++) {
+ authorized = allowHosts[i].equals(clientAddress);
}
if (!authorized) {
@@ -132,7 +140,7 @@
}
}
- allowedHosts = (InetAddress[]) addresses.toArray(new
InetAddress[addresses.size()]);
+ allowHosts = (InetAddress[]) addresses.toArray(new
InetAddress[addresses.size()]);
}
public void init(Properties props) throws Exception {
1.5 +18 -3
openejb/modules/core/src/java/org/openejb/server/ServiceLogger.java
Index: ServiceLogger.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/server/ServiceLogger.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- ServiceLogger.java 4 Sep 2004 21:35:49 -0000 1.4
+++ ServiceLogger.java 17 Dec 2004 05:54:22 -0000 1.5
@@ -68,10 +68,17 @@
public class ServiceLogger implements ServerService {
private final Log log;
private final ServerService next;
+ private final String[] logOnSuccess;
+ private final String[] logOnFailure;
+ private final String name;
- public ServiceLogger(ServerService next) {
+
+ public ServiceLogger(String name, ServerService next, String[]
logOnSuccess, String[] logOnFailure) {
+ this.log = LogFactory.getLog("OpenEJB.server.service." + name);
this.next = next;
- log = LogFactory.getLog("OpenEJB.server.service." + getName());
+ this.logOnSuccess = logOnSuccess;
+ this.logOnFailure = logOnFailure;
+ this.name = name;
}
/**
@@ -111,6 +118,14 @@
logFailure(e);
e.printStackTrace();
}
+ }
+
+ public String[] getLogOnSuccess() {
+ return logOnSuccess;
+ }
+
+ public String[] getLogOnFailure() {
+ return logOnFailure;
}
private void logIncoming() {
1.10 +6 -3
openejb/modules/core/src/java/org/openejb/server/SimpleSocketService.java
Index: SimpleSocketService.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/server/SimpleSocketService.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- SimpleSocketService.java 15 Nov 2004 05:37:12 -0000 1.9
+++ SimpleSocketService.java 17 Dec 2004 05:54:22 -0000 1.10
@@ -82,9 +82,12 @@
throw new ServiceException("Error constructing server service
class", e);
}
- service = new ServiceLogger(service);
- service = new ServiceAccessController(service, onlyFrom);
+ String name = "ejb";
+ String[] logOnSuccess = new
String[]{"HOST","NAME","THREADID","USERID"};
+ String[] logOnFailure = new String[]{"HOST","NAME"};
service = new ServicePool(service);
+ service = new ServiceAccessController(service, onlyFrom);
+ service = new ServiceLogger(name, service, logOnSuccess,
logOnFailure);
server = service;
// TODO Horrid hack, the concept needs to survive somewhere