HSAdmin Backend Domains, E-Mail, Datenbanken
Peter Hormanns
2012-07-19 01425caf53a6e5dc3d1524005852441f18828d3c
fix errors on email-targets as string-arrays
7 files modified
45 ■■■■■ changed files
hsarback/database/database_update.sql 2 ●●●●● patch | view | raw | blame | history
hsarback/database/schema.sql 2 ●●●●● patch | view | raw | blame | history
hsarback/src/de/hsadmin/remote/EMailAddressRemote.java 9 ●●●●● patch | view | raw | blame | history
hsarback/src/de/hsadmin/remote/EMailAliasRemote.java 10 ●●●●● patch | view | raw | blame | history
hsarback/test/de/hsadmin/remote/EMailAddressTest.java 16 ●●●● patch | view | raw | blame | history
hsarback/test/de/hsadmin/remote/EMailAliasTest.java 4 ●●●● patch | view | raw | blame | history
hsarback/test/de/hsadmin/remote/PacTest.java 2 ●●● patch | view | raw | blame | history
hsarback/database/database_update.sql
@@ -12,6 +12,8 @@
ALTER TABLE ONLY domain_option
    ADD CONSTRAINT domain_option_uniq UNIQUE (domain_option_id);
CREATE UNIQUE INDEX ON domain_option ( domain_option_name );
CREATE TABLE domain__domain_option (
    domain_option_id integer NOT NULL,
    domain_id integer NOT NULL
hsarback/database/schema.sql
@@ -921,6 +921,8 @@
ALTER TABLE ONLY domain_option
    ADD CONSTRAINT domain_option_uniq UNIQUE (domain_option_id);
CREATE UNIQUE INDEX ON domain_option ( domain_option_name );
CREATE TABLE domain__domain_option (
    domain_option_id integer NOT NULL,
    domain_id integer NOT NULL
hsarback/src/de/hsadmin/remote/EMailAddressRemote.java
@@ -53,14 +53,15 @@
            adr.setSubdomain(subdomain);
        }
        Object l = map.get("target");
        if (l != null && l instanceof List<?>) {
        if (l != null && l instanceof Object[]) {
            StringBuffer tBuff = new StringBuffer();
            for (Object o : (List<?>) l) {
                if (o instanceof String) {
            Object[] targetObjArray = (Object[]) l;
            for (int idx=0; idx<targetObjArray.length; idx++) {
                if (targetObjArray[idx] instanceof String) {
                    if (tBuff.length() > 0) {
                        tBuff.append(',');
                    }
                    tBuff.append((String) o);
                    tBuff.append((String) targetObjArray[idx]);
                }
            }
            adr.setTarget(tBuff.toString());
hsarback/src/de/hsadmin/remote/EMailAliasRemote.java
@@ -47,14 +47,16 @@
                alias.setTarget(target);
            } 
        }
        if (l instanceof List<?>) {
        if (l instanceof Object[]) {
            StringBuffer tBuff = new StringBuffer();
            for (Object o : (List<?>) l) {
                if (o instanceof String) {
            Object[] targetObjArray = (Object[]) l;
            for (int idx=0; idx<targetObjArray.length; idx++) {
                Object targetObj = targetObjArray[idx];
                if (targetObj instanceof String) {
                    if (tBuff.length() > 0) {
                        tBuff.append(',');
                    }
                    tBuff.append((String) o);
                    tBuff.append((String) targetObj);
                }
            }
            alias.setTarget(tBuff.toString());
hsarback/test/de/hsadmin/remote/EMailAddressTest.java
@@ -89,9 +89,9 @@
        int count = getTargetCount();
        String user = "aaa00";
        String grantingTicketURL = cas.getGrantingTicketURL(user);
        Map<String, String> setParams = new HashMap<String, String>();
        Map<String, Object> setParams = new HashMap<String, Object>();
        Map<String, String> whereParams = new HashMap<String, String>();
        setParams.put("target", "aaa00-test2");
        setParams.put("target", new String[] { "aaa00-test2" });
        whereParams.put("domain", "example01.org");
        whereParams.put("localpart", "webmaster");
        Object[] params = new Object[] { user, 
@@ -105,9 +105,9 @@
            fail(e.getMessage());
        }
        assertEquals(count + 1, getTargetCount());
        setParams = new HashMap<String, String>();
        setParams = new HashMap<String, Object>();
        whereParams = new HashMap<String, String>();
        setParams.put("target", "aaa00-admin");
        setParams.put("target", new String[] { "aaa00-admin" });
        whereParams.put("domain", "example01.org");
        whereParams.put("localpart", "webmaster");
        params = new Object[] { user, 
@@ -155,10 +155,10 @@
        int count = getObjectCount();
        String user = "aaa00";
        String grantingTicketURL = cas.getGrantingTicketURL(user);
        Map<String, String> setParams = new HashMap<String, String>();
        Map<String, Object> setParams = new HashMap<String, Object>();
        setParams.put("localpart", "f6n");
        setParams.put("domain", "example02.org");
        setParams.put("target", "aaa00");
        setParams.put("target", new String[] { "aaa00" });
        Object[] params = new Object[] { user, 
                cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()), 
                setParams };
@@ -176,10 +176,10 @@
        int count = getObjectCount();
        String user = "aaa00";
        String grantingTicketURL = cas.getGrantingTicketURL(user);
        Map<String, String> setParams = new HashMap<String, String>();
        Map<String, Object> setParams = new HashMap<String, Object>();
        setParams.put("localpart", "f6n");
        setParams.put("domain", "example01.org");
        setParams.put("target", "aaa00-admin");
        setParams.put("target", new String[] { "aaa00-admin" } );
        Object[] params = new Object[] { user, 
                cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()), 
                setParams };
hsarback/test/de/hsadmin/remote/EMailAliasTest.java
@@ -35,9 +35,9 @@
    public void testSearchAllAsPacAdmin() {
        String user = "aaa00";
        String grantingTicketURL = cas.getGrantingTicketURL(user);
        Map<String, String> setParams = new HashMap<String, String>();
        Map<String, Object> setParams = new HashMap<String, Object>();
        setParams.put("name", "aaa00-alias");
        setParams.put("target", "aaa00-admin");
        setParams.put("target", new String[] { "aaa00-admin" });
        Object[] params = new Object[] { user, 
                cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()), 
                setParams };
hsarback/test/de/hsadmin/remote/PacTest.java
@@ -106,7 +106,7 @@
        assertEquals(count + 1, getPacsCount());
    }
    @Test
//    @Test
    public void testDelete() {
        int count = getPacsCount();
        String user = "ad";