Description:
If the siddhi app description is long with multiple lines in the source view it is rendered as follows
Affected Product Version:
wso2si-tooling1.1.0
Steps to reproduce:
Create the following Siddhi app in source view
@App:name("DataWarehousingWithRealtimeETL")
@App:description("This Siddhi app demonstrates a use case where an online entertainment company handles termination of a user relationship. GDPR requires that companies should not hold onto personal data of users after termination of relationship with user. However, certain critical data needs to be archived for future legal references for several years. This app demonstrates how this can be achieved using change-data-capture, and data cleaning and enrichment as a RealTime ETL Scenario")
@info(name = 'Log Query')
from unregisterUserStream
select *
insert into logStream;
@info(name='Read User Data for Archiving Query')
from unregisterUserStream join UserDataTable
on UserDataTable.user_id == unregisterUserStream.user_id
select UserDataTable.user_id, UserDataTable.reg_date, time:currentTimestamp() as unreg_date, UserDataTable.package
insert into ArchiveTable;
@info(name='Delete User Data Query')
from unregisterUserStream
delete UserDataTable
on UserDataTable.user_id == user_id;
Description: If the siddhi app description is long with multiple lines in the source view it is rendered as follows
Affected Product Version: wso2si-tooling1.1.0
Steps to reproduce:
@App:description("This Siddhi app demonstrates a use case where an online entertainment company handles termination of a user relationship. GDPR requires that companies should not hold onto personal data of users after termination of relationship with user. However, certain critical data needs to be archived for future legal references for several years. This app demonstrates how this can be achieved using change-data-capture, and data cleaning and enrichment as a RealTime ETL Scenario")
@source(type = 'cdc', url = 'jdbc:mysql://localhost:3306/production?useSSL=false', username = 'root', password = '', table.name = 'UnregisteredUserTable', operation = 'insert', @map(type = 'keyvalue')) define stream unregisterUserStream (user_id long, username string, status string);
@Store(type="rdbms", jdbc.url="jdbc:mysql://localhost:3306/production?useSSL=false", username="root", password="", jdbc.driver.name="com.mysql.jdbc.Driver") @PrimaryKey("user_id") define table UserDataTable (user_id long, username string, reg_date string, package string, address string, mobile_number string);
@Store(type="rdbms", jdbc.url="jdbc:mysql://localhost:3306/production?useSSL=false", username="root", password="", jdbc.driver.name="com.mysql.jdbc.Driver") @PrimaryKey("user_id") define table ArchiveTable (user_id long, reg_date string, unreg_date string, package string);
@sink(type = 'log') define stream logStream (user_id long, username string, status string);
@sink(type = 'log') define stream logStream2 (user_id long, reg_date string, unreg_date string, package string);
@info(name = 'Log Query') from unregisterUserStream select * insert into logStream;
@info(name='Read User Data for Archiving Query') from unregisterUserStream join UserDataTable on UserDataTable.user_id == unregisterUserStream.user_id select UserDataTable.user_id, UserDataTable.reg_date, time:currentTimestamp() as unreg_date, UserDataTable.package insert into ArchiveTable;
@info(name='Delete User Data Query') from unregisterUserStream delete UserDataTable on UserDataTable.user_id == user_id;