Class GEXFExporter<V,​E>

    • Field Detail

      • LABEL_ATTRIBUTE_NAME

        private static final java.lang.String LABEL_ATTRIBUTE_NAME
        See Also:
        Constant Field Values
      • WEIGHT_ATTRIBUTE_NAME

        private static final java.lang.String WEIGHT_ATTRIBUTE_NAME
        See Also:
        Constant Field Values
      • TYPE_ATTRIBUTE_NAME

        private static final java.lang.String TYPE_ATTRIBUTE_NAME
        See Also:
        Constant Field Values
      • VERTEX_RESERVED_ATTRIBUTES

        private static final java.util.Set<java.lang.String> VERTEX_RESERVED_ATTRIBUTES
      • EDGE_RESERVED_ATTRIBUTES

        private static final java.util.Set<java.lang.String> EDGE_RESERVED_ATTRIBUTES
      • totalVertexAttributes

        private int totalVertexAttributes
      • totalEdgeAttributes

        private int totalEdgeAttributes
      • creator

        private java.lang.String creator
      • keywords

        private java.lang.String keywords
      • description

        private java.lang.String description
    • Constructor Detail

      • GEXFExporter

        public GEXFExporter()
        Constructs a new exporter with integer id providers for the vertices and the edges.
      • GEXFExporter

        public GEXFExporter​(java.util.function.Function<V,​java.lang.String> vertexIdProvider,
                            java.util.function.Function<E,​java.lang.String> edgeIdProvider)
        Constructs a new exporter.
        Parameters:
        vertexIdProvider - for generating vertex identifiers. Must not be null.
        edgeIdProvider - for generating edge identifiers. Must not be null.
    • Method Detail

      • isParameter

        public boolean isParameter​(GEXFExporter.Parameter p)
        Return if a particular parameter of the exporter is enabled
        Parameters:
        p - the parameter
        Returns:
        true if the parameter is set, false otherwise
      • setParameter

        public void setParameter​(GEXFExporter.Parameter p,
                                 boolean value)
        Set the value of a parameter of the exporter
        Parameters:
        p - the parameter
        value - the value to set
      • registerAttribute

        public void registerAttribute​(java.lang.String name,
                                      GEXFExporter.AttributeCategory category,
                                      GEXFAttributeType type)
        Register a GEXF Attribute
        Parameters:
        name - the attribute name
        category - the attribute category
        type - the attribute type
      • registerAttribute

        public void registerAttribute​(java.lang.String name,
                                      GEXFExporter.AttributeCategory category,
                                      GEXFAttributeType type,
                                      java.lang.String defaultValue)
        Register a GEXF Attribute
        Parameters:
        name - the attribute name
        category - the attribute category
        type - the attribute type
        defaultValue - default value
      • registerAttribute

        public void registerAttribute​(java.lang.String name,
                                      GEXFExporter.AttributeCategory category,
                                      GEXFAttributeType type,
                                      java.lang.String defaultValue,
                                      java.lang.String options)
        Register a GEXF Attribute
        Parameters:
        name - the attribute name
        category - the attribute category
        type - the attribute type
        defaultValue - default value
        options - the possible options
      • unregisterAttribute

        public void unregisterAttribute​(java.lang.String name,
                                        GEXFExporter.AttributeCategory category)
        Unregister a GraphML-Attribute
        Parameters:
        name - the attribute name
        category - the attribute category
      • getCreator

        public java.lang.String getCreator()
        Get the creator for the meta field.
        Returns:
        the creator for the meta field
      • setCreator

        public void setCreator​(java.lang.String creator)
        Set the creator for the meta field.
        Parameters:
        creator - the creator for the meta field
      • getKeywords

        public java.lang.String getKeywords()
        Get the keywords for the meta field.
        Returns:
        the keywords for the meta field
      • setKeywords

        public void setKeywords​(java.lang.String keywords)
        Set the keywords for the meta field.
        Parameters:
        keywords - the keywords for the meta field
      • getDescription

        public java.lang.String getDescription()
        Get the description for the meta field.
        Returns:
        the description for the meta field
      • setDescription

        public void setDescription​(java.lang.String description)
        Set the description for the meta field.
        Parameters:
        description - the description for the meta field
      • exportGraph

        public void exportGraph​(Graph<V,​E> g,
                                java.io.Writer writer)
        Exports a graph in GraphML format.
        Specified by:
        exportGraph in interface GraphExporter<V,​E>
        Parameters:
        g - the graph
        writer - the writer to export the graph
        Throws:
        ExportException - in case any error occurs during export
      • writeHeader

        private void writeHeader​(javax.xml.transform.sax.TransformerHandler handler)
                          throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • writeMeta

        private void writeMeta​(javax.xml.transform.sax.TransformerHandler handler)
                        throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • writeGraphStart

        private void writeGraphStart​(javax.xml.transform.sax.TransformerHandler handler,
                                     Graph<V,​E> g)
                              throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • writeGraphEnd

        private void writeGraphEnd​(javax.xml.transform.sax.TransformerHandler handler)
                            throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • writeFooter

        private void writeFooter​(javax.xml.transform.sax.TransformerHandler handler)
                          throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • writeVertexAttributes

        private void writeVertexAttributes​(javax.xml.transform.sax.TransformerHandler handler)
                                    throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • writeEdgeAttributes

        private void writeEdgeAttributes​(javax.xml.transform.sax.TransformerHandler handler)
                                  throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • writeAttribute

        private void writeAttribute​(javax.xml.transform.sax.TransformerHandler handler,
                                    java.lang.String name,
                                    GEXFExporter.AttributeDetails details)
                             throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • writeVertexAttributeValues

        private void writeVertexAttributeValues​(javax.xml.transform.sax.TransformerHandler handler,
                                                V v)
                                         throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • writeEdgeAttributeValues

        private void writeEdgeAttributeValues​(javax.xml.transform.sax.TransformerHandler handler,
                                              E e)
                                       throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • writeAttributeValue

        private void writeAttributeValue​(javax.xml.transform.sax.TransformerHandler handler,
                                         java.lang.String key,
                                         java.lang.String value)
                                  throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • writeVertices

        private void writeVertices​(javax.xml.transform.sax.TransformerHandler handler,
                                   Graph<V,​E> g)
                            throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • writeEdges

        private void writeEdges​(javax.xml.transform.sax.TransformerHandler handler,
                                Graph<V,​E> g)
                         throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException