Remove Spring specific code
diff --git a/server/core/src/main/java/org/apache/vysper/spring/AddUserHelper.java b/server/core/src/main/java/org/apache/vysper/spring/AddUserHelper.java
deleted file mode 100644
index 9fec2ef..0000000
--- a/server/core/src/main/java/org/apache/vysper/spring/AddUserHelper.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- *
- */
-package org.apache.vysper.spring;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.apache.commons.lang.RandomStringUtils;
-import org.apache.commons.lang.StringUtils;
-import org.apache.vysper.storage.StorageProviderRegistry;
-import org.apache.vysper.xmpp.addressing.Entity;
-import org.apache.vysper.xmpp.addressing.EntityFormatException;
-import org.apache.vysper.xmpp.addressing.EntityImpl;
-import org.apache.vysper.xmpp.authentication.AccountCreationException;
-import org.apache.vysper.xmpp.authentication.AccountManagement;
-
-/**
- * helper to inject user accounts on spring context creation
- */
-public class AddUserHelper {
-
-    private final Map<String, String> userPasswordMap = new HashMap<String, String>();
-
-    public AddUserHelper(Map<String, String> userPasswordMap) {
-        this.userPasswordMap.putAll(userPasswordMap);
-    }
-
-    public void setStorageProviderRegistry(StorageProviderRegistry storageProviderRegistry)
-            throws AccountCreationException, EntityFormatException {
-        AccountManagement accountManagement = (AccountManagement) storageProviderRegistry
-                .retrieve(AccountManagement.class);
-        if (accountManagement == null)
-            throw new IllegalStateException("no account manager accessible.");
-
-        for (String user : userPasswordMap.keySet()) {
-            Entity entity = EntityImpl.parse(user);
-            if (!accountManagement.verifyAccountExists(entity)) {
-                String password = userPasswordMap.get(user);
-                if (StringUtils.isEmpty(password)) {
-                    password = RandomStringUtils.randomAlphanumeric(8);
-                    System.out.println(user + " user will be added with random password: '" + password + "'");
-                }
-                accountManagement.addUser(entity, password);
-            }
-        }
-    }
-}
diff --git a/server/core/src/main/java/org/apache/vysper/spring/ResourceBasedTLSContextFactory.java b/server/core/src/main/java/org/apache/vysper/spring/ResourceBasedTLSContextFactory.java
deleted file mode 100644
index 5774f01..0000000
--- a/server/core/src/main/java/org/apache/vysper/spring/ResourceBasedTLSContextFactory.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- *
- */
-package org.apache.vysper.spring;
-
-import java.io.IOException;
-import java.io.InputStream;
-
-import org.apache.vysper.xmpp.cryptography.AbstractTLSContextFactory;
-import org.springframework.core.io.Resource;
-
-/**
- * helper factory class to make certificates available to MINA with Spring
- * resource injection.
- *
- * @author The Apache MINA Project (dev@mina.apache.org)
- */
-public class ResourceBasedTLSContextFactory extends AbstractTLSContextFactory {
-
-    private Resource certificateResource = null;
-
-    public ResourceBasedTLSContextFactory(Resource certificateResource) {
-        this.certificateResource = certificateResource;
-    }
-
-    @Override
-    protected InputStream getCertificateInputStream() throws IOException {
-        return certificateResource.getInputStream();
-    }
-}
diff --git a/server/core/src/main/java/org/apache/vysper/spring/ServerMain.java b/server/core/src/main/java/org/apache/vysper/spring/ServerMain.java
deleted file mode 100644
index 62bf67d..0000000
--- a/server/core/src/main/java/org/apache/vysper/spring/ServerMain.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- *
- */
-package org.apache.vysper.spring;
-
-import org.springframework.context.support.ClassPathXmlApplicationContext;
-
-/**
- * starts the server as a standalone application using a Spring configuration
- *
- * @author The Apache MINA Project (dev@mina.apache.org)
- */
-public class ServerMain {
-
-    /**
-     * boots the server as a standalone application according to the spring-config.xml file
-     * found on the classpath
-     * @param args
-     */
-    public static void main(String[] args) {
-
-        new ClassPathXmlApplicationContext("spring-config.xml");
-
-        System.out.println("vysper server is running (using spring framework)...");
-    }
-}
diff --git a/server/core/src/main/java/org/apache/vysper/spring/SpringCompatibleDefaultServerRuntimeContext.java b/server/core/src/main/java/org/apache/vysper/spring/SpringCompatibleDefaultServerRuntimeContext.java
deleted file mode 100644
index 86ddac2..0000000
--- a/server/core/src/main/java/org/apache/vysper/spring/SpringCompatibleDefaultServerRuntimeContext.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- *
- */
-package org.apache.vysper.spring;
-
-import java.util.List;
-
-import org.apache.vysper.xmpp.addressing.Entity;
-import org.apache.vysper.xmpp.delivery.StanzaRelay;
-import org.apache.vysper.xmpp.delivery.failure.DeliveryException;
-import org.apache.vysper.xmpp.delivery.failure.DeliveryFailureStrategy;
-import org.apache.vysper.xmpp.delivery.failure.ServiceNotAvailableException;
-import org.apache.vysper.xmpp.modules.Module;
-import org.apache.vysper.xmpp.protocol.HandlerDictionary;
-import org.apache.vysper.xmpp.protocol.StanzaProcessor;
-import org.apache.vysper.xmpp.server.AlterableComponentRegistry;
-import org.apache.vysper.xmpp.server.DefaultServerRuntimeContext;
-import org.apache.vysper.xmpp.server.ServerFeatures;
-import org.apache.vysper.xmpp.stanza.Stanza;
-import org.apache.vysper.xmpp.state.resourcebinding.ResourceRegistry;
-
-/**
- */
-public class SpringCompatibleDefaultServerRuntimeContext extends DefaultServerRuntimeContext {
-
-    private static class StanzaRelayHull implements StanzaRelay {
-
-        protected StanzaRelay stanzaRelay;
-
-        public void setStanzaRelay(StanzaRelay stanzaRelay) {
-            this.stanzaRelay = stanzaRelay;
-        }
-
-        public void relay(Entity receiver, Stanza stanza, DeliveryFailureStrategy deliveryFailureStrategy)
-                throws DeliveryException {
-            if (!isRelaying()) {
-                throw new ServiceNotAvailableException("relay is not relaying");
-            }
-            stanzaRelay.relay(receiver, stanza, deliveryFailureStrategy);
-        }
-
-        public boolean isRelaying() {
-            return stanzaRelay.isRelaying();
-        }
-
-        public void stop() {
-            stanzaRelay.stop();
-        }
-    }
-
-    public SpringCompatibleDefaultServerRuntimeContext(Entity serverEntity, ServerFeatures serverFeatures,
-            List<HandlerDictionary> dictionaries, ResourceRegistry resourceRegistry,
-            StanzaProcessor stanzaProcessor,
-            AlterableComponentRegistry componentRegistry) {
-        super(serverEntity, new StanzaRelayHull(), stanzaProcessor, componentRegistry, resourceRegistry, serverFeatures, dictionaries);
-    }
-
-    public void setStanzaRelay(StanzaRelay stanzaRelay) {
-        ((StanzaRelayHull) getStanzaRelay()).setStanzaRelay(stanzaRelay);
-    }
-
-    public void setModules(List<Module> modules) {
-        super.addModules(modules);
-    }
-}
diff --git a/server/core/src/main/java/org/apache/vysper/spring/SpringCompatibleXMPPServer.java b/server/core/src/main/java/org/apache/vysper/spring/SpringCompatibleXMPPServer.java
deleted file mode 100644
index a05ed1e..0000000
--- a/server/core/src/main/java/org/apache/vysper/spring/SpringCompatibleXMPPServer.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- *
- */
-package org.apache.vysper.spring;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-import org.apache.vysper.xmpp.modules.Module;
-import org.apache.vysper.xmpp.server.Endpoint;
-import org.apache.vysper.xmpp.server.ServerFeatures;
-import org.apache.vysper.xmpp.server.XMPPServer;
-import org.springframework.core.io.Resource;
-
-/**
- * this class is able to boot a standalone XMPP server in a spring context.
- * See the example spring-context.xml for details
- *
- * @author The Apache MINA Project (dev@mina.apache.org)
- */
-public class SpringCompatibleXMPPServer extends XMPPServer {
-
-    protected final List<Module> listOfModules = new ArrayList<Module>();
-    protected File certificateFile = null;
-    protected String certificatePassword = null;
-    
-    protected boolean enableFederationFeature = false;
-    protected boolean disableFederationServerCertificateChecks = false;
-
-    public SpringCompatibleXMPPServer(String domain) {
-        super(domain);
-    }
-
-    public void setCertificateFile(Resource certificateFile) throws IOException {
-        this.certificateFile = certificateFile.getFile();
-    }
-
-    public void setCertificatePassword(String certificatePassword) {
-        this.certificatePassword = certificatePassword;
-    }
-
-    public void setEndpoints(Collection<Endpoint> endpoints) {
-        for (Endpoint endpoint : endpoints) {
-            addEndpoint(endpoint);
-        }
-    }
-
-    public void setModules(Collection<Module> modules) {
-        listOfModules.addAll(modules);
-    }
-
-    public void setEnableFederationFeature(boolean enableFederationFeature) {
-        this.enableFederationFeature = enableFederationFeature;
-    }
-
-    public void setDisableFederationServerCertificateChecks(boolean disable) {
-        this.disableFederationServerCertificateChecks = disable;
-    }
-
-    @Override
-    protected ServerFeatures createServerFeatures() {
-        final ServerFeatures serverFeatures = super.createServerFeatures();
-        serverFeatures.setRelayingToFederationServers(enableFederationFeature);
-        serverFeatures.setCheckFederationServerCertificates(!disableFederationServerCertificateChecks);
-        return serverFeatures;
-    }
-
-    public void init() throws Exception {
-        setTLSCertificateInfo(certificateFile, certificatePassword);
-        start();
-        if (listOfModules != null) {
-            for (Module module : listOfModules) {
-                addModule(module);
-            }
-        }
-    }
-
-    public void destroy() {
-        stop();
-    }
-}