Package com.adobe.granite.ui.components
Class AttrBuilder
- java.lang.Object
-
- com.adobe.granite.ui.components.AttrBuilder
-
-
Constructor Summary
Constructors Constructor Description AttrBuilder(HttpServletRequest req, XSSAPI xssAPI)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(String name, Boolean value)Adds attribute with the given name.voidadd(String name, Double value)Adds attribute with the given name.voidadd(String name, Integer value)Adds attribute with the given name.voidadd(String name, String value)Adds attribute with the given name.voidaddBoolean(String name, boolean value)Adds boolean attribute (behaves likedisabled) for the given name.voidaddChecked(boolean checked)Addscheckedattribute.voidaddClass(String value)Addsclassattribute with the given value.voidaddDisabled(boolean disabled)Addsdisabledattribute.voidaddHref(String name, String value)Adds an attribute that behave likehrefattribute.voidaddMultiple(boolean multiple)Addsmultipleattribute.voidaddOther(String name, String value)Adds the given name asdata-*attribute.voidaddOthers(Map<String,Object> data, String... exclusions)Adds the given data asdata-*attributes.voidaddRel(String value)Adds relationship.voidaddSelected(boolean selected)Addsselectedattribute.Stringbuild()Builds the attributes in the form of<attr-name>='<attr-value>'*.voidbuild(Writer out)Builds the attributes in the form of<attr-name>='<attr-value>'**.Map<String,String>getData()Gets the rawMapof attributes, with un-encoded valuesbooleanisEmpty()Returnstrueif there is no attribute in this builder,falseotherwise.voidset(String name, String value)Sets attribute with the given name.StringtoString()
-
-
-
Constructor Detail
-
AttrBuilder
public AttrBuilder(@Nonnull HttpServletRequest req, @Nonnull XSSAPI xssAPI)
-
-
Method Detail
-
getData
@Nonnull public Map<String,String> getData()
Gets the rawMapof attributes, with un-encoded values- Returns:
Mapof attributes
-
addRel
public void addRel(@CheckForNull String value)
Adds relationship. Currently it is implemented asclassattribute.- Parameters:
value- the relationship to add
-
addClass
public void addClass(@CheckForNull String value)
Addsclassattribute with the given value.- Parameters:
value- the class attribute to add
-
addHref
public void addHref(@CheckForNull String name, @CheckForNull String value)
Adds an attribute that behave likehrefattribute. i.e. the value will be prepended with context path (if absolute path) and checked usingXSSAPI.getValidHref(String).- Parameters:
name- the name of the attribute to addvalue- the value of the specified attribute
-
addDisabled
public void addDisabled(boolean disabled)
Addsdisabledattribute.- Parameters:
disabled- the boolean value of thedisabledattribute
-
addChecked
public void addChecked(boolean checked)
Addscheckedattribute.- Parameters:
checked- the boolean value of thecheckedattribute
-
addSelected
public void addSelected(boolean selected)
Addsselectedattribute.- Parameters:
selected- the boolean value of theselectedattribute
-
addMultiple
public void addMultiple(boolean multiple)
Addsmultipleattribute.- Parameters:
multiple- the boolean value of themultipleattribute
-
addBoolean
public void addBoolean(@CheckForNull String name, boolean value)
Adds boolean attribute (behaves likedisabled) for the given name. When the given value istrue, it will be printed as "disabled=''", instead of "disabled='true'". When the given value isfalse, it will NOT be printed, instead of "disabled='false'".- Parameters:
name- the name of the boolean attribute to addvalue- the boolean value of the attribute
-
addOther
public void addOther(@CheckForNull String name, @CheckForNull String value)
Adds the given name asdata-*attribute.- Parameters:
name- the name of thedata-*attribute to addvalue- the value of the attribute
-
addOthers
public void addOthers(@Nonnull Map<String,Object> data, @Nonnull String... exclusions)
Adds the given data asdata-*attributes. Entries with keys specified in exclusions parameter or having namespace (e.g. "jcr:primaryType") will be excluded.- Parameters:
data- the map containing key/value pairs to add asdata-*attributesexclusions- the keys which must not be added asdata-*attributes
-
add
public void add(@CheckForNull String name, @CheckForNull Boolean value)
Adds attribute with the given name. The value will be added to existing attribute using space-delimited convention. e.g. class="class1 class2"- Parameters:
name- the name of the attribute to addvalue- the boolean value of the attribute
-
add
public void add(@CheckForNull String name, @CheckForNull Integer value)
Adds attribute with the given name. The value will be added to existing attribute using space-delimited convention. e.g. class="class1 class2"- Parameters:
name- the name of the attribute to addvalue- the integer value of the attribute
-
add
public void add(@CheckForNull String name, @CheckForNull Double value)
Adds attribute with the given name. The value will be added to existing attribute using space-delimited convention. e.g. class="class1 class2"- Parameters:
name- the name of the attribute to addvalue- the double value of the attribute
-
add
public void add(@CheckForNull String name, @CheckForNull String value)
Adds attribute with the given name. The value will be added to existing attribute using space-delimited convention. e.g. class="class1 class2"- Parameters:
name- the name of the attribute to addvalue- the string value of the attribute
-
set
public void set(@CheckForNull String name, @CheckForNull String value)
Sets attribute with the given name. Existing value previously set will be replaced by the given value.- Parameters:
name- the name of the attribute to set or replace (if exists)value- the string value of the attribute
-
isEmpty
public boolean isEmpty()
Returnstrueif there is no attribute in this builder,falseotherwise.- Returns:
trueif there is no attribute in this builder,falseotherwise
-
build
public String build()
Builds the attributes in the form of<attr-name>='<attr-value>'*.- Returns:
- the string containing the built attributes
-
build
public void build(@Nonnull Writer out) throws IOException
Builds the attributes in the form of<attr-name>='<attr-value>'**.- Parameters:
out- the writer- Throws:
IOException- in case there's an error when appending to the writer
-
-