Package org.gephi.io.importer.api

Examples of org.gephi.io.importer.api.NodeDraft


        }
        return tokens.toArray(new String[]{});
    }

    private void addNode(String[] nodeData) {
        NodeDraft node;
        String id = nodeData[0];
        if (!container.nodeExists(id)) {
            node = container.factory().newNodeDraft(id);
            container.addNode(node);
        } else {
            node = container.getNode(id);
        }
        for (int i = 1; i < nodeDataColumns.length; i++) {
            node.parseAndSetValue(nodeDataColumns[i].getId(), nodeData[i]);
        }
    }
View Full Code Here


            node.parseAndSetValue(nodeDataColumns[i].getId(), nodeData[i]);
        }
    }

    private void addNodeProperties(String[] nodeProperties) {
        NodeDraft node;
        String id = nodeProperties[0];
        if (!container.nodeExists(id)) {
            node = container.factory().newNodeDraft(id);
            container.addNode(node);
        } else {
            node = container.getNode(id);
        }
        int i = 0;
        try {
            for (i = 1; i < nodeProperties.length; i++) {
                switch (nodeDataAttributes[i]) {
                    case NODE_X:
                        node.setX(Float.parseFloat(nodeProperties[i]));
                        break;
                    case NODE_Y:
                        node.setY(Float.parseFloat(nodeProperties[i]));
                        break;
                    case NODE_COLOR:
                        // Add just shades of red as NetDraw VNA is not specific
                        // about color.
                        node.setColor(Integer.parseInt(nodeProperties[i]), 0, 0);
                        break;
                    case NODE_SIZE:
                        node.setSize(Float.parseFloat(nodeProperties[i]));
                        break;
                    case NODE_SHORT_LABEL:
                        node.setLabel(nodeProperties[i]);
                        break;
                }
            }
        } catch (NumberFormatException e) {
            report.logIssue(new Issue("Error parsing numerical value at '" + nodeProperties[i] + "'.", Issue.Level.WARNING));
View Full Code Here

            report.logIssue(new Issue("Error parsing numerical value at '" + nodeProperties[i] + "'.", Issue.Level.WARNING));
        }
    }

    private void addEdge(String[] edgeData) {
        NodeDraft sourceNode;
        if (!container.nodeExists(edgeData[0])) {
            sourceNode = container.factory().newNodeDraft(edgeData[0]);
            container.addNode(sourceNode);
        } else {
            sourceNode = container.getNode(edgeData[0]);
        }
        NodeDraft targetNode;
        if (!container.nodeExists(edgeData[1])) {
            targetNode = container.factory().newNodeDraft(edgeData[1]);
            container.addNode(targetNode);
        } else {
            targetNode = container.getNode(edgeData[1]);
View Full Code Here

        double tick = 1.0;
        ColumnDraft col = container.addNodeColumn("score", Integer.class, true);

        NodeDraft[] nodeArray = new NodeDraft[numberOfNodes];
        for (int i = 0; i < numberOfNodes; i++) {
            NodeDraft nodeDraft = container.factory().newNodeDraft("n" + i);
            container.addNode(nodeDraft);

            Random r = new Random();
            for (double t = start; t < end; t += tick) {
                if (r.nextBoolean()) {
                    nodeDraft.addTimestamp(t);
                    nodeDraft.setValue(col.getId(), r.nextInt(5), t);
                }
            }

            nodeArray[i] = nodeDraft;
        }

        if (wiringProbability > 0) {
//            AttributeColumn oldWeight = container.getAttributeModel().getEdgeTable().getColumn(PropertiesColumn.EDGE_WEIGHT.getIndex());
//            AttributeColumn weightCol = container.getAttributeModel().getEdgeTable().replaceColumn(oldWeight, PropertiesColumn.EDGE_WEIGHT.getId(), PropertiesColumn.EDGE_WEIGHT.getTitle(), AttributeType.DYNAMIC_FLOAT, AttributeOrigin.PROPERTY, null);

            for (int i = 0; i < numberOfNodes - 1; i++) {
                NodeDraft node1 = nodeArray[i];
                for (int j = i + 1; j < numberOfNodes; j++) {
                    NodeDraft node2 = nodeArray[j];
                    if (random.nextDouble() < wiringProbability) {
                        EdgeDraft edgeDraft = container.factory().newEdgeDraft();
                        edgeDraft.setSource(node1);
                        edgeDraft.setTarget(node2);
View Full Code Here

        int progressUnit = 0;
        Random random = new Random();

        NodeDraft[] nodeArray = new NodeDraft[numberOfNodes];
        for (int i = 0; i < numberOfNodes && !cancel; i++) {
            NodeDraft nodeDraft = container.factory().newNodeDraft();
            container.addNode(nodeDraft);
            nodeArray[i] = nodeDraft;
            Progress.progress(progress, ++progressUnit);
        }

        if (wiringProbability > 0) {
            for (int i = 0; i < numberOfNodes - 1 && !cancel; i++) {
                NodeDraft node1 = nodeArray[i];
                for (int j = i + 1; j < numberOfNodes && !cancel; j++) {
                    NodeDraft node2 = nodeArray[j];
                    if (random.nextDouble() < wiringProbability) {
                        EdgeDraft edgeDraft = container.factory().newEdgeDraft();
                        edgeDraft.setSource(node1);
                        edgeDraft.setTarget(node2);
                        container.addEdge(edgeDraft);
View Full Code Here

                }
            }
        }

        //process after filter
        NodeDraft sourceNode = null, targetNode = null;
        //construct the source node
        InternetAddress fromAddress = null;
        try {
            Address[] froms = msg.getFrom();
            if (froms == null || froms.length == 0) {
                report.log("message " + msg + "don't have from address");
                return;
            }
            fromAddress = (InternetAddress) froms[0];
        } catch (MessagingException e) {
            try {
                fromAddress = constructFromAddress(msg);
            } catch (MessagingException ex) {
                report.log("Can't parse message :" + msg.toString());
                return;
            }
        }

        //address string
        if (fromAddress == null) {
            report.log("From address of message " + msg + " is null.");
            return;
        }
        if (fromAddress.getAddress() == null || fromAddress.getAddress().isEmpty()) {
            report.log("Can't parse from message " + msg + ".");
            return;
        }
        if (fromAddress.getPersonal() == null || fromAddress.getPersonal().isEmpty()) {
            try {
                fromAddress.setPersonal(fromAddress.getAddress());
            } catch (UnsupportedEncodingException ex) {
                report.log("message " + msg + " cann't be parsed.");
                return;
            }
        }

        //get the codec type
        String codecType = null;
        String contentType = null;
        try {
            contentType = msg.getContentType();
        } catch (MessagingException ex) {
            report.log("message:" + msg + ",can't get the content type of the email");
            return;
            //log
        }
        StringTokenizer s = new StringTokenizer(contentType, ";");
        while (s.hasMoreTokens()) {
            String temp = s.nextToken();
            if (temp.contains("charset")) {
                codecType = temp.substring(9, temp.length());
            }
        }
        if (contentType == null || contentType.isEmpty()) {
            contentType = "UTF-8";
        }
        if (codecType == null || codecType.isEmpty()) {
            codecType = "UTF-8";
        }

        if (!container.nodeExists(fromAddress.getAddress())) {
            //whether use one node to display the same display name
            boolean exist = false;
            if (isUseOneNodeIfSameDisplayName()) {
                if (container instanceof ContainerUnloader) {
                    ContainerUnloader con = (ContainerUnloader) container;
                    Collection<? extends NodeDraftGetter> allNodes = con.getNodes();
                    for (NodeDraftGetter node : allNodes) {
                        if (node.getLabel() == null || node.getLabel().isEmpty()) {
                            continue;
                        }
                        if (node.getLabel().equals(fromAddress.getPersonal())) {
                            sourceNode = container.getNode(node.getId());
                            exist = true;
                            break;
                        }
                    }
                }
            }
            if (!exist || !isUseOneNodeIfSameDisplayName()) {
                sourceNode = container.factory().newNodeDraft();
                sourceNode.setId(Utilities.codecTranslate(codecType, fromAddress.getAddress()));
                sourceNode.setLabel(Utilities.codecTranslate(codecType, fromAddress.getPersonal()));
                container.addNode(sourceNode);
            }
        } else {
            sourceNode = container.getNode(fromAddress.getAddress());
        }
View Full Code Here

TOP

Related Classes of org.gephi.io.importer.api.NodeDraft

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.