public Node asJenaNode()

in commons-rdf-jena/src/main/java/org/apache/commons/rdf/jena/JenaRDF.java [478:505]


    public Node asJenaNode(final RDFTerm term) {
        if (term == null) {
            return null;
        }
        if (term instanceof JenaRDFTerm) {
            // TODO: What if it's a JenaBlankNodeImpl with
            // a different salt? Do we need to rewrite the
            // jena blanknode identifier?
            return ((JenaRDFTerm) term).asJenaNode();
        }

        if (term instanceof IRI) {
            return NodeFactory.createURI(((IRI) term).getIRIString());
        }

        if (term instanceof Literal) {
            final Literal lit = (Literal) term;
            final RDFDatatype dt = NodeFactory.getType(lit.getDatatype().getIRIString());
            final String lang = lit.getLanguageTag().orElse("");
            return NodeFactory.createLiteral(lit.getLexicalForm(), lang, dt);
        }

        if (term instanceof BlankNode) {
            final String id = ((BlankNode) term).uniqueReference();
            return NodeFactory.createBlankNode(id);
        }
        throw new ConversionException("Not a concrete RDF Term: " + term);
    }