/*
* Copyright (c) 2015 Eike Stepper (Berlin, Germany) and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Eike Stepper - initial API and implementation
*/
package org.eclipse.emf.cdo.doc.operators;
import org.eclipse.net4j.acceptor.IAcceptor;
import org.eclipse.net4j.http.server.IHTTPAcceptor;
import org.eclipse.net4j.jvm.IJVMAcceptor;
import org.eclipse.net4j.tcp.ITCPAcceptor;
import org.eclipse.net4j.util.security.INegotiator;
/**
* Configuring Acceptors
* <p>
* The acceptors of a CDO Server are configured in the cdo-server.xml file. Here's an example:
* {@link #cdoServerXML() cdo‑server.xml}
* <p>
* The following sections describe the various elements and properties.
* <p>
* <b>Table of Contents</b> {@toc}
*
* @author Eike Stepper
*/
public class Doc02_ConfiguringAcceptors
{
/**
* @snippet xml cdo-server-acceptor.xml
*/
public void cdoServerXML()
{
}
/**
* Element acceptor
* <p>
* Defines an {@link IAcceptor} instance.
* Please refer to the Net4j Signalling Platform documentation for details about acceptors and connectors.
* <p>
* The <code>type</code> attribute corresponds to the type of an acceptor factory that is contributed via the
* <code>org.eclipse.net4j.util.factories</code> extension point with a product group of
* <code>org.eclipse.net4j.acceptors</code>.
* <p>
* The remaining attributes depend on the specified <code>type</code> attribute value.
* The following values are possible with the shipped distribution (subject to user-supplied extension):
* <ul>
* <li> <b>tcp</b>: {@link ITCPAcceptor} for fast, new I/O based socket connections. The following additional attributes are recognized:
* <ul>
* <li> <b>listenAddr</b>: The network address the server socket shall be bound to.
* A value of <code>"0.0.0.0"</code> is the default (whole attribute can be omitted) and
* tells the socket to listen on <b>all</b> available addresses.
* <li> <b>port</b>: The network port the server socket shall be bound to.
* A value of <code>2036</code> is the default (whole attribute can be omitted).
* </ul>
* <li> <b>ssl</b>: Similar to tcp but with transport-level security (TLS).
* <li> <b>jvm</b>: {@link IJVMAcceptor} for JVM internal (non-socket based ) connections.
* <li> <b>http</b>: Experimental {@link IHTTPAcceptor}.
* </ul>
*/
public class Element_acceptor
{
}
/**
* Element negotiator
* <p>
* Defines an {@link INegotiator} instance to be used by the enclosing {@link Element_acceptor acceptor} element.
* Please refer to the Net4j Signalling Platform documentation for details about negotiators and the pluggable security concept
* that can be used for authentication and authorization on the transport-level.
* <p>
* The <code>type</code> attribute corresponds to the type of a negotiator factory that is contributed via the
* <code>org.eclipse.net4j.util.factories</code> extension point with a product group of <code>org.eclipse.net4j.negotiators</code>.
* <p>
* The remaining attributes depend on the specified type attribute value.
* The following values are possible with the shipped distribution (subject to user-supplied extension):
* <ul>
* <li> <b>challenge</b>: Negotiator for simple yet effective and cryptographically secure challenge/response-based negotiations.
* The following additional attributes are recognized:
* <ul>
* <li> <b>description</b>: The absolute path to a file in the local file system that contains
* the credentials of the users in the form <code>user-id: password</code>.
* </ul>
* </ul>
*/
public class Element_negotiator
{
}
}