![JAR search and dependency download from the Maven repository](/logo.png)
org.eclipse.elk.graph.util.GraphIdentifierGenerator.class Maven / Gradle / Ivy
???? 7 3org/eclipse/elk/graph/util/GraphIdentifierGenerator java/lang/Object graph Lorg/eclipse/elk/graph/ElkNode; validate Z generate unique random Ljava/util/Random;
currentIDs [I existingIdentifiers Ljava/util/Set; Signature #Ljava/util/Set; forGraph V(Lorg/eclipse/elk/graph/ElkNode;)Lorg/eclipse/elk/graph/util/GraphIdentifierGenerator; Code
"(Lorg/eclipse/elk/graph/ElkNode;)V LineNumberTable LocalVariableTable assertValid 7()Lorg/eclipse/elk/graph/util/GraphIdentifierGenerator; this 5Lorg/eclipse/elk/graph/util/GraphIdentifierGenerator; assertExists $ assertUnique '
execute ()V +
- . / validateIdentifiers "(Lorg/eclipse/emf/ecore/EObject;)V
1 2 3 generateIdentifiers V(Lorg/eclipse/emf/ecore/EObject;)Lorg/eclipse/elk/graph/util/GraphIdentifierGenerator;
5 6 3 assertAllIdsUnique
StackMapTable
9 ) ;
= ? > ?org/eclipse/elk/graph/util/GraphIdentifierGenerator$ElementType @ A values D()[Lorg/eclipse/elk/graph/util/GraphIdentifierGenerator$ElementType; C
E java/util/HashSet
D 9 H J L K org/eclipse/elk/graph/ElkNode M N eAllContents ,()Lorg/eclipse/emf/common/util/TreeIterator; P R Q java/util/Iterator S T next ()Ljava/lang/Object; V org/eclipse/emf/ecore/EObject X %org/eclipse/elk/graph/ElkGraphElement W Z [ \
getIdentifier ()Ljava/lang/String;
^ ` _ java/lang/String a \ trim
^ c d e isEmpty ()Z g i h
java/util/Set j k add (Ljava/lang/Object;)Z m $org/eclipse/elk/graph/ElkEdgeSection l Z P p q e hasNext iterator Ljava/util/Iterator; currentEObject Lorg/eclipse/emf/ecore/EObject; element 'Lorg/eclipse/elk/graph/ElkGraphElement; section &Lorg/eclipse/elk/graph/ElkEdgeSection; LocalVariableTypeTable 5Ljava/util/Iterator; } 5org/eclipse/elk/graph/util/GraphIdentifierGenerator$1
| ? 8(Lorg/eclipse/elk/graph/util/GraphIdentifierGenerator;)V
| ? ? ? doSwitch 3(Lorg/eclipse/emf/ecore/EObject;)Ljava/lang/Object; validateIdentifier *(Lorg/eclipse/elk/graph/ElkGraphElement;)V
? ? ? &(Ljava/lang/String;)Ljava/lang/String; W ? ? ?
setIdentifier (Ljava/lang/String;)V validIdentifier Ljava/lang/String; )(Lorg/eclipse/elk/graph/ElkEdgeSection;)V l ?
? ? ? com/google/common/base/Strings ? ?
isNullOrEmpty (Ljava/lang/String;)Z
^ ? ? ? toCharArray ()[C
^ ? ? ([C)V
identifier valid chars [C i I ? ? 5org/eclipse/elk/graph/util/GraphIdentifierGenerator$2
?
? ? setIdentifierIfMissing k(Lorg/eclipse/elk/graph/ElkGraphElement;Lorg/eclipse/elk/graph/util/GraphIdentifierGenerator$ElementType;)V
? ? ? nextIdentifier U(Lorg/eclipse/elk/graph/util/GraphIdentifierGenerator$ElementType;)Ljava/lang/String; elementType ALorg/eclipse/elk/graph/util/GraphIdentifierGenerator$ElementType; id = ? ? ? EDGE_SECTION ? java/lang/StringBuilder = ? ? ?
elementPrefix
^ ? ? ? valueOf &(Ljava/lang/Object;)Ljava/lang/String;
? ? ?
= ? ? ? ordinal ()I
? ? ? ? append (I)Ljava/lang/StringBuilder;
? ? ? \ toString g ? ? k contains
? ? ? com/google/common/collect/Sets ? ?
newHashSet ()Ljava/util/HashSet; U L
? ? ? #com/google/common/collect/Iterators ? ? filter W(Ljava/util/Iterator;Ljava/lang/Class;)Lcom/google/common/collect/UnmodifiableIterator; ? _g
? ? ? ? -(Ljava/lang/String;)Ljava/lang/StringBuilder;
? ? \ fourDigitPaddedRandomNumber knownIds elementIt e newId =Ljava/util/Iterator; ? java/util/Random
? 9
? ? ? ? nextInt (I)I
? ? ? java/lang/Integer ? ? (I)Ljava/lang/String;
? ? ? padZeroes '(Ljava/lang/String;I)Ljava/lang/String; rand
^ ? ? ? length ? java/lang/StringBuffer
? (I)V 0
? ? ,(Ljava/lang/String;)Ljava/lang/StringBuffer;
? ? s r Ljava/lang/StringBuffer;
SourceFile GraphIdentifierGenerator.java InnerClasses ElementType NestMembers 1
3 ? Y*? ? 5 5 *? *?
<