X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Facr%2Ffs%2FFsContent.java;h=55ef6ec46d89e7f4dbc01ef0b6ac2352c8901cf9;hb=904d7789c0e636c3b2e6a55fc6ec9ee333cc2023;hp=77c2f7a7585fe778834ec9735635b749905581d1;hpb=c0342975a37c70895c2e8f6b341d790700168d7f;p=lgpl%2Fargeo-commons.git
diff --git a/org.argeo.cms/src/org/argeo/cms/acr/fs/FsContent.java b/org.argeo.cms/src/org/argeo/cms/acr/fs/FsContent.java
index 77c2f7a75..55ef6ec46 100644
--- a/org.argeo.cms/src/org/argeo/cms/acr/fs/FsContent.java
+++ b/org.argeo.cms/src/org/argeo/cms/acr/fs/FsContent.java
@@ -24,6 +24,10 @@ import java.util.Set;
import java.util.concurrent.CompletableFuture;
import javax.xml.namespace.QName;
+import javax.xml.transform.Source;
+import javax.xml.transform.TransformerException;
+import javax.xml.transform.TransformerFactory;
+import javax.xml.transform.stream.StreamResult;
import org.argeo.api.acr.Content;
import org.argeo.api.acr.ContentName;
@@ -327,6 +331,7 @@ public class FsContent extends AbstractContent implements ProvidedContent {
/*
* READ / WRITE
*/
+ @SuppressWarnings("unchecked")
public CompletableFuture write(Class clss) {
if (isContentClass(CrName.collection.qName())) {
throw new IllegalStateException("Cannot directly write to a collection");
@@ -341,7 +346,21 @@ public class FsContent extends AbstractContent implements ProvidedContent {
}
});
return (CompletableFuture) res;
+ } else if (Source.class.isAssignableFrom(clss)) {
+ CompletableFuture