| | 72 | |
|---|
| | 73 | protected AttributeDefinition[] createAttributeDefinitions(AttributeDefinition[] oldAttributeDefinitions, |
|---|
| | 74 | String[] nodeAttributesArray, |
|---|
| | 75 | String[] edgeAttributesArray) |
|---|
| | 76 | { |
|---|
| | 77 | final int numAttributeDefinitions = oldAttributeDefinitions.length; |
|---|
| | 78 | AttributeDefinition[] newAttributeDefinitions = new AttributeDefinition [numAttributeDefinitions]; |
|---|
| | 79 | |
|---|
| | 80 | for (int ii = 0; ii < numAttributeDefinitions; ii++) |
|---|
| | 81 | { |
|---|
| | 82 | String id = oldAttributeDefinitions[ii].getID(); |
|---|
| | 83 | |
|---|
| | 84 | if(id.equals(Constants.nodeSizeField)) |
|---|
| | 85 | { |
|---|
| | 86 | newAttributeDefinitions[ii] = new BasicAttributeDefinition(Constants.nodeSizeField, |
|---|
| | 87 | "Node Size", "The label for the node size property", AttributeDefinition.STRING, |
|---|
| | 88 | nodeAttributesArray, nodeAttributesArray); |
|---|
| | 89 | } |
|---|
| | 90 | else if(id.equals(Constants.edgeSizeField)) |
|---|
| | 91 | { |
|---|
| | 92 | newAttributeDefinitions[ii] = new BasicAttributeDefinition(Constants.edgeSizeField, |
|---|
| | 93 | "Edge Size", "The label for the edge size property", |
|---|
| | 94 | AttributeDefinition.STRING, edgeAttributesArray, edgeAttributesArray); |
|---|
| | 95 | } |
|---|
| | 96 | else if(id.equals(Constants.nodeColorField)) |
|---|
| | 97 | { |
|---|
| | 98 | newAttributeDefinitions[ii] = new BasicAttributeDefinition(Constants.nodeColorField, |
|---|
| | 99 | "Node Color", "The label for the node color property", |
|---|
| | 100 | AttributeDefinition.STRING, nodeAttributesArray, nodeAttributesArray); |
|---|
| | 101 | } |
|---|
| | 102 | else if(id.equals(Constants.edgeColorField)) |
|---|
| | 103 | { |
|---|
| | 104 | newAttributeDefinitions[ii] = new BasicAttributeDefinition(Constants.edgeColorField, |
|---|
| | 105 | "Edge Color", "The label for the edge color property", |
|---|
| | 106 | AttributeDefinition.STRING, edgeAttributesArray, edgeAttributesArray); |
|---|
| | 107 | } |
|---|
| | 108 | else if(id.equals(Constants.ringColorField)) |
|---|
| | 109 | { |
|---|
| | 110 | newAttributeDefinitions[ii] = new BasicAttributeDefinition(Constants.ringColorField, |
|---|
| | 111 | "Ring Color", "The label for the ring color property", |
|---|
| | 112 | AttributeDefinition.STRING, nodeAttributesArray, nodeAttributesArray); |
|---|
| | 113 | } |
|---|
| | 114 | else if(id.equals(Constants.nodeShapeField)) |
|---|
| | 115 | { |
|---|
| | 116 | newAttributeDefinitions[ii] = new BasicAttributeDefinition(Constants.nodeShapeField, |
|---|
| | 117 | "Node Shape", "The label for the node shape property", |
|---|
| | 118 | AttributeDefinition.STRING, nodeAttributesArray, nodeAttributesArray); |
|---|
| | 119 | } |
|---|
| | 120 | else |
|---|
| | 121 | newAttributeDefinitions[ii] = oldAttributeDefinitions[ii]; |
|---|
| | 122 | } |
|---|
| | 123 | |
|---|
| | 124 | return newAttributeDefinitions; |
|---|
| | 125 | } |
|---|
| 76 | | BasicObjectClassDefinition definition; |
|---|
| 77 | | try { |
|---|
| 78 | | definition = new BasicObjectClassDefinition(parameters.getID(), parameters.getName(), parameters.getDescription(), parameters.getIcon(16)); |
|---|
| 79 | | } catch (IOException e) { |
|---|
| 80 | | definition = new BasicObjectClassDefinition(parameters.getID(), parameters.getName(), parameters.getDescription(), null); |
|---|
| | 132 | try |
|---|
| | 133 | { |
|---|
| | 134 | objectClassDefinition = new BasicObjectClassDefinition(parameters.getID(), |
|---|
| | 135 | parameters.getName(), parameters.getDescription(), parameters.getIcon(16)); |
|---|
| | 136 | } |
|---|
| | 137 | catch (IOException e) |
|---|
| | 138 | { |
|---|
| | 139 | objectClassDefinition = new BasicObjectClassDefinition(parameters.getID(), |
|---|
| | 140 | parameters.getName(), parameters.getDescription(), null); |
|---|
| 86 | | //System.err.println(oldDefinition.getID()); |
|---|
| | 146 | AttributeDefinition[] oldRequiredAttributes = |
|---|
| | 147 | parameters.getAttributeDefinitions(ObjectClassDefinition.REQUIRED); |
|---|
| | 148 | AttributeDefinition[] newRequiredAttributes = |
|---|
| | 149 | createAttributeDefinitions(oldRequiredAttributes, nodeAttributesArray, edgeAttributesArray); |
|---|
| | 150 | |
|---|
| | 151 | AttributeDefinition[] oldOptionalAttributes = |
|---|
| | 152 | parameters.getAttributeDefinitions(ObjectClassDefinition.OPTIONAL); |
|---|
| | 153 | AttributeDefinition[] newOptionalAttributes = |
|---|
| | 154 | createAttributeDefinitions(oldOptionalAttributes, nodeAttributesArray, edgeAttributesArray); |
|---|
| | 155 | |
|---|
| | 156 | for (int ii = 0; ii < newRequiredAttributes.length; ii++) |
|---|
| | 157 | objectClassDefinition.addAttributeDefinition(ObjectClassDefinition.REQUIRED, newRequiredAttributes[ii]); |
|---|
| | 158 | |
|---|
| | 159 | for (int ii = 0; ii < newOptionalAttributes.length; ii++) |
|---|
| | 160 | objectClassDefinition.addAttributeDefinition(ObjectClassDefinition.OPTIONAL, newOptionalAttributes[ii]); |
|---|
| 88 | | AttributeDefinition[] definitions = parameters.getAttributeDefinitions(ObjectClassDefinition.ALL); |
|---|
| 89 | | |
|---|
| 90 | | for(int ii = 0; ii < definitions.length; ii++) { |
|---|
| 91 | | String id = definitions[ii].getID(); |
|---|
| 92 | | //System.err.println(id); |
|---|
| 93 | | if(id.equals("nodeSize")) { |
|---|
| 94 | | definition.addAttributeDefinition(ObjectClassDefinition.REQUIRED, |
|---|
| 95 | | new BasicAttributeDefinition("nodeSize", "Node Size", "The label for the node size property", AttributeDefinition.STRING, nodeAttributesArray, nodeAttributesArray)); |
|---|
| 96 | | } else if(id.equals("edgeSize")) { |
|---|
| 97 | | definition.addAttributeDefinition(ObjectClassDefinition.REQUIRED, |
|---|
| 98 | | new BasicAttributeDefinition("edgeSize", "Edge Size", "The label for the edge size property", AttributeDefinition.STRING, edgeAttributesArray, edgeAttributesArray)); |
|---|
| 99 | | } else if(id.equals("nodeColor")) { |
|---|
| 100 | | definition.addAttributeDefinition(ObjectClassDefinition.REQUIRED, |
|---|
| 101 | | new BasicAttributeDefinition("nodeColor", "Node Color", "The label for the node color property", AttributeDefinition.STRING, nodeAttributesArray, nodeAttributesArray)); |
|---|
| 102 | | } else if(id.equals("edgeColor")) { |
|---|
| 103 | | definition.addAttributeDefinition(ObjectClassDefinition.REQUIRED, |
|---|
| 104 | | new BasicAttributeDefinition("edgeColor", "Edge Color", "The label for the edge color property", AttributeDefinition.STRING, edgeAttributesArray, edgeAttributesArray)); |
|---|
| 105 | | } else if(id.equals("ringColor")) { |
|---|
| 106 | | definition.addAttributeDefinition(ObjectClassDefinition.REQUIRED, |
|---|
| 107 | | new BasicAttributeDefinition("ringColor", "Ring Color", "The label for the ring color property", AttributeDefinition.STRING, nodeAttributesArray, nodeAttributesArray)); |
|---|
| 108 | | } else if(id.equals("nodeShape")) { |
|---|
| 109 | | definition.addAttributeDefinition(ObjectClassDefinition.REQUIRED, |
|---|
| 110 | | new BasicAttributeDefinition("nodeShape", "Node Shape", "The label for the node shape property", AttributeDefinition.STRING, nodeAttributesArray, nodeAttributesArray)); |
|---|
| 111 | | } else { |
|---|
| 112 | | definition.addAttributeDefinition(ObjectClassDefinition.REQUIRED, definitions[ii]); |
|---|
| 113 | | } |
|---|
| 114 | | } |
|---|
| 115 | | |
|---|
| 116 | | return definition; |
|---|
| | 162 | return objectClassDefinition; |
|---|