parent
fa8e059f28
commit
d0059b5d75
|
@ -15,16 +15,16 @@ export class PipeRegistry {
|
||||||
get(type:string, obj, cdRef:ChangeDetectorRef):Pipe {
|
get(type:string, obj, cdRef:ChangeDetectorRef):Pipe {
|
||||||
var listOfConfigs = this.config[type];
|
var listOfConfigs = this.config[type];
|
||||||
if (isBlank(listOfConfigs)) {
|
if (isBlank(listOfConfigs)) {
|
||||||
throw new BaseException(`Cannot find a pipe for type '${type}' object '${obj}'`);
|
throw new BaseException(`Cannot find '${type}' pipe supporting object '${obj}'`);
|
||||||
}
|
}
|
||||||
|
|
||||||
var matchingConfig = ListWrapper.find(listOfConfigs,
|
var matchingConfig = ListWrapper.find(listOfConfigs,
|
||||||
(pipeConfig) => pipeConfig.supports(obj));
|
(pipeConfig) => pipeConfig.supports(obj));
|
||||||
|
|
||||||
if (isBlank(matchingConfig)) {
|
if (isBlank(matchingConfig)) {
|
||||||
throw new BaseException(`Cannot find a pipe for type '${type}' object '${obj}'`);
|
throw new BaseException(`Cannot find '${type}' pipe supporting object '${obj}'`);
|
||||||
}
|
}
|
||||||
|
|
||||||
return matchingConfig.create(cdRef);
|
return matchingConfig.create(cdRef);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,7 +22,7 @@ export function main() {
|
||||||
it("should throw when no matching type", () => {
|
it("should throw when no matching type", () => {
|
||||||
var r = new PipeRegistry({});
|
var r = new PipeRegistry({});
|
||||||
expect(() => r.get("unknown", "some object", null)).toThrowError(
|
expect(() => r.get("unknown", "some object", null)).toThrowError(
|
||||||
`Cannot find a pipe for type 'unknown' object 'some object'`
|
`Cannot find 'unknown' pipe supporting object 'some object'`
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ export function main() {
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(() => r.get("type", "some object", null)).toThrowError(
|
expect(() => r.get("type", "some object", null)).toThrowError(
|
||||||
`Cannot find a pipe for type 'type' object 'some object'`
|
`Cannot find 'type' pipe supporting object 'some object'`
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -54,4 +54,4 @@ class PipeFactory {
|
||||||
create(cdRef):Pipe {
|
create(cdRef):Pipe {
|
||||||
return this.pipe;
|
return this.pipe;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue