Class PluginDataSource

  • All Implemented Interfaces:
    net.sf.jasperreports.engine.JRDataSource, sailpoint.reporting.datasource.JavaDataSource, sailpoint.reporting.datasource.LiveReportDataSource, sailpoint.reporting.datasource.TopLevelDataSource

    public class PluginDataSource
    extends AbstractJavaDataSource
    A data source that delegates to a ‘real’ data source loaded from a plugin.

    IIQ does not allow report data sources to be loaded from plugins by default.

    Your report would designate this class as its implementation. Then, specify the real data source class name in the TaskDefinition’s attributes as ‘pluginName’ and ‘pluginClass’. All other options will be delegated to your plugin class.

    • Method Detail

      • close

        public void close()
        Specified by:
        close in interface sailpoint.reporting.datasource.TopLevelDataSource
        Overrides:
        close in class AbstractJavaDataSource
      • getFieldValue

        public Object getFieldValue​(net.sf.jasperreports.engine.JRField jrField)
                             throws net.sf.jasperreports.engine.JRException
        Specified by:
        getFieldValue in interface net.sf.jasperreports.engine.JRDataSource
        Overrides:
        getFieldValue in class AbstractJavaDataSource
        Throws:
        net.sf.jasperreports.engine.JRException
      • getFieldValue

        public Object getFieldValue​(String s)
                             throws sailpoint.tools.GeneralException
        Throws:
        sailpoint.tools.GeneralException
      • getSizeEstimate

        public int getSizeEstimate()
                            throws sailpoint.tools.GeneralException
        Specified by:
        getSizeEstimate in interface sailpoint.reporting.datasource.LiveReportDataSource
        Overrides:
        getSizeEstimate in class AbstractJavaDataSource
        Throws:
        sailpoint.tools.GeneralException
      • initialize

        public void initialize​(sailpoint.api.SailPointContext sailPointContext,
                               sailpoint.object.LiveReport liveReport,
                               sailpoint.object.Attributes<String,​Object> attributes,
                               String s,
                               List<sailpoint.object.Sort> list)
                        throws sailpoint.tools.GeneralException
        Initializes the report by loading the real data source specified, then delegating immediately to that data source.

        Specified by:
        initialize in interface sailpoint.reporting.datasource.JavaDataSource
        Overrides:
        initialize in class AbstractJavaDataSource
        Throws:
        sailpoint.tools.GeneralException
      • next

        public boolean next()
                     throws net.sf.jasperreports.engine.JRException
        Throws:
        net.sf.jasperreports.engine.JRException
      • setLimit

        public void setLimit​(int i,
                             int i1)
        Specified by:
        setLimit in interface sailpoint.reporting.datasource.JavaDataSource
        Overrides:
        setLimit in class AbstractJavaDataSource
      • setMonitor

        public void setMonitor​(sailpoint.task.Monitor monitor)
        Specified by:
        setMonitor in interface sailpoint.reporting.datasource.TopLevelDataSource
        Overrides:
        setMonitor in class AbstractJavaDataSource