diff options
author | Michael Lando <ml636r@att.com> | 2017-06-09 03:19:04 +0300 |
---|---|---|
committer | Michael Lando <ml636r@att.com> | 2017-06-09 03:19:04 +0300 |
commit | ed64b5edff15e702493df21aa3230b81593e6133 (patch) | |
tree | a4cb01fdaccc34930a8db403a3097c0d1e40914b /catalog-ui/app/scripts/models/capability.ts | |
parent | 280f8015d06af1f41a3ef12e8300801c7a5e0d54 (diff) |
[SDC-29] catalog 1707 rebase commit.
Change-Id: I43c3dc5cf44abf5da817649bc738938a3e8388c1
Signed-off-by: Michael Lando <ml636r@att.com>
Diffstat (limited to 'catalog-ui/app/scripts/models/capability.ts')
-rw-r--r-- | catalog-ui/app/scripts/models/capability.ts | 116 |
1 files changed, 0 insertions, 116 deletions
diff --git a/catalog-ui/app/scripts/models/capability.ts b/catalog-ui/app/scripts/models/capability.ts deleted file mode 100644 index 815be5a389..0000000000 --- a/catalog-ui/app/scripts/models/capability.ts +++ /dev/null @@ -1,116 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * 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. - * ============LICENSE_END========================================================= - */ -/** - * Created by obarda on 4/20/2016. - */ -/// <reference path="../references"/> -module Sdc.Models { - 'use strict'; - - //this is an object contains keys, when each key has matching array. - // for example: key = tosca.capabilities.network.Linkable and the match array is array of capabilities objects - export class CapabilitiesGroup { - constructor(capabilityGroupObj?:Models.CapabilitiesGroup) { - _.forEach(capabilityGroupObj, (capabilitiesArrayObj:Array<Models.Capability>, instance) => { - this[instance] = []; - _.forEach(capabilitiesArrayObj, (capability:Models.Capability):void => { - this[instance].push(new Models.Capability(capability)); - }); - }); - } - - public findValueByKey(keySubstring:string):Array<Models.Capability> { - let key:string = _.find(Object.keys(this), (key)=> { - return _.includes(key.toLowerCase(), keySubstring); - }); - return this[key]; - } - } - - export class Capability { - - //server data - name:string; - ownerId:string; - ownerName:string; - type:string; - uniqueId:string; - capabilitySources:Array<String>; - minOccurrences:string; - maxOccurrences:string; - properties:Array<Models.PropertyModel>; - description:string; - validSourceTypes:Array<string>; - //custom - selected:boolean; - filterTerm:string; - - constructor(capability?:Capability) { - - if (capability) { - //server data - this.name = capability.name; - this.ownerId = capability.ownerId; - this.ownerName = capability.ownerName; - this.type = capability.type; - this.uniqueId = capability.uniqueId; - this.capabilitySources = capability.capabilitySources; - this.minOccurrences = capability.minOccurrences; - this.maxOccurrences = capability.maxOccurrences; - this.properties = capability.properties; - this.description = capability.description; - this.validSourceTypes = capability.validSourceTypes; - this.selected = capability.selected; - this.initFilterTerm(); - - } - } - - public getFullTitle():string { - let maxOccurrences:string = this.maxOccurrences === 'UNBOUNDED' ? '∞' : this.maxOccurrences; - return this.ownerName + ': ' + this.name + ': [' + this.minOccurrences + ', ' + maxOccurrences + ']'; - } - - public toJSON = ():any => { - this.selected = undefined; - this.filterTerm = undefined; - return this; - }; - - private initFilterTerm = ():void =>{ - this.filterTerm = this.name + " " + - (this.type ? (this.type.substring("tosca.capabilities.".length) + " " ) : "") + - (this.description||"") + " " + - (this.ownerName||"") + " " + - (this.validSourceTypes ? (this.validSourceTypes.join(',') + " ") : "") + - this.minOccurrences+","+this.maxOccurrences; - if(this.properties && this.properties.length){ - _.forEach(this.properties,(prop:Models.PropertyModel)=>{ - this.filterTerm += " "+ prop.name + - " " + (prop.description||"") + - " " + prop.type + - (prop.schema && prop.schema.property?(" " + prop.schema.property.type):""); - }); - } - } - } -} - - |