package com.google.sitebricks.rendering.control;
import com.google.sitebricks.Renderable;
import com.google.sitebricks.Respond;
import com.google.sitebricks.StringBuilderRespond;
import com.google.sitebricks.compiler.ExpressionCompileException;
import com.google.sitebricks.rendering.SelfRendering;
import net.jcip.annotations.Immutable;
import java.util.Collections;
import java.util.Set;
/**
* @author Dhanji R. Prasanna (dhanji@gmail.com)
*/
@Immutable
@SelfRendering
class RequireWidget implements Renderable {
private final XmlWidget widget;
public RequireWidget(XmlWidget child) throws ExpressionCompileException {
this.widget = child;
}
public void render(Object bound, Respond respond) {
StringBuilderRespond inner = new StringBuilderRespond(bound);
widget.render(bound, inner);
//special method interns tokens
respond.require(inner.toString());
}
public <T extends Renderable> Set<T> collect(Class<T> clazz) {
return Collections.emptySet();
}
}