blob: 0e594fd63c48502438d9ee52f23ef1ebc71d6c9e [file] [log] [blame]
Michael Landodd603392017-07-12 00:54:52 +03001/*-
2 * ============LICENSE_START=======================================================
3 * SDC
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
ys969316a9fce2020-01-19 13:50:02 +020010 *
Michael Landodd603392017-07-12 00:54:52 +030011 * http://www.apache.org/licenses/LICENSE-2.0
ys969316a9fce2020-01-19 13:50:02 +020012 *
Michael Landodd603392017-07-12 00:54:52 +030013 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
19 */
20
Michael Landoed64b5e2017-06-09 03:19:04 +030021class PropertyValue {
22 min: number;
23 max: number;
24}
25
26class validationPatterns {
ys969316a9fce2020-01-19 13:50:02 +020027 vendorRelease: RegExp;
28 stringOrEmpty: string;
29 vendorName: RegExp;
30 vendorModelNumber: RegExp;
31 tag: RegExp;
32 contactId: RegExp;
33 componentName: RegExp;
34 string: RegExp;
35 comment:RegExp;
36 integer: RegExp;
Michael Landoed64b5e2017-06-09 03:19:04 +030037}
38
39export class Validations {
40 propertyValue: PropertyValue;
41 validationPatterns: validationPatterns;
42}
43
44export class ValidationConfiguration {
45 static validation: Validations;
46
47}
ys969316a9fce2020-01-19 13:50:02 +020048
49export class Validation {
50 componentNameValidationPattern:RegExp;
51 contactIdValidationPattern:RegExp;
52 tagValidationPattern:RegExp;
53 VendorReleaseValidationPattern:RegExp;
54 VendorNameValidationPattern:RegExp;
55 VendorModelNumberValidationPattern:RegExp;
56 commentValidationPattern:RegExp;
57
58 constructor(validationData?:Validations) {
59 if(validationData) {
60 this.commentValidationPattern = validationData.validationPatterns.comment;
61 this.componentNameValidationPattern = validationData.validationPatterns.componentName;
62 this.contactIdValidationPattern = validationData.validationPatterns.contactId;
63 this.tagValidationPattern = validationData.validationPatterns.tag;
64 this.VendorModelNumberValidationPattern = validationData.validationPatterns.vendorModelNumber;
65 this.VendorNameValidationPattern = validationData.validationPatterns.vendorName;
66 this.VendorReleaseValidationPattern = validationData.validationPatterns.vendorRelease;
67 }
68 }
69}