net.sourceforge.msscodefactory.cfasterisk.v2_4.CFAsteriskSaxLoader.CFAsteriskSaxLoaderClusterHandler.java Source code

Java tutorial

Introduction

Here is the source code for net.sourceforge.msscodefactory.cfasterisk.v2_4.CFAsteriskSaxLoader.CFAsteriskSaxLoaderClusterHandler.java

Source

// Description: Java 8 XML SAX Element Handler for Cluster

/*
 *   Code Factory Asterisk 11 Configuration Model
 *
 *   Copyright (c) 2014-2015 Mark Sobkow
 *   
 *   Licensed 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 net.sourceforge.msscodefactory.cfasterisk.v2_4.CFAsteriskSaxLoader;

import java.math.*;
import java.sql.*;
import java.text.*;
import java.util.*;
import org.apache.commons.codec.binary.Base64;
import org.xml.sax.*;
import net.sourceforge.msscodefactory.cflib.v2_3.CFLib.*;
import net.sourceforge.msscodefactory.cfsecurity.v2_4.CFSecurity.*;
import net.sourceforge.msscodefactory.cfinternet.v2_4.CFInternet.*;
import net.sourceforge.msscodefactory.cfasterisk.v2_4.CFAsterisk.*;
import net.sourceforge.msscodefactory.cfsecurity.v2_4.CFSecurityObj.*;
import net.sourceforge.msscodefactory.cfinternet.v2_4.CFInternetObj.*;
import net.sourceforge.msscodefactory.cfasterisk.v2_4.CFAsteriskObj.*;

/*
 *   CFAsteriskSaxLoaderClusterParse XML SAX Element Handler implementation
 *   for Cluster.
 */
public class CFAsteriskSaxLoaderClusterHandler extends CFLibXmlCoreElementHandler {
    public CFAsteriskSaxLoaderClusterHandler(CFAsteriskSaxLoader saxLoader) {
        super(saxLoader);
    }

    public void startElement(String uri, String localName, String qName, Attributes attrs) throws SAXException {
        try {
            final String S_ProcName = "startElement";
            assert qName.equals("Cluster");

            CFAsteriskSaxLoader saxLoader = (CFAsteriskSaxLoader) getParser();
            if (saxLoader == null) {
                throw CFLib.getDefaultExceptionFactory().newNullArgumentException(getClass(), S_ProcName, 0,
                        "getParser()");
            }

            ICFAsteriskSchemaObj schemaObj = saxLoader.getSchemaObj();
            if (schemaObj == null) {
                throw CFLib.getDefaultExceptionFactory().newNullArgumentException(getClass(), S_ProcName, 0,
                        "getParser().getSchemaObj()");
            }

            CFLibXmlCoreContext curContext = getParser().getCurContext();

            ICFSecurityClusterObj useCluster = saxLoader.getUseCluster();
            if (useCluster == null) {
                throw CFLib.getDefaultExceptionFactory().newNullArgumentException(getClass(), S_ProcName, 0,
                        "saxLoader.useCluster");
            }

            curContext.putNamedValue("Object", useCluster);
        } catch (RuntimeException e) {
            throw new RuntimeException("Near " + getParser().getLocationInfo() + ": Caught and rethrew "
                    + e.getClass().getName() + " - " + e.getMessage(), e);
        } catch (Error e) {
            throw new Error("Near " + getParser().getLocationInfo() + ": Caught and rethrew "
                    + e.getClass().getName() + " - " + e.getMessage(), e);
        }
    }

    public void endElement(String uri, String localName, String qName) throws SAXException {
    }
}