Skip to content

Commit

Permalink
#1539 add database metadata create
Browse files Browse the repository at this point in the history
  • Loading branch information
brandon-wonjune committed Jun 5, 2019
1 parent 6f07697 commit 28ecf89
Show file tree
Hide file tree
Showing 19 changed files with 980 additions and 304 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -168,10 +168,6 @@ export class DataconnectionService extends AbstractService {
return this.post(this.API_URL + 'connections/query/databases', param);
}

// 커넥션 정보로만 데이터베이스 조회 취소가능
public getDatabasesWithoutIdWithCancel(param: any): Observable<any> {
return this.postObservable(this.API_URL + 'connections/query/databases', param);
}

// 데이터 테이블 조회
public getTables(connectionId: string, databaseName: string, page?:Page): Promise<any> {
Expand Down Expand Up @@ -200,11 +196,6 @@ export class DataconnectionService extends AbstractService {
return this.post(this.API_URL + `connections/query/data?extractColumnName=${extractColumnName}&limit=${limit}`, param);
}

// 테이블 상세조회
public getTableDetailWitoutIdWithCancel(param: any, extractColumnName: boolean = false): Observable<any> {
return this.postObservable(this.API_URL + 'connections/query/data?extractColumnName=' + extractColumnName, param);
}

// 커넥션 상태 조회
public checkConnection(param: any) : Promise<any> {
return this.post(this.API_URL + 'connections/query/check', param);
Expand Down Expand Up @@ -272,15 +263,6 @@ export class DataconnectionService extends AbstractService {
return this.post(this.API_URL + 'connections/query/hive/databases', null);
}

/**
* stageDB 생성시 데이터베이스 조회
* @returns {Promise<any>}
*/
public getDatabaseForHiveWithCancel(): Observable<any> {
return this.postObservable(this.API_URL + 'connections/query/hive/databases', null);
}


/**
* stageDB 생성시 테이블 조회
* @param {string} databaseName
Expand All @@ -304,74 +286,76 @@ export class DataconnectionService extends AbstractService {
}

/**
* Get detail data in stagingDB with cancel
* Get schema list enabled cancel
* @param params
* @param {boolean} extractColumnName
* @returns {Observable}
*/
public getTableDataForHiveWithCancel(params: any, extractColumnName: boolean = false): Observable<any> {
return this.postObservable(this.API_URL + 'connections/query/hive/data?extractColumnName=' + extractColumnName, params);
public getSchemaListWithCancel(param): Observable<any> {
return this.postObservable(this.URL_CONNECTIONS + '/query/databases', param);
}

/**
* Check partition valid in stagingDB
* Get table list enabled cancel
* @param params
* @returns {Promise<any>}
* @returns {Observable}
*/
public partitionValidationForStagingDB(params: any): Promise<any> {
return this.post(this.URL_CONNECTIONS + '/query/hive/partitions/validate', params);
public getTableListWitchCancel(params): Observable<any> {
return this.postObservable(this.URL_CONNECTIONS + '/metadata/tables/jdbc', params);
}

/**
* Is String mode in stagingDB
* @returns {Promise<any>}
* Get table detail data enabled cancel
* @param params
* @param {boolean} extractColumnName
* @returns {Observable}
*/
public isStrictModeForStagingDB(): Promise<any> {
//return this.get(this.URL_CONNECTIONS + '/query/hive/strict');
return this.get(this.URL_CONNECTIONS + '/query/hive/partitions/enable');
public getTableDetailDataWithCancel(param: any, extractColumnName: boolean = false): Observable<any> {
return this.postObservable(this.API_URL + 'connections/query/data?extractColumnName=' + extractColumnName, param);
}

/**
* 메타데이터 내에서 stageDB로 생성시 테이블 목록 조회
* @param {string} databaseName
* @returns {Promise<any>}
* Get schema list in stagingDB enabled cancel
* @returns {Observable}
*/
public getTableListForStageInMetadata(databaseName: string): Promise<any> {
return this.post(this.URL_CONNECTIONS + '/metadata/tables/stage', {database: databaseName})
public getSchemaListForHiveWithCancel(): Observable<any> {
return this.postObservable(this.URL_CONNECTIONS + '/query/hive/databases', null);
}

/**
* 메타데이터 내에서 stageDB로 생성시 테이블 목록 조회 with Cancel
* Get table list in metadata stagingDB enabled cancel
* @param {string} databaseName
* @returns {Promise<any>}
* @returns {Observable}
*/
public getTableListForStageInMetadataWithCancel(databaseName: string): Observable<any> {
public getTableListForHiveInMetadataWithCancel(databaseName: string): Observable<any> {
return this.postObservable(this.URL_CONNECTIONS + '/metadata/tables/stage', {database: databaseName})
}

/**
* 메타데이터 내에서 HIVE로 생성시 테이블 목록 조회
* @param {Object} params
* @returns {Promise<any>}
* Get table detail data in stagingDB enabled cancel
* @param params
* @param {boolean} extractColumnName
* @returns {Observable}
*/
public getTableListForHiveInMetadata(params: object): Promise<any> {
return this.post(this.URL_CONNECTIONS + '/metadata/tables/jdbc', params);
public getTableDetailDataForHiveWithCancel(params, extractColumnName: boolean = false): Observable<any> {
return this.postObservable(this.URL_CONNECTIONS + '/query/hive/data?extractColumnName=' + extractColumnName, params);
}

/**
* 메타데이터 내에서 HIVE로 생성시 테이블 목록 조회 취소 가능
* @param {Object} params
* Check partition valid in stagingDB
* @param params
* @returns {Promise<any>}
*/
public getTableListForHiveInMetadataWithCancel(params: object): Observable<any> {
return this.postObservable(this.URL_CONNECTIONS + '/metadata/tables/jdbc', params);
public partitionValidationForStagingDB(params: any): Promise<any> {
return this.post(this.URL_CONNECTIONS + '/query/hive/partitions/validate', params);
}

/**
* Get table list in metadata enabled cancel
* @param params
* Is String mode in stagingDB
* @returns {Promise<any>}
*/
public getTableListInMetadataWitchCancel(params): Observable<any> {
return this.postObservable(this.URL_CONNECTIONS + '/metadata/tables/jdbc', params);
public isStrictModeForStagingDB(): Promise<any> {
//return this.get(this.URL_CONNECTIONS + '/query/hive/strict');
return this.get(this.URL_CONNECTIONS + '/query/hive/partitions/enable');
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ export class MetadataSource extends AbstractHistoryEntity {
export enum MetadataSourceType {
ENGINE = <any>'ENGINE',
STAGING = <any>'STAGING',
STAGEDB = <any>'STAGEDB',
JDBC = <any>'JDBC',
DASHBOARD = <any>'DASHBOARD'
}
Original file line number Diff line number Diff line change
Expand Up @@ -52,5 +52,6 @@ export class Metadata extends AbstractHistoryEntity {
export enum SourceType {
ENGINE = <any>'ENGINE',
STAGING = <any>'STAGEDB',
STAGEDB = <any>'STAGEDB',
JDBC = <any>'JDBC'
}

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
<!--
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<div class="ddp-ui-sheet-list ddp-flex-column">
<table class="ddp-table-sheet">
<colgroup>
<col width="250px">
<col width="230px">
<col width="*">
</colgroup>
<thead>
<tr>
<th>{{'msg.metadata.th.create.table' | translate}}</th>
<th>{{'msg.metadata.th.create.name' | translate}}</th>
<th>{{'msg.metadata.th.create.description' | translate}}</th>
</tr>
</thead>
<tbody>
<tr *ngFor="let metadata of metadataList">
<td>
{{metadata.table}}
</td>
<td>
<div class="ddp-sheet-form">
<input type="text" class="ddp-input-typebasic" placeholder="{{metadata.table}}" [ngModel]="metadata.name" (ngModelChange)="onChangeMetadataName(metadata, $event)">
<span class="ddp-data-error" *ngIf="isErrorMetadataName(metadata)"> {{metadata.errorMessage}}</span>
</div>
</td>
<td>
<div class="ddp-sheet-form">
<div class="ddp-textarea-resize">
<textarea placeholder="{{'msg.metadata.ph.create.description' | translate}}" #descriptionElement
[ngModel]="metadata.description" (ngModelChange)="onChangeMetadataDescription(metadata, $event)" (keyup)="changeDescriptionHeight(descriptionElement)">
</textarea>
</div>
<!-- <span class="ddp-data-error"> Invalid Connect</span>-->
</div>

</td>
</tr>
</tbody>
</table>
</div>
<div class="ddp-box-synch type-error" *ngIf="!isEmptyMetadataList() && isErrorInMetadataList()">
<div class="ddp-txt-synch">
<em class="ddp-icon-info"></em>
{{'msg.metadata.ui.create.error.alert' | translate}}
</div>
</div>
<div class="ddp-data-check">
<div class="ddp-label-type">{{'msg.metadata.btn.create.searchable.explore' | translate}}</div>
<div class="ddp-checkbox-slide ddp-checkbox-automatic2" (change)="onChangeSearchableInExploreData()">
<input type="checkbox" value="None" id="check2" name="check" [checked]="isSearchableInExploreData">
<label for="check2"><span class="ddp-slide"></span></label>
</div>
</div>
Loading

0 comments on commit 28ecf89

Please sign in to comment.