From 7be61f856c8ea466b2c70cccdcd49768a554b737 Mon Sep 17 00:00:00 2001
From: Purodha Blissenbach <purodha.blissenbach@hostsharing.net>
Date: Fri, 21 Sep 2012 14:30:03 +0200
Subject: [PATCH] Default domain options for newly created domain - greylisting on, anything else not set.

---
 hsarback/src/de/hsadmin/mods/dom/DomainModuleImpl.java |    8 ++++++++
 hsarback/test/de/hsadmin/remote/DomainTest.java        |    5 ++++-
 2 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/hsarback/src/de/hsadmin/mods/dom/DomainModuleImpl.java b/hsarback/src/de/hsadmin/mods/dom/DomainModuleImpl.java
index 2e7038d..e075d94 100644
--- a/hsarback/src/de/hsadmin/mods/dom/DomainModuleImpl.java
+++ b/hsarback/src/de/hsadmin/mods/dom/DomainModuleImpl.java
@@ -1,6 +1,7 @@
 package de.hsadmin.mods.dom;
 
 import java.util.Date;
+import java.util.HashSet;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Set;
@@ -90,6 +91,13 @@
 		if (admin == null || admin.getName() == null || admin.getName().length() == 0) {
 			throw new HSAdminException("domain admin required");
 		}
+		// Standard domainoptions setzen. TODO: Alle defaults über eigene Klasse aus der Datenbank holen. 
+		HashSet<DomainOption> domainOptions = new HashSet<DomainOption>();
+		DomainOption domainOption = new DomainOption();
+		domainOption.setName("greylisting");
+		domainOptions.add(domainOption);
+		dom.setDomainoptions(domainOptions);
+		
 		EntityManager em = getTransaction().getEntityManager();
 
 		UnixUser loginUser = getTransaction().getLoginUser();
diff --git a/hsarback/test/de/hsadmin/remote/DomainTest.java b/hsarback/test/de/hsadmin/remote/DomainTest.java
index fbd57cb..c7ee4f9 100644
--- a/hsarback/test/de/hsadmin/remote/DomainTest.java
+++ b/hsarback/test/de/hsadmin/remote/DomainTest.java
@@ -88,7 +88,7 @@
 	}
 
 	@Test
-	public void testCreate() {
+	public void testCreate() throws UnknownHostException, IOException {
 		int count = getDomsCount();
 		String user = "aaa00";
 		String grantingTicketURL = cas.getGrantingTicketURL(user);
@@ -105,6 +105,9 @@
 			fail(e.getMessage());
 		}
 		assertEquals(count + 1, getDomsCount());
+		// TODO die beiden folgenden Tests sind etwas spezifisch für Version 2.2
+		assertEquals("eine neue Domain sollte nur die Domainoption 'greylisting' haben.",1,getDomOptionsCount());
+		testGreylistingOnOff(true, "sollte bei neuer Domain eingeschaltet sein");
 	}
 
 	@Test

--
Gitblit v1.9.0-SNAPSHOT