Report Adapters

To allow easy construction of reports, the InetSoft package includes a number of adapters. The adapters are used to wrap an object so that it conforms to the predefined API. The adapter classes in Style Intelligence play the role of the model in the MVC model, and are called Lenses.

By using an adapter, existing tables in an application can be added to a report without having to recreate the table in the report. The adapter extracts table information, including table contents and attributes and passes that to the report.

The InetSoft package includes built-in adapters for the JFC Swing JTable, Tea Set grids and contributed adapters for KLG table and Protoview table. The collection of adapters will grow in later versions to support direct printing of other third party components.

Report Table Decorator

The decorator design pattern is a powerful way to add or modify the attributes of an object. The InetSoft package uses a slightly modified version of the decorator pattern to provide pre-defined table styles. A table style defines the look-and-feel attributes of a table, including color, border, font, etc. A style decorator modifies the attributes of a table to make the printing conform to the style defined in the decorator.

Style Report provides over 80 built-in styles, and you are free to define new styles as desired.

Factory Design Patterns

The factory design pattern is used by InetSoft to provide platform and JDK version independent ways to create certain types of objects. A factory method always returns a common base class or interface and hides the actual type of the object from the user. This allows a different implementation of the same API to be selected at runtime according to the runtime environment.

Programs should use a factory method whenever possible instead of creating directly from a concrete class. The latter ties the program to a particular platform and configuration.

Builder Design Patterns

The builder design pattern is used in Style Intelligence for importing and exporting reports to and from external formats. The builder interface provides a uniform API to handle multiple external formats.

Singleton Report Object

A singleton is a type of object that always has one instance in every Java virtual machine. Users of the object share the same instance across a single process. The singleton object is normally created lazily, i.e. the object is only created when it is needed. Subsequent references to the singleton reuse the already created object.

The XSessionManager, which provides the query execution engine, is a singleton object. Each application only needs to create one query engine. This is necessary because creating a query engine is a relatively expensive operation and sharing the engine greatly improves the performance of the application.

More Articles About Report Patterns

Analytic Query Acceleration - Spark is a general purpose computing platform. Although it was designed to handle real-time computing needs, it provides no special treatment for analytic queries. A BI tool could use Spark as-is and get decent performance. But BI queries generated by interactive analysis often have distinct patterns, and it is possible to use this knowledge to further optimize the execution. As a natively integrated tool, Style Intelligence is in a unique position to add special logic to improve performance further. The acceleration is achieved by three methods...

Patient Health Outcomes Metrics - Private responsibility care aims to improve patients' health and well-being above and beyond simple support. Dashboards provide a comprehensive picture of the effects of care interventions by including KPIs pertaining to patient health outcomes. Metrics like vital sign monitoring, medication adherence rates, and disease-specific health improvement indices are essential for assessing how well treatment programs work...

Shrink Management KPIs - Shrink management refers to the strategies and efforts undertaken by retailers to reduce inventory shrinkage, which includes losses due to theft, damage, errors, and other causes. Tracking key performance indicators (KPIs) in a shrink management report helps retailers assess the effectiveness of their loss prevention measures and identify areas for improvement. Here are some common KPIs tracked in a shrink management report...

Tool to Make Candlestick Charts Online for Free - To easily and quickly create Candlestick Charts online for free, create a Free Individual Account on the InetSoft website. You will then be able to upload a text data set, as shown below: choosing dashboard source Once you have done that, you will be able to proceed to the Visualization Recommender, which will get you started creating a dashboard. To start with a Candle chart, though, you can skip the Recommender by pressing the Finish button at the top bar of the Recommender...

What is a Cluster Analysis Dashboard? - A cluster analysis dashboard is a data visualization tool used to analyze and present the results of cluster analysis. Cluster analysis is a statistical technique that groups similar data points or objects into clusters based on their characteristics or similarities. It is commonly used in various fields such as data mining, pattern recognition, customer segmentation, and market research...

Previous: Dashboard Design Patterns