Author: bdelacretaz
Date: Fri Dec 18 13:27:21 2015
New Revision: 1720780
URL: http://svn.apache.org/viewvc?rev=1720780&view=rev
Log:
SLING-5390 - Allow HApi microdata client to fitler links and forms -
contributed by Andrei Dulvac, thanks!
Modified:
sling/trunk/contrib/extensions/hapi/client/src/main/java/org/apache/sling/hapi/client/Item.java
sling/trunk/contrib/extensions/hapi/client/src/main/java/org/apache/sling/hapi/client/microdata/MicrodataDocument.java
Modified:
sling/trunk/contrib/extensions/hapi/client/src/main/java/org/apache/sling/hapi/client/Item.java
URL:
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/hapi/client/src/main/java/org/apache/sling/hapi/client/Item.java?rev=1720780&r1=1720779&r2=1720780&view=diff
==============================================================================
---
sling/trunk/contrib/extensions/hapi/client/src/main/java/org/apache/sling/hapi/client/Item.java
(original)
+++
sling/trunk/contrib/extensions/hapi/client/src/main/java/org/apache/sling/hapi/client/Item.java
Fri Dec 18 13:27:21 2015
@@ -44,11 +44,21 @@ public interface Item {
Items link(String rel) throws ClientException;
/**
+ * Returns all the child links
+ */
+ Items link() throws ClientException;
+
+ /**
* Returns the child forms that have the given relation
*/
Items form(String rel) throws ClientException;
/**
+ * Returns all the child forms
+ */
+ Items form() throws ClientException;
+
+ /**
* Returns the text value of the property.
*/
String text() throws ClientException;
Modified:
sling/trunk/contrib/extensions/hapi/client/src/main/java/org/apache/sling/hapi/client/microdata/MicrodataDocument.java
URL:
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/hapi/client/src/main/java/org/apache/sling/hapi/client/microdata/MicrodataDocument.java?rev=1720780&r1=1720779&r2=1720780&view=diff
==============================================================================
---
sling/trunk/contrib/extensions/hapi/client/src/main/java/org/apache/sling/hapi/client/microdata/MicrodataDocument.java
(original)
+++
sling/trunk/contrib/extensions/hapi/client/src/main/java/org/apache/sling/hapi/client/microdata/MicrodataDocument.java
Fri Dec 18 13:27:21 2015
@@ -133,12 +133,26 @@ public class MicrodataDocument implement
@Override
public Items link(String rel) throws ClientException {
- return new ItemsImpl(toItems(getProxy().el.select("link[rel=" +
rel + "], a[rel=" + rel + "]")));
+ String selector = "link[rel=" + rel + "], a[rel=" + rel + "],
link" + toClass(rel) + ", a" + toClass(rel);
+ return new ItemsImpl(toItems(getProxy().el.select(selector)));
+ }
+
+ @Override
+ public Items link() throws ClientException {
+ String selector = "link, a";
+ return new ItemsImpl(toItems(getProxy().el.select(selector)));
}
@Override
public Items form(String rel) throws ClientException {
- return new ItemsImpl(toItems(getProxy().el.select("form[data-rel="
+ rel + "]")));
+ String selector = "form[data-rel=" + rel + "], form" +
toClass(rel);
+ return new ItemsImpl(toItems(getProxy().el.select(selector)));
+ }
+
+ @Override
+ public Items form() throws ClientException {
+ String selector = "form";
+ return new ItemsImpl(toItems(getProxy().el.select(selector)));
}
@@ -356,11 +370,21 @@ public class MicrodataDocument implement
}
@Override
+ public Items link() throws ClientException {
+ return items.get(0).link();
+ }
+
+ @Override
public Items form(String rel) throws ClientException {
return items.get(0).form(rel);
}
@Override
+ public Items form() throws ClientException {
+ return items.get(0).form();
+ }
+
+ @Override
public String text() throws ClientException {
return items.get(0).text();
}