Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
readDDLViews(ddlViews: DDL2.IView[]) {
for (const ddlView of ddlViews) {
const element = new Element(this._ec).id(ddlView.id);
this._ec.append(element);
const hipiePipeline = element.hipiePipeline();
this.readDatasourceRef(ddlView.datasource, hipiePipeline.datasource() as DSPicker, this._ec);
for (const activity of ddlView.activities) {
if (DDL2.isProjectActivity(activity)) {
const project = this.readProject(activity);
hipiePipeline.project(project);
}
if (DDL2.isFilterActivity(activity)) {
const filters = this.readFilters(activity, this._ec);
hipiePipeline.filters(filters);
}
if (DDL2.isGroupByActivity(activity)) {
const groupBy = this.readGroupBy(activity);
hipiePipeline.groupBy(groupBy);
}
if (DDL2.isSortActivity(activity)) {
const sort = this.readSort(activity);
hipiePipeline.sort(sort);
}
if (DDL2.isLimitActivity(activity)) {
const limit = this.readLimit(activity);
hipiePipeline.limit(limit);
}
}
readDDLViews(ddlViews: DDL2.IView[]) {
for (const ddlView of ddlViews) {
const element = new Element(this._ec).id(ddlView.id);
this._ec.append(element);
const hipiePipeline = element.hipiePipeline();
this.readDatasourceRef(ddlView.datasource, hipiePipeline.datasource() as DSPicker, this._ec);
for (const activity of ddlView.activities) {
if (DDL2.isProjectActivity(activity)) {
const project = this.readProject(activity);
hipiePipeline.project(project);
}
if (DDL2.isFilterActivity(activity)) {
const filters = this.readFilters(activity, this._ec);
hipiePipeline.filters(filters);
}
if (DDL2.isGroupByActivity(activity)) {
const groupBy = this.readGroupBy(activity);
hipiePipeline.groupBy(groupBy);
}
if (DDL2.isSortActivity(activity)) {
const sort = this.readSort(activity);
hipiePipeline.sort(sort);
}
if (DDL2.isLimitActivity(activity)) {
const limit = this.readLimit(activity);
hipiePipeline.limit(limit);
}
}
this.readVisualization(ddlView.visualization, element.visualization());
}
}
const project = this.readProject(activity);
hipiePipeline.project(project);
}
if (DDL2.isFilterActivity(activity)) {
const filters = this.readFilters(activity, this._ec);
hipiePipeline.filters(filters);
}
if (DDL2.isGroupByActivity(activity)) {
const groupBy = this.readGroupBy(activity);
hipiePipeline.groupBy(groupBy);
}
if (DDL2.isSortActivity(activity)) {
const sort = this.readSort(activity);
hipiePipeline.sort(sort);
}
if (DDL2.isLimitActivity(activity)) {
const limit = this.readLimit(activity);
hipiePipeline.limit(limit);
}
}
this.readVisualization(ddlView.visualization, element.visualization());
}
}
const hipiePipeline = element.hipiePipeline();
this.readDatasourceRef(ddlView.datasource, hipiePipeline.datasource() as DSPicker, this._ec);
for (const activity of ddlView.activities) {
if (DDL2.isProjectActivity(activity)) {
const project = this.readProject(activity);
hipiePipeline.project(project);
}
if (DDL2.isFilterActivity(activity)) {
const filters = this.readFilters(activity, this._ec);
hipiePipeline.filters(filters);
}
if (DDL2.isGroupByActivity(activity)) {
const groupBy = this.readGroupBy(activity);
hipiePipeline.groupBy(groupBy);
}
if (DDL2.isSortActivity(activity)) {
const sort = this.readSort(activity);
hipiePipeline.sort(sort);
}
if (DDL2.isLimitActivity(activity)) {
const limit = this.readLimit(activity);
hipiePipeline.limit(limit);
}
}
this.readVisualization(ddlView.visualization, element.visualization());
}
}
filters: output.filters || this.filters
});
});
if (this.WUID) {
this.comms = new Comms.HIPIEWorkunit()
.url(this.URL)
.proxyMappings(proxyMappings)
.timeout(timeout)
.hipieResults(hipieResults)
;
} else if (this.databomb) {
this.comms = new Comms.HIPIEDatabomb()
.hipieResults(hipieResults)
;
} else if (DDL1.isHipieDatasource(datasource)) {
this.comms = new Comms.HIPIERoxie()
.url(datasource.URL)
.proxyMappings(proxyMappings)
.timeout(timeout)
.hipieResults(hipieResults)
;
}
}
private datasourceRefID(view: DDL2.IView): string {
const datasourceRef = view.datasource;
if (DDL2.isRoxieServiceRef(datasourceRef)) {
return `${this.safeID(datasourceRef.id)}_${this.safeID(datasourceRef.output)}_${this.safeID(view.id)}`;
} else if (DDL2.isWUResultRef(datasourceRef)) {
return `${this.safeID(datasourceRef.id)}_${this.safeID(datasourceRef.output)}`;
}
return `${this.safeID(datasourceRef.id)}`;
}
readDatasourceRef(ddlDSRef: DDL2.IDatasourceRef, dsPicker: DSPicker, elementContainer: ElementContainer): this {
if (DDL2.isRoxieServiceRef(ddlDSRef)) {
dsPicker.datasourceID(`${ddlDSRef.id}_${ddlDSRef.output}`);
const dsRef = dsPicker.datasourceRef() as RoxieResultRef;
dsRef
.request(ddlDSRef.request.map(rf => {
return Param.fromDDL(this._ec, rf);
}))
;
} else if (DDL2.isWUResultRef(ddlDSRef)) {
const wu = this._dsReadDedup[ddlDSRef.id] as WU;
dsPicker.datasourceID(wu.output(ddlDSRef.output).id());
} else {
dsPicker.datasourceID(ddlDSRef.id);
}
return this;
}
private datasourceRefID(view: DDL2.IView): string {
const datasourceRef = view.datasource;
if (DDL2.isRoxieServiceRef(datasourceRef)) {
return `${this.safeID(datasourceRef.id)}_${this.safeID(datasourceRef.output)}_${this.safeID(view.id)}`;
} else if (DDL2.isWUResultRef(datasourceRef)) {
return `${this.safeID(datasourceRef.id)}_${this.safeID(datasourceRef.output)}`;
}
return `${this.safeID(datasourceRef.id)}`;
}
readDatasourceRef(ddlDSRef: DDL2.IDatasourceRef, dsPicker: DSPicker, elementContainer: ElementContainer): this {
if (DDL2.isRoxieServiceRef(ddlDSRef)) {
dsPicker.datasourceID(`${ddlDSRef.id}_${ddlDSRef.output}`);
const dsRef = dsPicker.datasourceRef() as RoxieResultRef;
dsRef
.request(ddlDSRef.request.map(rf => {
return Param.fromDDL(this._ec, rf);
}))
;
} else if (DDL2.isWUResultRef(ddlDSRef)) {
const wu = this._dsReadDedup[ddlDSRef.id] as WU;
dsPicker.datasourceID(wu.output(ddlDSRef.output).id());
} else {
dsPicker.datasourceID(ddlDSRef.id);
}
return this;
}
datasource(ddlDS: DDL1.IAnyDatasource) {
for (const ddlOP of ddlDS.outputs) {
for (const ddlNotify of ddlOP.notify) {
const view = this._vizzies[ddlNotify].hipiePipeline();
if (DDL1.isWorkunitDatasource(ddlDS)) {
const wuResult = new WUResult()
.fullUrl(this._url)
.resultName(ddlOP.from)
;
view.dataSource(wuResult);
} else if (DDL1.isDatabombDatasource(ddlDS)) {
const databomb = new Databomb()
;
view.dataSource(databomb);
} else {
const hipieRequest = new HipieRequest(this._owner)
.fullUrl(ddlDS.URL)
.resultName(ddlOP.from)
;
view.dataSource(hipieRequest);
}
}
}
}
}