Friday, February 6, 2015

Oracle SOA : Get Composite instance details based on Sensor value

Below is the java code to retrieve composite instance data based on sensor value.


package com.raylabs.soa.management;
import java.util.ArrayList;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.List;
import javax.naming.Context;
import oracle.soa.management.facade.CompositeInstance;
import oracle.soa.management.facade.Locator;
import oracle.soa.management.facade.LocatorFactory;
import oracle.soa.management.facade.Sensor;
import oracle.soa.management.util.CompositeInstanceFilter;
import oracle.soa.management.util.Operator;
import oracle.soa.management.util.SensorFilter;
public class Class1 {
public Class1() {
super();
}
public static void main(String[] args) {
Locator loc = null;
String sensorValue = "9004";
try {
loc = LocatorFactory.createLocator(getConnectionDetails());
CompositeInstanceFilter compInstFilter =
new CompositeInstanceFilter();
SensorFilter sensorFilter =
new SensorFilter("SENSOR_NAME", Sensor.SensorDataType.STRING,
Operator.EQUALS, sensorValue);
List<SensorFilter> sensorFilters = new ArrayList<SensorFilter>();
sensorFilters.add(sensorFilter);
compInstFilter.setSensorFilter(sensorFilters);
List<CompositeInstance> compositeInstances =
loc.getCompositeInstances(compInstFilter);
System.out.println(compositeInstances.size());
Iterator compIterator = compositeInstances.iterator();
while (compIterator.hasNext()) {
CompositeInstance instance =
(CompositeInstance)compIterator.next();
System.out.println("Composite name :" +
instance.getCompositeDN().getCompositeName());
System.out.println("Composite domain name :" +
instance.getCompositeDN().getStringDN());
System.out.println("Composite instance id :" +
instance.getId());
System.out.println("ECID :"+instance.getECID());
}
} catch (Exception e) {
e.printStackTrace();
} finally {
loc.close();
}
}
private static Hashtable getConnectionDetails() {
Hashtable jndiProps = new Hashtable();
jndiProps.put(Context.PROVIDER_URL,
"t3://xxxxx:1234/soa-infra");
jndiProps.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
jndiProps.put(Context.SECURITY_PRINCIPAL, "xxx");
jndiProps.put(Context.SECURITY_CREDENTIALS, "xxxxxxx");
jndiProps.put("dedicated.connection", "true");
return jndiProps;
}
}

Libraries

No comments:

Post a Comment