
com.github.fluentxml4j.FluentXml Maven / Gradle / Ivy
package com.github.fluentxml4j;
import com.github.fluentxml4j.internal.parse.FluentXmlParser;
import com.github.fluentxml4j.internal.query.FluentQuery;
import com.github.fluentxml4j.internal.serialize.FluentXmlSerializer;
import com.github.fluentxml4j.internal.transform.FluentXmlTransformer;
import com.github.fluentxml4j.internal.validate.FluentXmlValidator;
import com.github.fluentxml4j.parse.FromNode;
import com.github.fluentxml4j.parse.ParseNode;
import com.github.fluentxml4j.query.QueryFromNode;
import com.github.fluentxml4j.serialize.SerializeNode;
import com.github.fluentxml4j.transform.TransformNode;
import com.github.fluentxml4j.validate.ValidateNode;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.xml.sax.InputSource;
import javax.xml.bind.JAXBContext;
import javax.xml.stream.XMLEventReader;
import javax.xml.stream.XMLStreamReader;
import java.io.File;
import java.io.InputStream;
import java.io.Reader;
import java.net.URL;
import java.util.function.Supplier;
/**
* This is the main entry point for users of FluentXml4J.
*/
public class FluentXml
{
static Supplier fluentXmlParser = supplierFor(new FluentXmlParser());
static Supplier fluentXmlSerializer = supplierFor(new FluentXmlSerializer());
static Supplier fluentQuery = supplierFor(new FluentQuery());
static Supplier fluentXmlTransformer = supplierFor(new FluentXmlTransformer());
static Supplier fluentXmlValidator = supplierFor(new FluentXmlValidator());
private FluentXml()
{
}
private static Supplier supplierFor(T defaultInstance)
{
return () -> defaultInstance;
}
public static ParseNode parse(File in)
{
return fluentXmlParser.get().parse(in);
}
public static ParseNode parse(InputStream in)
{
return fluentXmlParser.get().parse(in);
}
public static ParseNode parse(Reader in)
{
return fluentXmlParser.get().parse(in);
}
public static ParseNode parse(InputSource in)
{
return fluentXmlParser.get().parse(in);
}
public static ParseNode parse(URL in)
{
return fluentXmlParser.get().parse(in);
}
public static FromNode from(File in)
{
return () -> fluentXmlParser.get().parse(in);
}
public static FromNode from(InputSource in)
{
return () -> fluentXmlParser.get().parse(in);
}
public static FromNode from(InputStream in)
{
return () -> fluentXmlParser.get().parse(in);
}
public static FromNode from(Reader in)
{
return () -> fluentXmlParser.get().parse(in);
}
public static FromNode from(URL in)
{
return () -> fluentXmlParser.get().parse(in);
}
public static QueryFromNode from(Document doc)
{
return fluentQuery.get().from(doc);
}
public static QueryFromNode from(Node node)
{
return fluentQuery.get().from(node);
}
public static SerializeNode serialize(Document doc)
{
return fluentXmlSerializer.get().serialize(doc);
}
public static SerializeNode serialize(JAXBContext jaxbContext, Object object)
{
return fluentXmlSerializer.get().serialize(jaxbContext, object);
}
public static TransformNode transform(URL url)
{
return fluentXmlTransformer.get().transform(url);
}
public static TransformNode transform(File file)
{
return fluentXmlTransformer.get().transform(file);
}
public static TransformNode transform(Document doc)
{
return fluentXmlTransformer.get().transform(doc);
}
public static TransformNode transform(InputStream in)
{
return fluentXmlTransformer.get().transform(in);
}
public static TransformNode transform(XMLStreamReader in)
{
return fluentXmlTransformer.get().transform(in);
}
public static TransformNode transform(XMLEventReader in)
{
return fluentXmlTransformer.get().transform(in);
}
public static TransformNode transform(JAXBContext jaxbContext, Object object)
{
return fluentXmlTransformer.get().transform(jaxbContext, object);
}
public static ValidateNode validate(Document doc)
{
return fluentXmlValidator.get().validate(doc);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy