/*
* This program is free software; you can redistribute it and/or modify it under the
* terms of the GNU Lesser General Public License, version 2.1 as published by the Free Software
* Foundation.
*
* You should have received a copy of the GNU Lesser General Public License along with this
* program; if not, you can obtain a copy at http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html
* or from the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* 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 Lesser General Public License for more details.
*
* Copyright (c) 2001 - 2016 Object Refinery Ltd, Pentaho Corporation and Contributors.. All rights reserved.
*/
package org.pentaho.reporting.engine.classic.core.modules.parser.bundle;
import org.pentaho.reporting.engine.classic.core.AttributeNames;
import org.pentaho.reporting.engine.classic.core.filter.types.ContentFieldType;
import org.pentaho.reporting.engine.classic.core.filter.types.ContentType;
import org.pentaho.reporting.engine.classic.core.filter.types.CrosstabElementType;
import org.pentaho.reporting.engine.classic.core.filter.types.DateFieldType;
import org.pentaho.reporting.engine.classic.core.filter.types.EllipseType;
import org.pentaho.reporting.engine.classic.core.filter.types.ExternalElementType;
import org.pentaho.reporting.engine.classic.core.filter.types.HorizontalLineType;
import org.pentaho.reporting.engine.classic.core.filter.types.LabelType;
import org.pentaho.reporting.engine.classic.core.filter.types.LegacyType;
import org.pentaho.reporting.engine.classic.core.filter.types.MessageType;
import org.pentaho.reporting.engine.classic.core.filter.types.NumberFieldType;
import org.pentaho.reporting.engine.classic.core.filter.types.RectangleType;
import org.pentaho.reporting.engine.classic.core.filter.types.ResourceFieldType;
import org.pentaho.reporting.engine.classic.core.filter.types.ResourceLabelType;
import org.pentaho.reporting.engine.classic.core.filter.types.ResourceMessageType;
import org.pentaho.reporting.engine.classic.core.filter.types.TextFieldType;
import org.pentaho.reporting.engine.classic.core.filter.types.VerticalLineType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.BandType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.CrosstabCellBodyType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.CrosstabCellType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.CrosstabColumnGroupBodyType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.CrosstabColumnGroupType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.CrosstabGroupType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.CrosstabHeaderType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.CrosstabOtherGroupBodyType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.CrosstabOtherGroupType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.CrosstabRowGroupBodyType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.CrosstabRowGroupType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.CrosstabSummaryHeaderType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.CrosstabTitleHeaderType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.DetailsFooterType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.DetailsHeaderType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.GroupDataBodyType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.GroupFooterType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.GroupHeaderType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.ItemBandType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.NoDataBandType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.PageFooterType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.PageHeaderType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.RelationalGroupType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.ReportFooterType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.ReportHeaderType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.SubGroupBodyType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.SubReportType;
import org.pentaho.reporting.engine.classic.core.filter.types.bands.WatermarkType;
import org.pentaho.reporting.engine.classic.core.modules.parser.base.CrosstabXmlResourceFactory;
import org.pentaho.reporting.engine.classic.core.modules.parser.base.MasterReportXmlResourceFactory;
import org.pentaho.reporting.engine.classic.core.modules.parser.base.SubReportXmlResourceFactory;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.data.DataDefinitionXmlFactoryModule;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.data.DataDefinitionXmlResourceFactory;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.data.SubReportDataDefinitionXmlFactoryModule;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.data.SubReportDataDefinitionXmlResourceFactory;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.BandStyleReadHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.BorderStyleReadHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.CommonStyleReadHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.ContentStyleReadHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.ElementStyleDefinitionXmlFactoryModule;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.ElementStyleDefinitionXmlResourceFactory;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.LayoutDefinitionXmlFactoryModule;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.PageBandStyleReadHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.RotationStyleReadHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.SpatialStyleReadHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.StyleDefinitionXmlFactoryModule;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.SubReportReadHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.TextStyleReadHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.elements.BandReadHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.elements.CrosstabElementReadHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.layout.elements.LegacyElementReadHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.settings.BundleSettingsXmlFactoryModule;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.settings.BundleSettingsXmlResourceFactory;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.BundleMetaFileWriter;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.BundleWriterHandlerRegistry;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.ContentFileWriter;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.DataDefinitionFileWriter;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.DataSchemaWriter;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.LayoutFileWriter;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.ResourceWriter;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.SettingsFileWriter;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.StyleFileWriter;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.CrosstabColumnGroupElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.CrosstabElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.CrosstabOtherGroupElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.CrosstabRowGroupElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.DataGroupBodyElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.GroupFooterElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.GroupHeaderElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.ItembandElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.LegacyElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.NoDataBandElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.RelationalGroupElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.ReportFooterElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.ReportHeaderElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.SubGroupBodyElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.elements.SubreportElementWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.styles.BandStyleSetWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.styles.BorderStyleSetWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.styles.CommonStyleSetWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.styles.ContentStyleSetWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.styles.PageBandStyleSetWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.styles.RotationStyleSetWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.styles.SpatialStyleSetWriteHandler;
import org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.styles.TextStyleSetWriteHandler;
import org.pentaho.reporting.libraries.base.boot.AbstractModule;
import org.pentaho.reporting.libraries.base.boot.ModuleInitializeException;
import org.pentaho.reporting.libraries.base.boot.SubSystem;
public class BundleXmlModule extends AbstractModule {
public static final String TAG_DEF_PREFIX = "org.pentaho.reporting.engine.classic.core.modules.parser.bundle.writer.";
public BundleXmlModule() throws ModuleInitializeException {
loadModuleInfo();
}
/**
* Initializes the module. Use this method to perform all initial setup operations. This method is called only once in
* a modules lifetime. If the initializing cannot be completed, throw a ModuleInitializeException to indicate the
* error,. The module will not be available to the system.
*
* @param subSystem
* the subSystem.
* @throws ModuleInitializeException
* if an error ocurred while initializing the module.
*/
public void initialize( final SubSystem subSystem ) throws ModuleInitializeException {
ElementStyleDefinitionXmlResourceFactory.register( ElementStyleDefinitionXmlFactoryModule.class );
BundleSettingsXmlResourceFactory.register( BundleSettingsXmlFactoryModule.class );
DataDefinitionXmlResourceFactory.register( DataDefinitionXmlFactoryModule.class );
SubReportDataDefinitionXmlResourceFactory.register( SubReportDataDefinitionXmlFactoryModule.class );
SubReportXmlResourceFactory.register( StyleDefinitionXmlFactoryModule.class );
SubReportXmlResourceFactory.register( LayoutDefinitionXmlFactoryModule.class );
SubReportXmlResourceFactory.register( BundleSubReportXmlFactoryModule.class );
MasterReportXmlResourceFactory.register( StyleDefinitionXmlFactoryModule.class );
MasterReportXmlResourceFactory.register( LayoutDefinitionXmlFactoryModule.class );
MasterReportXmlResourceFactory.register( BundleReportXmlFactoryModule.class );
BundleStyleRegistry.getInstance().register( BandStyleSetWriteHandler.class );
BundleStyleRegistry.getInstance().register( BorderStyleSetWriteHandler.class );
BundleStyleRegistry.getInstance().register( CommonStyleSetWriteHandler.class );
BundleStyleRegistry.getInstance().register( ContentStyleSetWriteHandler.class );
BundleStyleRegistry.getInstance().register( PageBandStyleSetWriteHandler.class );
BundleStyleRegistry.getInstance().register( SpatialStyleSetWriteHandler.class );
BundleStyleRegistry.getInstance().register( TextStyleSetWriteHandler.class );
BundleStyleRegistry.getInstance().register( RotationStyleSetWriteHandler.class );
BundleStyleRegistry.getInstance().register( BundleNamespaces.STYLE, "band-styles", BandStyleReadHandler.class );
BundleStyleRegistry.getInstance().register( BundleNamespaces.STYLE, "text-styles", TextStyleReadHandler.class );
BundleStyleRegistry.getInstance().register( BundleNamespaces.STYLE, "rotation-styles", RotationStyleReadHandler.class );
BundleStyleRegistry.getInstance()
.register( BundleNamespaces.STYLE, "spatial-styles", SpatialStyleReadHandler.class );
BundleStyleRegistry.getInstance().register( BundleNamespaces.STYLE, "common-styles", CommonStyleReadHandler.class );
BundleStyleRegistry.getInstance()
.register( BundleNamespaces.STYLE, "content-styles", ContentStyleReadHandler.class );
BundleStyleRegistry.getInstance().register( BundleNamespaces.STYLE, "page-band-styles",
PageBandStyleReadHandler.class );
BundleStyleRegistry.getInstance().register( BundleNamespaces.STYLE, "border-styles", BorderStyleReadHandler.class );
BundleElementRegistry.getInstance().registerGenericElement( ContentFieldType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( ContentType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( DateFieldType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( EllipseType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( ExternalElementType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( HorizontalLineType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( LabelType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( MessageType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( NumberFieldType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( RectangleType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( ResourceFieldType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( ResourceLabelType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( ResourceMessageType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( TextFieldType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericElement( VerticalLineType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( BandType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( PageFooterType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( PageHeaderType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( WatermarkType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( DetailsHeaderType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( DetailsFooterType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( CrosstabOtherGroupBodyType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( CrosstabRowGroupBodyType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( CrosstabColumnGroupBodyType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( CrosstabTitleHeaderType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( CrosstabSummaryHeaderType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( CrosstabHeaderType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( CrosstabCellType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( CrosstabCellBodyType.INSTANCE );
BundleElementRegistry.getInstance().registerGenericWriter( CrosstabGroupType.INSTANCE );
BundleElementRegistry.getInstance().register( GroupDataBodyType.INSTANCE, DataGroupBodyElementWriteHandler.class );
BundleElementRegistry.getInstance().register( SubGroupBodyType.INSTANCE, SubGroupBodyElementWriteHandler.class );
BundleElementRegistry.getInstance().register( GroupFooterType.INSTANCE, GroupFooterElementWriteHandler.class );
BundleElementRegistry.getInstance().register( GroupHeaderType.INSTANCE, GroupHeaderElementWriteHandler.class );
BundleElementRegistry.getInstance().register( ItemBandType.INSTANCE, ItembandElementWriteHandler.class );
BundleElementRegistry.getInstance().register( LegacyType.INSTANCE, LegacyElementWriteHandler.class );
BundleElementRegistry.getInstance().register( NoDataBandType.INSTANCE, NoDataBandElementWriteHandler.class );
BundleElementRegistry.getInstance().register( RelationalGroupType.INSTANCE,
RelationalGroupElementWriteHandler.class );
BundleElementRegistry.getInstance().register( ReportFooterType.INSTANCE, ReportFooterElementWriteHandler.class );
BundleElementRegistry.getInstance().register( ReportHeaderType.INSTANCE, ReportHeaderElementWriteHandler.class );
BundleElementRegistry.getInstance().register( RelationalGroupType.INSTANCE,
RelationalGroupElementWriteHandler.class );
BundleElementRegistry.getInstance().register( CrosstabOtherGroupType.INSTANCE,
CrosstabOtherGroupElementWriteHandler.class );
BundleElementRegistry.getInstance().register( CrosstabRowGroupType.INSTANCE,
CrosstabRowGroupElementWriteHandler.class );
BundleElementRegistry.getInstance().register( CrosstabColumnGroupType.INSTANCE,
CrosstabColumnGroupElementWriteHandler.class );
BundleElementRegistry.getInstance().register( SubReportType.INSTANCE, SubreportElementWriteHandler.class );
BundleElementRegistry.getInstance().register( CrosstabElementType.INSTANCE, CrosstabElementWriteHandler.class );
BundleElementRegistry.getInstance().registerReader( BandType.INSTANCE, BandReadHandler.class );
BundleElementRegistry.getInstance().registerReader( LegacyType.INSTANCE, LegacyElementReadHandler.class );
BundleElementRegistry.getInstance().registerReader( SubReportType.INSTANCE, SubReportReadHandler.class );
BundleElementRegistry.getInstance().registerReader( CrosstabElementType.INSTANCE, CrosstabElementReadHandler.class );
BundleWriterHandlerRegistry.getInstance().registerMasterReportHandler( ContentFileWriter.class );
BundleWriterHandlerRegistry.getInstance().registerMasterReportHandler( BundleMetaFileWriter.class );
BundleWriterHandlerRegistry.getInstance().registerMasterReportHandler( DataSchemaWriter.class );
BundleWriterHandlerRegistry.getInstance().registerMasterReportHandler( DataDefinitionFileWriter.class );
BundleWriterHandlerRegistry.getInstance().registerMasterReportHandler( SettingsFileWriter.class );
BundleWriterHandlerRegistry.getInstance().registerMasterReportHandler( StyleFileWriter.class );
BundleWriterHandlerRegistry.getInstance().registerMasterReportHandler( LayoutFileWriter.class );
BundleWriterHandlerRegistry.getInstance().registerMasterReportHandler( ResourceWriter.class );
BundleWriterHandlerRegistry.getInstance().registerSubReportHandler( DataDefinitionFileWriter.class );
BundleWriterHandlerRegistry.getInstance().registerSubReportHandler( ContentFileWriter.class );
BundleWriterHandlerRegistry.getInstance().registerSubReportHandler( StyleFileWriter.class );
BundleWriterHandlerRegistry.getInstance().registerSubReportHandler( LayoutFileWriter.class );
BundleWriterHandlerRegistry.getInstance().setNamespaceHasCData( BundleNamespaces.CONTENT, false );
BundleWriterHandlerRegistry.getInstance().setNamespaceHasCData( BundleNamespaces.DATADEFINITION, false );
BundleWriterHandlerRegistry.getInstance().setNamespaceHasCData( BundleNamespaces.DATASCHEMA, false );
BundleWriterHandlerRegistry.getInstance().setNamespaceHasCData( BundleNamespaces.LEGACY, false );
BundleWriterHandlerRegistry.getInstance().setNamespaceHasCData( BundleNamespaces.LAYOUT, false );
BundleWriterHandlerRegistry.getInstance().setNamespaceHasCData( BundleNamespaces.SETTINGS, true );
BundleWriterHandlerRegistry.getInstance().setNamespaceHasCData( BundleNamespaces.STYLE, false );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( AttributeNames.Core.VALUE, "value", true );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( BundleNamespaces.DATADEFINITION, "attribute", true );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( BundleNamespaces.DATADEFINITION, "property", true );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( BundleNamespaces.LEGACY, "basic-key", true );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( BundleNamespaces.LEGACY, "basic-object", true );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( BundleNamespaces.LEGACY, "field", true );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( BundleNamespaces.LEGACY, "property", true );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( BundleNamespaces.LEGACY, "property-ref", true );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( BundleNamespaces.LAYOUT, "attribute", true );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( BundleNamespaces.LAYOUT, "field", true );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( BundleNamespaces.LAYOUT, "property", true );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( BundleNamespaces.SETTINGS, "property", true );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( BundleNamespaces.SETTINGS, "settings", false );
BundleWriterHandlerRegistry.getInstance().setElementHasCData( BundleNamespaces.STYLE, "selector", true );
CrosstabXmlResourceFactory.register( BundleCrosstabXmlFactoryModule.class );
CrosstabXmlResourceFactory.register( LayoutDefinitionXmlFactoryModule.class );
CrosstabXmlResourceFactory.register( StyleDefinitionXmlFactoryModule.class );
}
}