2016-08-01 8 views
0

Hallo Groovy Experten,Wert in einer Sammlung finden und weist oben eine Variable mit groovy

ich den unten Befehl verwenden alle ODI Dataserver zu bekommen.

def PSchema=DServer.getPhysicalSchemas(); 

Wenn ich drucken Sie die PSchema Variable I die folgenden Werte zu bekommen.

[oracle.odi.domain.topology.OdiPhysicalSchema ABC.X1, oracle.odi.domain.topology.OdiPhysicalSchema ABC.X2] 

Was ich versuche, hier zu erreichen, werde ich X1 oder X2 während der Laufzeit werden vorbei ...
Und dann will ich mit dem PSchema Ergebnis diesen Wert bestätigen und den Druck den folgenden Wert:

oracle.odi.domain.topology.OdiPhysicalSchema ABC.X2 

ich habe versucht, die folgenden Optionen:

def PSchema44 = PSchema11.findIndexValues { it =~ /(X1)/ } 
def pl=PSchema11.collect{if(it.contains ('X1)){return it}} 

ich für lo versucht op zu überprüfen, ob die Werte korrekt ..result gedruckt zu werden, ist in Ordnung:

for (item in PSchema11) 
{ 
    println item 
} 
+0

die richtige Syntax für Collect sollte 'def pl = PSchema11.collect {it.contains ('X1')}' haben Sie das versucht? – OsaSoft

+0

empfing den folgenden Fehler ** groovy.lang.MissingMethodException: Keine Signatur der Methode: oracle.odi.domain.topology.OdiPhysicalSchema.contains() gilt für Argumenttypen: (java.lang.String) Werte: [X1] Mögliche Lösungen: toString(), toString(), toString(), notify() ** – Ananda

+0

Blick in die Dokumentation, sieht aus wie 'getPhysicalSchemas()' eine nicht änderbare Sammlung von IPhysicalSchemas Was genau versuchen Sie zu erreichen? Wenn ich richtig verstehe, übergebe ich zur Laufzeit X1 oder X2 und möchte den übergebenen Wert aus der von 'getPhysicalSchemas()' zurückgegebenen Sammlung auswählen? – OsaSoft

Antwort

1

Unter der Annahme, ‚X1‘ und ‚X2‘ sind die Namen für das physikalische Schema, sollten Sie in der Lage sein, so etwas zu tun:

auch ich denke, Sie sind neu in Groovy, ich schlage vor, Sie lesen sich auf Syntax und Namenskonventionen. Zum Beispiel sollten Variablennamen immer mit einem Kleinbuchstaben beginnen

+0

Vielen Dank! Kannst du bitte Vorschlagsstandard Namenskonvention wenn du welche hast! – Ananda

+0

Für einige Groovy Style Konventionen, siehe http://groovy-lang.org/style-guide.html. Wie bei der Benennung von Konventionen, so ziemlich wie bei Java-Namenskonventionen, siehe http: //www.javatpoint.com/Java-Namenskonventionen – OsaSoft