本文整理汇总了TypeScript中@spinnaker/core.ApplicationNameValidator类的典型用法代码示例。如果您正苦于以下问题:TypeScript ApplicationNameValidator类的具体用法?TypeScript ApplicationNameValidator怎么用?TypeScript ApplicationNameValidator使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了ApplicationNameValidator类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1:
.run((applicationNameValidator: ApplicationNameValidator, awsApplicationNameValidator: IApplicationNameValidator) => {
applicationNameValidator.registerValidator('aws', awsApplicationNameValidator);
});
示例2:
.run((applicationNameValidator: ApplicationNameValidator, appengineApplicationNameValidator: IApplicationNameValidator) => {
applicationNameValidator.registerValidator('appengine', appengineApplicationNameValidator);
});
示例3: validate
errors.push('The maximum length for an application in Titus is 250 characters.');
return;
}
if (name.length > 240) {
if (name.length >= 248) {
warnings.push(
`You will not be able to include a stack or detail field for clusters or ${FirewallLabels.get('firewalls')}.`,
);
} else {
const remaining = 248 - name.length;
warnings.push(`If you plan to include a stack or detail field for clusters, you will only
have ~${remaining} characters to do so.`);
}
}
}
public validate(name = '') {
const warnings: string[] = [],
errors: string[] = [];
if (name && name.length) {
this.validateSpecialCharacters(name, errors);
this.validateLength(name, warnings, errors);
}
return { warnings, errors };
}
}
ApplicationNameValidator.registerValidator('titus', new TitusApplicationNameValidator());
示例4: validateSpecialCharacters
this.validateLength(name, warnings, errors);
}
return { warnings, errors };
}
private validateSpecialCharacters(name: string, errors: string[]): void {
const pattern = /^[a-z0-9]*$/g;
if (!pattern.test(name)) {
errors.push('Only numbers and lowercase letters are allowed.');
}
}
private validateLength(name: string, warnings: string[], errors: string[]): void {
if (name.length > 58) {
errors.push('The maximum length for an App Engine application name is 63 characters.');
return;
}
if (name.length > 48) {
if (name.length >= 56) {
warnings.push('You will not be able to include a stack or detail field for clusters.');
} else {
const remaining = 56 - name.length;
warnings.push(`If you plan to include a stack or detail field for clusters, you will only have
${remaining} character${remaining > 1 ? 's' : ''} to do so.`);
}
}
}
}
ApplicationNameValidator.registerValidator('appengine', new AppengineApplicationNameValidator());
示例5: separators
for load balancer names is 32 (currently: ${name.length} characters). With separators ("-"), you will not
be able to add a stack and detail field to any load balancer.`);
} else {
const remaining = 30 - name.length;
warnings.push(`If you plan to create load balancers for this application, be aware that the character limit
for load balancer names is 32. You will only have ~${remaining} characters to add a stack or detail
field to any load balancer.`);
}
}
}
}
public validate(name = '') {
const warnings: string[] = [],
errors: string[] = [];
if (name.length) {
this.validateClassicLock(warnings);
this.validateSpecialCharacters(name, errors);
this.validateLoadBalancerCharacters(name, warnings);
this.validateLength(name, warnings, errors);
}
return {
warnings,
errors,
};
}
}
ApplicationNameValidator.registerValidator('aws', new AmazonApplicationNameValidator());