ChartReportItemQueryImpl.java from BIRT at Krugle
Show ChartReportItemQueryImpl.java syntax highlighted
/***********************************************************************
* Copyright (c) 2005 Actuate Corporation.
* 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:
* Actuate Corporation - initial API and implementation
***********************************************************************/
package org.eclipse.birt.chart.reportitem;
import org.eclipse.birt.chart.exception.ChartException;
import org.eclipse.birt.chart.log.ILogger;
import org.eclipse.birt.chart.log.Logger;
import org.eclipse.birt.chart.model.Chart;
import org.eclipse.birt.chart.reportitem.i18n.Messages;
import org.eclipse.birt.chart.reportitem.plugin.ChartReportItemPlugin;
import org.eclipse.birt.core.exception.BirtException;
import org.eclipse.birt.data.engine.api.IBaseQueryDefinition;
import org.eclipse.birt.report.engine.extension.ReportItemQueryBase;
import org.eclipse.birt.report.model.api.ExtendedItemHandle;
import org.eclipse.birt.report.model.api.extension.ExtendedElementException;
import org.eclipse.birt.report.model.api.extension.IReportItem;
/**
*
*/
public final class ChartReportItemQueryImpl extends ReportItemQueryBase
{
/**
*
*/
private Chart cm = null;
/**
*
*/
private ExtendedItemHandle eih = null;
private static ILogger logger = Logger.getLogger( "org.eclipse.birt.chart.reportitem/trace" ); //$NON-NLS-1$
/**
*
*/
public ChartReportItemQueryImpl( )
{
}
/*
* (non-Javadoc)
*
* @see org.eclipse.birt.report.engine.extension.IReportItemQuery#setModelObject(org.eclipse.birt.report.model.api.ExtendedItemHandle)
*/
public void setModelObject( ExtendedItemHandle eih )
{
IReportItem item;
try
{
item = eih.getReportItem( );
if ( item == null )
{
try
{
eih.loadExtendedElement( );
}
catch ( ExtendedElementException eeex )
{
logger.log( eeex );
}
item = eih.getReportItem( );
if ( item == null )
{
logger.log( ILogger.ERROR,
Messages.getString( "ChartReportItemQueryImpl.log.UnableToLocate" ) ); //$NON-NLS-1$
return;
}
}
}
catch ( ExtendedElementException e )
{
logger.log( ILogger.ERROR,
Messages.getString( "ChartReportItemQueryImpl.log.UnableToLocate" ) ); //$NON-NLS-1$
return;
}
cm = (Chart) ( (ChartReportItemImpl) item ).getProperty( "chart.instance" ); //$NON-NLS-1$
this.eih = eih;
}
/*
* (non-Javadoc)
*
* @see org.eclipse.birt.report.engine.extension.IReportItemQuery#getReportQueries(org.eclipse.birt.data.engine.api.IBaseQueryDefinition)
*/
public IBaseQueryDefinition[] getReportQueries(
IBaseQueryDefinition ibqdParent ) throws BirtException
{
logger.log( ILogger.INFORMATION,
Messages.getString( "ChartReportItemQueryImpl.log.getReportQueries.start" ) ); //$NON-NLS-1$
// BUILD THE QUERY ASSOCIATED WITH THE CHART MODEL
IBaseQueryDefinition ibqd = null;
try
{
ibqd = ( new QueryHelper( ) ).build( eih, ibqdParent, cm );
}
catch ( RuntimeException gex )
{
logger.log( gex );
logger.log( ILogger.INFORMATION,
Messages.getString( "ChartReportItemQueryImpl.log.getReportQueries.exception" ) ); //$NON-NLS-1$
throw new ChartException( ChartReportItemPlugin.ID,
ChartException.GENERATION,
gex );
}
logger.log( ILogger.INFORMATION,
Messages.getString( "ChartReportItemQueryImpl.log.getReportQueries.end" ) ); //$NON-NLS-1$
return new IBaseQueryDefinition[]{
ibqd
};
}
}
See more files for this project here