Skip to content
Snippets Groups Projects
Unverified Commit 11191d2e authored by Łukasz Łopatowski's avatar Łukasz Łopatowski Committed by GitHub
Browse files

Merge pull request #74 from...

Merge pull request #74 from nmaas-platform/73-allow-for-setting-access-method-condition-on-the-application-management-view

73 allow for setting access method condition on the application management view
parents b020bbf8 73a0d510
No related branches found
No related tags found
No related merge requests found
...@@ -20,6 +20,16 @@ ...@@ -20,6 +20,16 @@
<label class="control-label" for="{{id}}-tag-{{accessMethod.type}}">{{'APP_ACCESS_METHOD_EDIT.TAG' | translate}}: </label> <label class="control-label" for="{{id}}-tag-{{accessMethod.type}}">{{'APP_ACCESS_METHOD_EDIT.TAG' | translate}}: </label>
<input class="form-control" type="text" id="{{id}}-tag-{{accessMethod.type}}" ngDefaultControl [(ngModel)]="accessMethod.tag"> <input class="form-control" type="text" id="{{id}}-tag-{{accessMethod.type}}" ngDefaultControl [(ngModel)]="accessMethod.tag">
</div> </div>
<div class="form-group">
<label class="control-label" for="{{id}}-conditionType-{{accessMethod.conditionType}}">{{'APP_ACCESS_METHOD_EDIT.CONDITION_TYPE' | translate}}: </label>
<select class="form-control" id="{{id}}-conditionType-{{accessMethod.conditionType}}" [(ngModel)]="accessMethod.conditionType" (change)="onSelectConditionType($event)">
<option *ngFor="let s of conditionType; let i=index" value="{{s}}">{{s}}</option>
</select>
</div>
<div *ngIf="accessMethod.conditionType === 'DEPLOYMENT_PARAMETER'" class="form-group">
<label class="control-label" for="{{id}}-condition-{{accessMethod.type}}">{{'APP_ACCESS_METHOD_EDIT.CONDITION' | translate}}: </label>
<input class="form-control" type="text" id="{{id}}-condition-{{accessMethod.type}}" ngDefaultControl [(ngModel)]="accessMethod.condition">
</div>
</div> </div>
<ul class="col-sm-7"> <ul class="col-sm-7">
......
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import {ComponentFixture, TestBed, waitForAsync} from '@angular/core/testing';
import {AppAccessMethodEditComponent} from './app-access-method-edit.component'; import {AppAccessMethodEditComponent} from './app-access-method-edit.component';
import {FormsModule} from '@angular/forms'; import {FormsModule} from '@angular/forms';
import {ServiceAccessMethodType} from '../../../model/service-access-method'; import {ServiceAccessMethodType} from '../../../model/service-access-method';
import {TranslateFakeLoader, TranslateLoader, TranslateModule} from '@ngx-translate/core'; import {TranslateFakeLoader, TranslateLoader, TranslateModule} from '@ngx-translate/core';
import {ConditionType} from '../../../model/app-access-method';
describe('AppAccessMethodEditComponent', () => { describe('AppAccessMethodEditComponent', () => {
let component: AppAccessMethodEditComponent; let component: AppAccessMethodEditComponent;
...@@ -35,7 +36,9 @@ describe('AppAccessMethodEditComponent', () => { ...@@ -35,7 +36,9 @@ describe('AppAccessMethodEditComponent', () => {
type: ServiceAccessMethodType.INTERNAL, type: ServiceAccessMethodType.INTERNAL,
name: 'd', name: 'd',
tag: 't', tag: 't',
deployParameters: {} deployParameters: {},
conditionType: ConditionType.NONE,
condition: ''
}; };
fixture.detectChanges(); fixture.detectChanges();
}); });
......
import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core'; import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';
import {AppAccessMethod} from '../../../model/app-access-method'; import {AppAccessMethod, ConditionType} from '../../../model/app-access-method';
import {parseServiceAccessMethodType, ServiceAccessMethodType} from '../../../model/service-access-method'; import {parseServiceAccessMethodType, ServiceAccessMethodType} from '../../../model/service-access-method';
import {KeyValue} from '@angular/common'; import {KeyValue} from '@angular/common';
...@@ -40,6 +40,8 @@ export class AppAccessMethodEditComponent implements OnInit { ...@@ -40,6 +40,8 @@ export class AppAccessMethodEditComponent implements OnInit {
'K8S_SERVICE_SUFFIX', 'K8S_SERVICE_SUFFIX',
'K8S_SERVICE_PORT'] 'K8S_SERVICE_PORT']
public conditionType = ['NONE', 'DEPLOYMENT_PARAMETER']
constructor() { } constructor() { }
ngOnInit() { ngOnInit() {
...@@ -107,4 +109,10 @@ export class AppAccessMethodEditComponent implements OnInit { ...@@ -107,4 +109,10 @@ export class AppAccessMethodEditComponent implements OnInit {
}) })
} }
public onSelectConditionType(conditionType: any) {
if (conditionType.target.value === 'NONE') {
this.accessMethod.condition = '';
}
}
} }
import {ServiceAccessMethodType} from './service-access-method'; import {ServiceAccessMethodType} from './service-access-method';
export enum ConditionType {
NONE = 'NONE',
DEPLOYMENT_PARAMETER = 'DEPLOYMENT_PARAMETER'
}
export class AppAccessMethod { export class AppAccessMethod {
public id: number; public id: number;
public type: ServiceAccessMethodType; public type: ServiceAccessMethodType;
public name: string; public name: string;
public tag: string; public tag: string;
public deployParameters: object = {}; // this should be Map<string, string> but JS cannot stringify object of this type public deployParameters: object = {}; // this should be Map<string, string> but JS cannot stringify object of this type
public conditionType: ConditionType = ConditionType.NONE;
public condition: string;
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment