Beispiel für die ExternalCallout-API
1.
Erstellen Sie eine Datei namens GetCreditScore.java mit den folgenden Inhalten. Diese Datei setzt voraus, dass es eine Klasse namens ScoreQueryUtility gibt, die einen Score aus einer Modellanwendung abruft.
import java.util.Map;
import com.unicacorp.interact.session.AudienceId;
import com.unicacorp.interact.flowchart.macrolang.storedobjs.IAffiniumExternalCallout;
import com.unicacorp.interact.flowchart.macrolang.storedobjs.CalloutException;
import java.util.Random;

public class GetCreditScore implements IAffiniumExternalCallout
{
// die Klasse, die die Logik zum Abfragen eines externen Systems für die Kreditbewertung eines Kunden hat
private static ScoreQueryUtility scoreQueryUtility;
public void initialize(Map<String, String> configurationData) throws CalloutException
{
// configurationData hat die Schlüssel/Wert-Paare, die für die Umgebung, in der der Server läuft, spezifisch sind
// hier scoreQueryUtility initialisieren
}

public void shutdown(Map<String, String> configurationData) throws CalloutException
{
// hier scoreQueryUtility beenden
}

public int getNumberOfArguments()
{
// keine anderen Argumente als die ID des Kunden erwarten
return 0;
}

public List<String> getValue(AudienceId audienceId, Map<String, String> configurationData,
Object... arguments) throws CalloutException
{
Long customerId = (Long) audienceId.getComponentValue("Customer");
// nun scoreQueryUtility für die Kreditbewertung der customerId abfragen
Double score = scoreQueryUtility.query(customerId);
String str = Double.toString(score);
List<String> list = new LinkedList<String>();
list.add(str);
return list;
}
}
2.
Kompilieren Sie GetCreditScore.java zu GetCreditScore.class.
3.
Erstellen Sie eine JAR-Datei namens creditscore.jar, die GetCreditScore.class und die anderen verwendeten Klassendateien enthält.
4.
5.
Erstellen Sie ein externes Callout mit Namen GetCreditScore und Klassenpfad als /data/interact/creditscore.jar in der Kategorie externalCallouts auf der Seite "Konfigurationen verwalten".
6.
In einem interaktiven Ablaufdiagramm kann das Callout als EXTERNALCALLOUT(‘GetCreditScore’) verwendet werden.