edu.harvard.i2b2.crc.datavo.CRCJAXBUtil.java Source code

Java tutorial

Introduction

Here is the source code for edu.harvard.i2b2.crc.datavo.CRCJAXBUtil.java

Source

/*
 * Copyright (c) 2006-2007 Massachusetts General Hospital 
 * All rights reserved. This program and the accompanying materials 
 * are made available under the terms of the i2b2 Software License v1.0 
 * which accompanies this distribution. 
 * 
 * Contributors: 
 *     Rajesh Kuttan
 */
package edu.harvard.i2b2.crc.datavo;

import java.util.List;

import org.springframework.beans.factory.BeanFactory;
import edu.harvard.i2b2.common.util.jaxb.JAXBUtil;
import edu.harvard.i2b2.crc.util.QueryProcessorUtil;

/**
 * Factory class to create jaxb context Since jaxb context is tread safe, only
 * one instance is created for this cell. The package used for jaxb context is
 * read from spring config file $Id: CRCJAXBUtil.java,v 1.6 2007/09/11 20:05:40
 * rk903 Exp $
 * 
 * @author rkuttan
 */
public class CRCJAXBUtil {
    private static JAXBUtil jaxbUtil = null;
    private static JAXBUtil queryDefjaxbUtil = null;
    private static JAXBUtil analysisDefjaxbUtil = null;

    //private CRCJAXBUtil() {
    //}

    //@SuppressWarnings("unchecked")
    public static JAXBUtil getJAXBUtil() {
        if (jaxbUtil == null) {
            BeanFactory springBean = QueryProcessorUtil.getInstance().getSpringBeanFactory();
            List jaxbPackageName = (List) springBean.getBean("jaxbPackage");
            String[] jaxbPackageNameArray = (String[]) jaxbPackageName.toArray(new String[] {

            });
            jaxbUtil = new JAXBUtil(jaxbPackageNameArray);
        }

        return jaxbUtil;
    }

    //@SuppressWarnings("unchecked")
    public static JAXBUtil getQueryDefJAXBUtil() {
        if (queryDefjaxbUtil == null) {
            queryDefjaxbUtil = new JAXBUtil(edu.harvard.i2b2.crc.datavo.setfinder.query.QueryDefinitionType.class);
        }
        return queryDefjaxbUtil;
    }

    //@SuppressWarnings("unchecked")
    public static JAXBUtil getAnalysisDefJAXBUtil() {
        if (analysisDefjaxbUtil == null) {
            analysisDefjaxbUtil = new JAXBUtil(
                    edu.harvard.i2b2.crc.datavo.setfinder.query.AnalysisDefinitionRequestType.class);
        }
        return analysisDefjaxbUtil;
    }
}