Package org.apache.jackrabbit.webdav.simple

Source Code of org.apache.jackrabbit.webdav.simple.ResourceConfigTest

/*
* 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.jackrabbit.webdav.simple;

import junit.framework.TestCase;
import org.apache.jackrabbit.server.io.DefaultHandler;
import org.apache.jackrabbit.server.io.IOHandler;
import org.apache.jackrabbit.server.io.IOManager;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.ByteArrayInputStream;
import java.io.InputStream;

/**
* <code>ResourceConfigTest</code>...
*/
public class ResourceConfigTest extends TestCase {

    /**
     * logger instance
     */
    private static final Logger log = LoggerFactory.getLogger(ResourceConfigTest.class);

    public void testIOManagerConfig() throws Exception {
        InputStream in = new ByteArrayInputStream(CONFIG_1.getBytes("UTF-8"));

        ResourceConfig config = new ResourceConfig(null);
        config.parse(in);

        IOManager ioMgr = config.getIOManager();
        assertNotNull(ioMgr);
        assertEquals("org.apache.jackrabbit.server.io.IOManagerImpl", ioMgr.getClass().getName());

        IOHandler[] handlers = ioMgr.getIOHandlers();
        assertNotNull(handlers);
        assertEquals(1, handlers.length);
        assertEquals("org.apache.jackrabbit.server.io.DefaultHandler", handlers[0].getName());
    }

    public void testIOManagerConfigWithParam() throws Exception {
        InputStream in = new ByteArrayInputStream(CONFIG_2.getBytes("UTF-8"));

        ResourceConfig config = new ResourceConfig(null);
        config.parse(in);

        IOManager ioMgr = config.getIOManager();
        assertNotNull(ioMgr);
        assertEquals("org.apache.jackrabbit.server.io.IOManagerImpl", ioMgr.getClass().getName());

        IOHandler[] handlers = ioMgr.getIOHandlers();
        assertNotNull(handlers);
        assertEquals(1, handlers.length);
        assertEquals("org.apache.jackrabbit.server.io.DefaultHandler", handlers[0].getName());
        DefaultHandler dh = (DefaultHandler) handlers[0];
        assertEquals("nt:unstructured", dh.getCollectionNodeType());
        assertEquals("nt:unstructured", dh.getNodeType());
        assertEquals("nt:resource", dh.getContentNodeType());
    }


    private static final String CONFIG_1 = "<config>\n" +
            "    <!--\n" +
            "     Defines the IOManager implementation that is responsible for passing\n" +
            "     import/export request to the individual IO-handlers.\n" +
            "    -->\n" +
            "    <iomanager>\n" +
            "        <!-- class element defines the manager to be used. The specified class\n" +
            "             must implement the IOManager interface.\n" +
            "             Note, that the handlers are being added and called in the order\n" +
            "             they appear in the configuration.\n" +
            "        -->\n" +
            "        <class name=\"org.apache.jackrabbit.server.io.IOManagerImpl\" />\n" +
            "        <iohandler>\n" +
            "            <class name=\"org.apache.jackrabbit.server.io.DefaultHandler\" />\n" +
            "        </iohandler>\n" +
            "    </iomanager>" +
            "</config>";

    private static final String CONFIG_2 = "<config>\n" +
            "    <!--\n" +
            "     Defines the IOManager implementation that is responsible for passing\n" +
            "     import/export request to the individual IO-handlers.\n" +
            "    -->\n" +
            "    <iomanager>\n" +
            "        <!-- class element defines the manager to be used. The specified class\n" +
            "             must implement the IOManager interface.\n" +
            "             Note, that the handlers are being added and called in the order\n" +
            "             they appear in the configuration.\n" +
            "        -->\n" +
            "        <class name=\"org.apache.jackrabbit.server.io.IOManagerImpl\" />\n" +
            "        <iohandler>\n" +
            "            <class name=\"org.apache.jackrabbit.server.io.DefaultHandler\" />\n" +
            "            <param name=\"collectionNodetype\" value=\"nt:unstructured\"/>\n" +
            "            <param name=\"defaultNodetype\" value=\"nt:unstructured\"/>\n" +
            "            <param name=\"contentNodetype\" value=\"nt:resource\"/>\n" +        
            "        </iohandler>\n" +
            "    </iomanager>" +
            "</config>";
}
TOP

Related Classes of org.apache.jackrabbit.webdav.simple.ResourceConfigTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.