Mercurial > hg > truffle
changeset 22404:23d2b5513c83
Fixing API error: GraphPrintVisitor shouldn't expose internal API class in an API method. When at it deprecating all protected methods, as GraphPrintVisitor usages don't indicate somebody should be subclassing it at all.
author | Jaroslav Tulach <jaroslav.tulach@oracle.com> |
---|---|
date | Fri, 20 Nov 2015 17:27:42 +0100 |
parents | 5033b980cc68 |
children | fd53ccebb10b |
files | truffle/com.oracle.truffle.api/snapshot.sigtest truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/nodes/GraphPrintVisitor.java |
diffstat | 2 files changed, 46 insertions(+), 18 deletions(-) [+] |
line wrap: on
line diff
--- a/truffle/com.oracle.truffle.api/snapshot.sigtest Fri Nov 20 17:13:09 2015 +0100 +++ b/truffle/com.oracle.truffle.api/snapshot.sigtest Fri Nov 20 17:27:42 2015 +0100 @@ -596,7 +596,7 @@ innr public abstract interface static !annotation CustomGraphPrintHandler innr public abstract interface static !annotation NullGraphPrintHandler innr public abstract interface static GraphPrintHandler -meth protected org.w3c.dom.Element getElementByObject(java.lang.Object) +meth protected java.lang.Object getElementByObject(java.lang.Object) meth protected void connectNodes(java.lang.Object,java.lang.Object,java.lang.String) meth protected void createElementForNode(java.lang.Object) meth protected void setNodeProperty(java.lang.Object,java.lang.String,java.lang.Object)
--- a/truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/nodes/GraphPrintVisitor.java Fri Nov 20 17:13:09 2015 +0100 +++ b/truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/nodes/GraphPrintVisitor.java Fri Nov 20 17:27:42 2015 +0100 @@ -142,7 +142,7 @@ private static final XMLOutputFactory XML_OUTPUT_FACTORY = XMLOutputFactory.newInstance(); private final XMLStreamWriter xmlstream; - protected XMLImpl(OutputStream outputStream) { + XMLImpl(OutputStream outputStream) { try { this.xmlstream = XML_OUTPUT_FACTORY.createXMLStreamWriter(outputStream); } catch (XMLStreamException | FactoryConfigurationError e) { @@ -435,25 +435,37 @@ } } - protected NodeElement getElementByObject(Object obj) { + /** + * @deprecated to be removed + */ + @Deprecated + protected Object getElementByObject(Object obj) { + return getElementByObjectImpl(obj); + } + + final NodeElement getElementByObjectImpl(Object obj) { return nodeMap.get(obj); } + /** + * @deprecated to be removed + */ + @Deprecated protected void createElementForNode(Object node) { boolean exists = nodeMap.containsKey(node); if (!exists) { int nodeId = !exists ? oldOrNextId(node) : nextId(); nodeMap.put(node, new NodeElement(nodeId)); - setNodeProperty(node, "name", node.getClass().getSimpleName().replaceFirst("Node$", "")); + setNodePropertyImpl(node, "name", node.getClass().getSimpleName().replaceFirst("Node$", "")); NodeInfo nodeInfo = node.getClass().getAnnotation(NodeInfo.class); if (nodeInfo != null) { - setNodeProperty(node, "cost", nodeInfo.cost()); + setNodePropertyImpl(node, "cost", nodeInfo.cost()); if (!nodeInfo.shortName().isEmpty()) { - setNodeProperty(node, "shortName", nodeInfo.shortName()); + setNodePropertyImpl(node, "shortName", nodeInfo.shortName()); } } - setNodeProperty(node, "class", node.getClass().getSimpleName()); + setNodePropertyImpl(node, "class", node.getClass().getSimpleName()); if (node instanceof Node) { readNodeProperties((Node) node); copyDebugProperties((Node) node); @@ -461,15 +473,23 @@ } } + /** + * @deprecated to be removed + */ + @Deprecated protected void setNodeProperty(Object node, String propertyName, Object value) { - NodeElement nodeElem = getElementByObject(node); + setNodePropertyImpl(node, propertyName, value); + } + + final void setNodePropertyImpl(Object node, String propertyName, Object value) { + NodeElement nodeElem = getElementByObjectImpl(node); nodeElem.getProperties().put(propertyName, value); } private void copyDebugProperties(Node node) { Map<String, Object> debugProperties = node.getDebugProperties(); for (Map.Entry<String, Object> property : debugProperties.entrySet()) { - setNodeProperty(node, property.getKey(), property.getValue()); + setNodePropertyImpl(node, property.getKey(), property.getValue()); } } @@ -478,17 +498,25 @@ for (NodeFieldAccessor field : fields) { if (field.getKind() == NodeFieldKind.DATA) { String key = field.getName(); - if (!getElementByObject(node).getProperties().containsKey(key)) { + if (!getElementByObjectImpl(node).getProperties().containsKey(key)) { Object value = field.loadValue(node); - setNodeProperty(node, key, value); + setNodePropertyImpl(node, key, value); } } } } + /** + * @deprecated to be removed + */ + @Deprecated protected void connectNodes(Object a, Object b, String label) { - NodeElement fromNode = getElementByObject(a); - NodeElement toNode = getElementByObject(b); + connectNodesImpl(a, b, label); + } + + final void connectNodesImpl(Object a, Object b, String label) { + NodeElement fromNode = getElementByObjectImpl(a); + NodeElement toNode = getElementByObjectImpl(b); if (fromNode == null || toNode == null) { return; } @@ -510,7 +538,7 @@ } // if node is visited once again, skip - if (getElementByObject(node) != null) { + if (getElementByObjectImpl(node) != null) { return this; } @@ -593,19 +621,19 @@ } public void connectNodes(Object node, Object child) { - GraphPrintVisitor.this.connectNodes(node, child, null); + GraphPrintVisitor.this.connectNodesImpl(node, child, null); } public void connectNodes(Object node, Object child, String label) { - GraphPrintVisitor.this.connectNodes(node, child, label); + GraphPrintVisitor.this.connectNodesImpl(node, child, label); } public void setNodeProperty(Object node, String propertyName, Object value) { - GraphPrintVisitor.this.setNodeProperty(node, propertyName, value); + GraphPrintVisitor.this.setNodePropertyImpl(node, propertyName, value); } public boolean visited(Object node) { - return GraphPrintVisitor.this.getElementByObject(node) != null; + return GraphPrintVisitor.this.getElementByObjectImpl(node) != null; } }