本文整理汇总了TypeScript中core/cache.InfrastructureCaches类的典型用法代码示例。如果您正苦于以下问题:TypeScript InfrastructureCaches类的具体用法?TypeScript InfrastructureCaches怎么用?TypeScript InfrastructureCaches使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了InfrastructureCaches类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: getAllSecurityGroups
public getAllSecurityGroups(): IPromise<ISecurityGroupsByAccountSourceData> {
// Because these are cached in local storage, we unfortunately need to remove the moniker, as it triples the size
// of the object being stored, which blows out our LS quota for a sufficiently large footprint
const cache = InfrastructureCaches.get('securityGroups');
const cached = !!cache ? cache.get('allGroups') : null;
if (cached) {
return this.$q.resolve(cached);
}
return API.one('securityGroups')
.useCache()
.get()
.then((groupsByAccount: ISecurityGroupsByAccountSourceData) => {
Object.keys(groupsByAccount).forEach(account => {
Object.keys(groupsByAccount[account]).forEach(provider => {
Object.keys(groupsByAccount[account][provider]).forEach(region => {
groupsByAccount[account][provider][region].forEach(group => {
delete group.moniker;
});
});
});
});
if (cache) {
cache.put('allGroups', groupsByAccount);
}
return groupsByAccount;
});
}
示例2: it
it('should remove all items from the specified cache', () => {
let cache = InfrastructureCaches.get('securityGroups');
expect(cache).toBeUndefined();
cacheInitializer.initialize().then(() => {
cache = InfrastructureCaches.get('securityGroups');
expect(cache).toBeDefined();
expect(cache.keys().length).toBe(0);
const key = 'myTestCacheKey';
const value = 'myTestCacheValue';
cache.put(key, value);
expect(cache.keys().length).toBe(1);
expect(cache.get(key)).toBe(value);
cacheInitializer.refreshCache('securityGroups').then((result: any[]) => {
expect(flatten(result)).toEqual(keys.sg);
cache = InfrastructureCaches.get('securityGroups');
expect(cache.keys().length).toBe(0);
});
initialized = true;
});
$root.$digest();
expect(initialized).toBeTruthy();
});
示例3: deleteLoadBalancer
public static deleteLoadBalancer(command: ILoadBalancerDeleteCommand, application: Application): ng.IPromise<ITask> {
command.type = 'deleteLoadBalancer';
InfrastructureCaches.clearCache('loadBalancers');
return TaskExecutor.executeTask({
job: [command],
application,
description: `Delete load balancer: ${command.loadBalancerName}`,
});
}
示例4: clearCacheAndRetryAttachingSecurityGroups
private clearCacheAndRetryAttachingSecurityGroups(
application: Application,
nameBasedSecurityGroups: ISecurityGroup[],
): IPromise<any[]> {
InfrastructureCaches.clearCache('securityGroups');
return this.loadSecurityGroups().then((refreshedSecurityGroups: ISecurityGroupsByAccount) => {
application['securityGroupsIndex'] = refreshedSecurityGroups;
return this.attachSecurityGroups(application, nameBasedSecurityGroups, false);
});
}
示例5: upsertLoadBalancer
public static upsertLoadBalancer(
command: ILoadBalancerUpsertCommand,
application: Application,
descriptor: string,
params: any = {},
): IPromise<ITask> {
Object.assign(command, params);
command.type = 'upsertLoadBalancer';
InfrastructureCaches.clearCache('loadBalancers');
return TaskExecutor.executeTask({
job: [command],
application,
description: `${descriptor} Load Balancer: ${command['name']}`,
});
}
示例6: expect
cacheInitializer.initialize().then(() => {
cache = InfrastructureCaches.get('securityGroups');
expect(cache).toBeDefined();
expect(cache.keys().length).toBe(0);
const key = 'myTestCacheKey';
const value = 'myTestCacheValue';
cache.put(key, value);
expect(cache.keys().length).toBe(1);
expect(cache.get(key)).toBe(value);
cacheInitializer.refreshCache('securityGroups').then((result: any[]) => {
expect(flatten(result)).toEqual(keys.sg);
cache = InfrastructureCaches.get('securityGroups');
expect(cache.keys().length).toBe(0);
});
initialized = true;
});
示例7: beforeEach
beforeEach(() => {
InfrastructureCaches.destroyCaches();
});
示例8: expect
cacheInitializer.refreshCache('credentials').then((result: any[]) => {
expect(flatten(result)).toEqual(keys.account);
cache = InfrastructureCaches.get('credentials');
expect(cache.keys().length).toBe(0);
});
示例9: listNetworksByProvider
public static listNetworksByProvider(cloudProvider: string) {
return API.one('networks')
.one(cloudProvider)
.useCache(InfrastructureCaches.get('networks'))
.getList();
}