class PutAttributeModel {

    public void execute(@Parameter(required = true) String name, Object value,
            String expression, String role, String type, boolean cascade,
            Request request, ModelBody modelBody) throws IOException {
        Deque<Object> composeStack = ComposeStackUtil.getComposeStack(request);
        Attribute attribute = new Attribute();
        composeStack.push(attribute);
        String currentBody = modelBody.evaluateAsString();
        TilesContainer container = TilesAccess.getCurrentContainer(request);
        attribute = (Attribute) composeStack.pop();
        putAttributeInParent(attribute, container, composeStack, name,
                value, expression, currentBody, role, type, cascade, request);
    }

}