Skip to content

Commit d480fce

Browse files
committed
add support for named transformations as tag attribute
1 parent 4602c3c commit d480fce

File tree

3 files changed

+32
-1
lines changed

3 files changed

+32
-1
lines changed

cloudinary-taglib/src/main/java/com/cloudinary/taglib/CloudinaryImageTag.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,8 @@ public class CloudinaryImageTag extends SimpleTagSupport implements DynamicAttri
4242
private Boolean secure = null;
4343
private Boolean cdnSubdomain = null;
4444

45+
private String namedTransformation = null;
46+
4547
/** stores the dynamic attributes */
4648
private Map<String,Object> tagAttrs = new HashMap<String,Object>();
4749

@@ -64,7 +66,7 @@ public void doTag() throws JspException, IOException {
6466
Url url = cloudinary.url();
6567

6668
Transformation baseTransformation = new Transformation().params(tagAttrs);
67-
69+
if (namedTransformation != null) baseTransformation.named(namedTransformation);
6870
url.transformation(baseTransformation.chain().rawTransformation(transformation));
6971
if (format != null) url.format(format);
7072
if (type != null) url.type(type);
@@ -161,6 +163,14 @@ public void setCdnSubdomain(Boolean cdnSubdomain) {
161163
this.cdnSubdomain = cdnSubdomain;
162164
}
163165

166+
public String getNamed() {
167+
return namedTransformation;
168+
}
169+
170+
public void setNamed(String namedTransformation) {
171+
this.namedTransformation = namedTransformation;
172+
}
173+
164174
@Override
165175
public void setDynamicAttribute(String uri, String name, Object value) throws JspException {
166176
tagAttrs.put(name, value);

cloudinary-taglib/src/main/java/com/cloudinary/taglib/CloudinaryUrl.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ public class CloudinaryUrl extends SimpleTagSupport implements DynamicAttributes
3131
private Boolean secure = null;
3232
private Boolean cdnSubdomain = null;
3333

34+
private String namedTransformation = null;
35+
3436
/** stores the dynamic attributes */
3537
private Map<String,Object> tagAttrs = new HashMap<String,Object>();
3638

@@ -44,6 +46,7 @@ public void doTag() throws JspException, IOException {
4446

4547
Url url = cloudinary.url();
4648
Transformation baseTransformation = new Transformation().params(tagAttrs);
49+
if (namedTransformation != null) baseTransformation.named(namedTransformation);
4750
url.transformation(baseTransformation.chain().rawTransformation(transformation));
4851
if (format != null) url.format(format);
4952
if (type != null) url.type(type);
@@ -115,6 +118,14 @@ public void setCdnSubdomain(Boolean cdnSubdomain) {
115118
this.cdnSubdomain = cdnSubdomain;
116119
}
117120

121+
public String getNamed() {
122+
return namedTransformation;
123+
}
124+
125+
public void setNamed(String namedTransformation) {
126+
this.namedTransformation = namedTransformation;
127+
}
128+
118129
@Override
119130
public void setDynamicAttribute(String uri, String name, Object value) throws JspException {
120131
tagAttrs.put(name, value);

cloudinary-taglib/src/main/resources/META-INF/cloudinary.tld

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,11 @@
196196
<required>false</required>
197197
<rtexprvalue>true</rtexprvalue>
198198
</attribute>
199+
<attribute>
200+
<name>named</name>
201+
<required>false</required>
202+
<rtexprvalue>true</rtexprvalue>
203+
</attribute>
199204
<dynamic-attributes>true</dynamic-attributes>
200205
</tag>
201206
<tag>
@@ -237,6 +242,11 @@
237242
<required>false</required>
238243
<rtexprvalue>true</rtexprvalue>
239244
</attribute>
245+
<attribute>
246+
<name>named</name>
247+
<required>false</required>
248+
<rtexprvalue>true</rtexprvalue>
249+
</attribute>
240250
<dynamic-attributes>true</dynamic-attributes>
241251
</tag>
242252
<tag>

0 commit comments

Comments
 (0)