/** * {@inheritDoc} */ @Override public boolean contains(ResourceTemplate template) { return delegate().contains(template); }
<T extends ResourceHandler> T getHandler(Class<? extends T> handlerClass, ResourceTemplate template) { checkNotNull(handlerClass,"Handler class cannot be null"); checkNotNull(template,"Template cannot be null"); checkArgument(this.library.contains(template),"Unknown template '"+template+"'"); checkArgument(handlerClass.isAssignableFrom(template.handlerClass())); return handlerClass.cast(this.handlers.get(HandlerId.createId(template.handlerClass()))); }
/** * {@inheritDoc} */ @Override public Resource createResource(ResourceTemplate template, Name<?> name) { checkNotNull(name,"Resource name cannot be null"); checkArgument(this.templateLibrary.contains(template),"Unknown template "+template); RootResourceCreator creator= new RootResourceCreator( ResourceId.createId(name,template)); template.accept(creator); return creator.createdResource(); }
@Override protected void processTemplate(ResourceTemplate template) { assertThat(library.contains(template),equalTo(true)); } }
/** * {@inheritDoc} */ @Override public Resource createResource(ResourceTemplate template, Name<?> name) { checkNotNull(name,"Resource name cannot be null"); checkArgument(this.templateLibrary.contains(template),"Unknown template "+template); RootResourceCreator creator= new RootResourceCreator( ResourceId.createId(name,template)); template.accept(creator); return creator.createdResource(); }