/* * Tigase Jabber/XMPP Server * Copyright (C) 2004-2012 "Artur Hefczyc" <artur.hefczyc@tigase.org> * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. Look for COPYING file in the top folder. * If not, see http://www.gnu.org/licenses/. * * $Rev$ * Last modified by $Author$ * $Date$ */ package tigase.auth; //~--- JDK imports ------------------------------------------------------------ import java.util.Map; import javax.security.auth.callback.CallbackHandler; import javax.security.sasl.SaslException; import javax.security.sasl.SaslServer; import javax.security.sasl.SaslServerFactory; //~--- classes ---------------------------------------------------------------- /** * Describe class TigaseSaslServerFactory here. * * * Created: Mon Nov 6 09:09:53 2006 * * @author <a href="mailto:artur.hefczyc@tigase.org">Artur Hefczyc</a> * @version $Rev$ */ public class TigaseSaslServerFactory implements SaslServerFactory { /** * Creates a new <code>TigaseSaslServerFactory</code> instance. * */ public TigaseSaslServerFactory() {} //~--- methods -------------------------------------------------------------- // Implementation of javax.security.sasl.SaslServerFactory /** * Describe <code>createSaslServer</code> method here. * * @param mechanism a <code>String</code> value * @param protocol a <code>String</code> value * @param serverName a <code>String</code> value * @param props a <code>Map</code> value * @param callbackHandler a <code>CallbackHandler</code> value * @return a <code>SaslServer</code> value * @exception SaslException if an error occurs */ @Override public SaslServer createSaslServer(final String mechanism, final String protocol, final String serverName, final Map<String, ?> props, final CallbackHandler callbackHandler) throws SaslException { if (mechanism.equals("PLAIN")) { return new SaslPLAIN(props, callbackHandler); } // end of if (mechanism.equals("PLAIN")) if (mechanism.equals("ANONYMOUS")) { return new SaslPLAIN(props, callbackHandler); } // end of if (mechanism.equals("PLAIN")) // if (mechanism.equals("DIGEST-MD5")) { // return new SaslDigestMD5(props, callbackHandler); // } // end of if (mechanism.equals("PLAIN")) throw new SaslException("Mechanism not supported yet."); } //~--- get methods ---------------------------------------------------------- /** * Describe <code>getMechanismNames</code> method here. * * @param map a <code>Map</code> value * @return a <code>String[]</code> value */ @Override public String[] getMechanismNames(final Map map) { return null; } } // TigaseSaslServerFactory //~ Formatted in Sun Code Convention //~ Formatted by Jindent --- http://www.jindent.com