create newweb branch without sni changes
This commit is contained in:
parent
f5e82b4ecc
commit
c8dd78ff9f
@ -6,7 +6,6 @@
|
|||||||
<class>de.hsadmin.core.qserv.QueueTask</class>
|
<class>de.hsadmin.core.qserv.QueueTask</class>
|
||||||
<class>de.hsadmin.mods.cust.Customer</class>
|
<class>de.hsadmin.mods.cust.Customer</class>
|
||||||
<class>de.hsadmin.mods.cust.Contact</class>
|
<class>de.hsadmin.mods.cust.Contact</class>
|
||||||
<class>de.hsadmin.mods.cust.BankAccount</class>
|
|
||||||
<class>de.hsadmin.mods.pac.Pac</class>
|
<class>de.hsadmin.mods.pac.Pac</class>
|
||||||
<class>de.hsadmin.mods.pac.BasePac</class>
|
<class>de.hsadmin.mods.pac.BasePac</class>
|
||||||
<class>de.hsadmin.mods.pac.BaseComponent</class>
|
<class>de.hsadmin.mods.pac.BaseComponent</class>
|
||||||
|
@ -6,7 +6,6 @@
|
|||||||
<class>de.hsadmin.core.qserv.QueueTask</class>
|
<class>de.hsadmin.core.qserv.QueueTask</class>
|
||||||
<class>de.hsadmin.mods.cust.Customer</class>
|
<class>de.hsadmin.mods.cust.Customer</class>
|
||||||
<class>de.hsadmin.mods.cust.Contact</class>
|
<class>de.hsadmin.mods.cust.Contact</class>
|
||||||
<class>de.hsadmin.mods.cust.BankAccount</class>
|
|
||||||
<class>de.hsadmin.mods.pac.Pac</class>
|
<class>de.hsadmin.mods.pac.Pac</class>
|
||||||
<class>de.hsadmin.mods.pac.BasePac</class>
|
<class>de.hsadmin.mods.pac.BasePac</class>
|
||||||
<class>de.hsadmin.mods.pac.BaseComponent</class>
|
<class>de.hsadmin.mods.pac.BaseComponent</class>
|
||||||
|
@ -11,6 +11,14 @@
|
|||||||
<servlet>
|
<servlet>
|
||||||
<servlet-name>Queue Status Servlet</servlet-name>
|
<servlet-name>Queue Status Servlet</servlet-name>
|
||||||
<servlet-class>de.hsadmin.core.qserv.QueueStatusReceiverServlet</servlet-class>
|
<servlet-class>de.hsadmin.core.qserv.QueueStatusReceiverServlet</servlet-class>
|
||||||
|
<init-param>
|
||||||
|
<param-name>proxyValidateUrl</param-name>
|
||||||
|
<param-value>https://@LOGIN_HOST@:@LOGIN_PORT@/cas/proxyValidate</param-value>
|
||||||
|
</init-param>
|
||||||
|
<init-param>
|
||||||
|
<param-name>proxyServiceUrl</param-name>
|
||||||
|
<param-value>https://@CONFIG_HOST@:@CONFIG_PORT@/hsar/backend</param-value>
|
||||||
|
</init-param>
|
||||||
<load-on-startup>1</load-on-startup>
|
<load-on-startup>1</load-on-startup>
|
||||||
</servlet>
|
</servlet>
|
||||||
|
|
||||||
@ -18,8 +26,8 @@
|
|||||||
<servlet-name>XmlRpcServlet</servlet-name>
|
<servlet-name>XmlRpcServlet</servlet-name>
|
||||||
<servlet-class>de.hsadmin.remote.HSXmlRpcServlet</servlet-class>
|
<servlet-class>de.hsadmin.remote.HSXmlRpcServlet</servlet-class>
|
||||||
<init-param>
|
<init-param>
|
||||||
<param-name>enabledForExtensions</param-name>
|
<param-name>enabledForExtensions</param-name>
|
||||||
<param-value>true</param-value>
|
<param-value>true</param-value>
|
||||||
</init-param>
|
</init-param>
|
||||||
</servlet>
|
</servlet>
|
||||||
|
|
||||||
@ -28,11 +36,6 @@
|
|||||||
<url-pattern>/queueStatus</url-pattern>
|
<url-pattern>/queueStatus</url-pattern>
|
||||||
</servlet-mapping>
|
</servlet-mapping>
|
||||||
|
|
||||||
<servlet-mapping>
|
|
||||||
<servlet-name>CLI Client Connector</servlet-name>
|
|
||||||
<url-pattern>/hsadmin/cli-interface/</url-pattern>
|
|
||||||
</servlet-mapping>
|
|
||||||
|
|
||||||
<servlet-mapping>
|
<servlet-mapping>
|
||||||
<servlet-name>XmlRpcServlet</servlet-name>
|
<servlet-name>XmlRpcServlet</servlet-name>
|
||||||
<url-pattern>/xmlrpc/*</url-pattern>
|
<url-pattern>/xmlrpc/*</url-pattern>
|
||||||
|
@ -11,6 +11,14 @@
|
|||||||
<servlet>
|
<servlet>
|
||||||
<servlet-name>Queue Status Servlet</servlet-name>
|
<servlet-name>Queue Status Servlet</servlet-name>
|
||||||
<servlet-class>de.hsadmin.core.qserv.QueueStatusReceiverServlet</servlet-class>
|
<servlet-class>de.hsadmin.core.qserv.QueueStatusReceiverServlet</servlet-class>
|
||||||
|
<init-param>
|
||||||
|
<param-name>proxyValidateUrl</param-name>
|
||||||
|
<param-value>https://@LOGIN_HOST@:@LOGIN_PORT@/cas/proxyValidate</param-value>
|
||||||
|
</init-param>
|
||||||
|
<init-param>
|
||||||
|
<param-name>proxyServiceUrl</param-name>
|
||||||
|
<param-value>https://@CONFIG_HOST@:@CONFIG_PORT@/hsar/backend</param-value>
|
||||||
|
</init-param>
|
||||||
<load-on-startup>1</load-on-startup>
|
<load-on-startup>1</load-on-startup>
|
||||||
</servlet>
|
</servlet>
|
||||||
|
|
||||||
@ -28,11 +36,6 @@
|
|||||||
<url-pattern>/queueStatus</url-pattern>
|
<url-pattern>/queueStatus</url-pattern>
|
||||||
</servlet-mapping>
|
</servlet-mapping>
|
||||||
|
|
||||||
<servlet-mapping>
|
|
||||||
<servlet-name>CLI Client Connector</servlet-name>
|
|
||||||
<url-pattern>/hsadmin/cli-interface/</url-pattern>
|
|
||||||
</servlet-mapping>
|
|
||||||
|
|
||||||
<servlet-mapping>
|
<servlet-mapping>
|
||||||
<servlet-name>XmlRpcServlet</servlet-name>
|
<servlet-name>XmlRpcServlet</servlet-name>
|
||||||
<url-pattern>/xmlrpc/*</url-pattern>
|
<url-pattern>/xmlrpc/*</url-pattern>
|
||||||
|
@ -18,12 +18,14 @@ import javax.naming.Context;
|
|||||||
import javax.naming.InitialContext;
|
import javax.naming.InitialContext;
|
||||||
import javax.naming.NamingException;
|
import javax.naming.NamingException;
|
||||||
import javax.persistence.EntityManager;
|
import javax.persistence.EntityManager;
|
||||||
|
import javax.servlet.ServletConfig;
|
||||||
import javax.servlet.ServletException;
|
import javax.servlet.ServletException;
|
||||||
import javax.servlet.http.HttpServlet;
|
import javax.servlet.http.HttpServlet;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
import de.hsadmin.core.model.TechnicalException;
|
import de.hsadmin.core.model.TechnicalException;
|
||||||
|
import de.hsadmin.core.model.TicketValidator;
|
||||||
import de.hsadmin.core.model.Transaction;
|
import de.hsadmin.core.model.Transaction;
|
||||||
import de.hsadmin.core.util.Config;
|
import de.hsadmin.core.util.Config;
|
||||||
|
|
||||||
@ -43,6 +45,10 @@ public class QueueStatusReceiverServlet extends HttpServlet
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void init() throws ServletException {
|
public void init() throws ServletException {
|
||||||
|
final ServletConfig cfg = getServletConfig();
|
||||||
|
final String validateURL = cfg.getInitParameter("proxyValidateUrl");
|
||||||
|
final String serviceURL = cfg.getInitParameter("proxyServiceUrl");
|
||||||
|
TicketValidator.getInstance().initialize(validateURL, serviceURL);
|
||||||
isConnected = false;
|
isConnected = false;
|
||||||
messageCount = 0;
|
messageCount = 0;
|
||||||
errorCount = 0;
|
errorCount = 0;
|
||||||
|
104
hsarback/src/de/hsadmin/remote/PropertyRemote.java
Normal file
104
hsarback/src/de/hsadmin/remote/PropertyRemote.java
Normal file
@ -0,0 +1,104 @@
|
|||||||
|
package de.hsadmin.remote;
|
||||||
|
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.lang.reflect.Field;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Properties;
|
||||||
|
|
||||||
|
import de.hsadmin.core.model.AbstractEntity;
|
||||||
|
import de.hsadmin.core.model.AnnFieldIO;
|
||||||
|
import de.hsadmin.core.model.AuthenticationException;
|
||||||
|
import de.hsadmin.core.model.HSAdminException;
|
||||||
|
import de.hsadmin.core.model.ReadWriteAccess;
|
||||||
|
import de.hsadmin.core.model.Transaction;
|
||||||
|
|
||||||
|
public class PropertyRemote implements IRemote {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<Map<String, Object>> search(String runAsUser, String ticket,
|
||||||
|
Map<String, String> whereParams) throws HSAdminException {
|
||||||
|
String user = runAsUser;
|
||||||
|
List<Map<String, Object>> result = new ArrayList<Map<String,Object>>();
|
||||||
|
Transaction transaction = new Transaction(user);
|
||||||
|
try {
|
||||||
|
if (transaction.login(user, ticket)) {
|
||||||
|
InputStream resourceAsStream = getClass().getClassLoader().getResourceAsStream("org/apache/xmlrpc/webserver/XmlRpcServlet.properties");
|
||||||
|
Properties properties = new Properties();
|
||||||
|
properties.load(resourceAsStream);
|
||||||
|
for (Object moduleKey : properties.keySet()) {
|
||||||
|
Class<?> remoteClass = Class.forName(properties.getProperty((String) moduleKey));
|
||||||
|
Object newInstance = remoteClass.newInstance();
|
||||||
|
if (newInstance instanceof AbstractRemote) {
|
||||||
|
AbstractRemote remote = (AbstractRemote) newInstance;
|
||||||
|
Class<? extends AbstractEntity> entityClass = remote.getEntityClass();
|
||||||
|
for (Field f: entityClass.getDeclaredFields()) {
|
||||||
|
AnnFieldIO fieldIO = f.getAnnotation(AnnFieldIO.class);
|
||||||
|
if (fieldIO != null) {
|
||||||
|
HashMap<String, Object> propertyProperties = new HashMap<String, Object>();
|
||||||
|
String fieldName = f.getName();
|
||||||
|
propertyProperties.put("module", (String) moduleKey);
|
||||||
|
propertyProperties.put("name", fieldName);
|
||||||
|
propertyProperties.put("searchable", "equals");
|
||||||
|
propertyProperties.put("readwriteable", "read");
|
||||||
|
ReadWriteAccess rw = fieldIO.rw();
|
||||||
|
if (ReadWriteAccess.READONLY.equals(rw)) {
|
||||||
|
propertyProperties.put("readwriteable", "read");
|
||||||
|
}
|
||||||
|
if (ReadWriteAccess.READWRITE.equals(rw)) {
|
||||||
|
propertyProperties.put("readwriteable", "readwrite");
|
||||||
|
}
|
||||||
|
if (ReadWriteAccess.WRITEONCE.equals(rw)) {
|
||||||
|
propertyProperties.put("readwriteable", "writeonce");
|
||||||
|
}
|
||||||
|
if (ReadWriteAccess.WRITEONLY.equals(rw)) {
|
||||||
|
propertyProperties.put("readwriteable", "none");
|
||||||
|
}
|
||||||
|
propertyProperties.put("type", "string");
|
||||||
|
propertyProperties.put("displaySequence", "2");
|
||||||
|
if ("name".equals(fieldName)) {
|
||||||
|
propertyProperties.put("displaySequence", "1");
|
||||||
|
}
|
||||||
|
propertyProperties.put("displayVisible", "always");
|
||||||
|
propertyProperties.put("minLength", "0");
|
||||||
|
propertyProperties.put("maxLength", "999");
|
||||||
|
String regExp = fieldIO.validation();
|
||||||
|
propertyProperties.put("validationRegexp", regExp);
|
||||||
|
result.add(propertyProperties);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
} else {
|
||||||
|
throw new AuthenticationException("authentication failed");
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new HSAdminException(e);
|
||||||
|
} finally {
|
||||||
|
transaction.close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> add(String runAsUser, String ticket,
|
||||||
|
Map<String, Object> setParams) throws HSAdminException {
|
||||||
|
throw new HSAdminException("read only module");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void delete(String runAsUser, String ticket,
|
||||||
|
Map<String, String> whereParams) throws HSAdminException {
|
||||||
|
throw new HSAdminException("read only module");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<Map<String, Object>> update(String runAsUser, String ticket,
|
||||||
|
Map<String, Object> setParams, Map<String, String> whereParams)
|
||||||
|
throws HSAdminException {
|
||||||
|
throw new HSAdminException("read only module");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -10,3 +10,4 @@ postgresqluser=de.hsadmin.remote.PgsqlUserRemote
|
|||||||
mysqldb=de.hsadmin.remote.MysqlDbRemote
|
mysqldb=de.hsadmin.remote.MysqlDbRemote
|
||||||
postgresqldb=de.hsadmin.remote.PgsqlDbRemote
|
postgresqldb=de.hsadmin.remote.PgsqlDbRemote
|
||||||
moduleprop=de.hsadmin.remote.ModulePropertiesRemote
|
moduleprop=de.hsadmin.remote.ModulePropertiesRemote
|
||||||
|
property=de.hsadmin.remote.PropertyRemote
|
Loading…
Reference in New Issue
Block a user