class GetAsStringModel {

    public void execute(boolean ignore, String preparer, String role,
            Object defaultValue, String defaultValueRole,
            String defaultValueType, @Parameter(required = true) String name,
            Attribute value, Request request, ModelBody modelBody)
            throws IOException {
        TilesContainer container = TilesAccess.getCurrentContainer(request);
        Deque<Object> composeStack = ComposeStackUtil.getComposeStack(request);
        Attribute attribute = resolveAttribute(container, ignore, preparer,
                role, defaultValue, defaultValueRole, defaultValueType, name,
                value, request);
        if (attribute != null) {
            composeStack.push(attribute);
        }
        modelBody.evaluateWithoutWriting();
        container = TilesAccess.getCurrentContainer(request);
        Writer writer = request.getWriter();
        if (attribute != null) {
            attribute = (Attribute) composeStack.pop();
        }
        renderAttribute(attribute, container, writer, ignore, request);
    }

    public  GetAsStringModel();
    public  GetAsStringModel(AttributeResolver attributeResolver);

}