package org.jacorb.test.notification.common; import org.jacorb.test.notification.Address; import org.jacorb.test.notification.NamedValue; import org.jacorb.test.notification.Person; import org.jacorb.test.notification.PersonHelper; import org.jacorb.test.notification.Profession; import org.omg.CORBA.Any; import org.omg.CORBA.LongSeqHelper; import org.omg.CORBA.ORB; import org.omg.CosNotification.EventHeader; import org.omg.CosNotification.EventType; import org.omg.CosNotification.FixedEventHeader; import org.omg.CosNotification.Property; import org.omg.CosNotification.StructuredEvent; import org.omg.CosNotification.StructuredEventHelper; /** * @author Alphonse Bendt */ public class NotificationTestUtils { private final ORB orb_; public NotificationTestUtils(ORB orb) { orb_ = orb; } public StructuredEvent getStructuredEvent() { StructuredEvent _structuredEvent = getEmptyStructuredEvent(); _structuredEvent.header.fixed_header.event_name = "ALARM"; _structuredEvent.header.fixed_header.event_type.domain_name = "TESTING"; _structuredEvent.header.fixed_header.event_type.type_name = "TESTING"; _structuredEvent.remainder_of_body = getTestPersonAny(); return _structuredEvent; } public StructuredEvent getEmptyStructuredEvent() { FixedEventHeader _fixedHeader = new FixedEventHeader(); _fixedHeader.event_name = ""; _fixedHeader.event_type = new EventType("", ""); EventHeader _header = new EventHeader(_fixedHeader, new Property[0]); StructuredEvent _structuredEvent = new StructuredEvent(_header, new Property[0], orb_.create_any()); return _structuredEvent; } public Any getStructuredEventAny() { Any _structuredEventAny = orb_.create_any(); StructuredEventHelper.insert(_structuredEventAny, getStructuredEvent()); return _structuredEventAny; } public Person getTestPerson() { // prepare test data Person _p = new Person(); Address _a = new Address(); _p.first_name = "firstname"; _p.last_name = "lastname"; _p.age = 5; _p.phone_numbers = new String[2]; _p.phone_numbers[0] = "12345678"; _p.phone_numbers[1] = ""; _p.nv = new NamedValue[2]; _p.nv[0] = new NamedValue(); _p.nv[1] = new NamedValue(); _p.person_profession = Profession.STUDENT; _a.street = "Takustr."; _a.number = 9; _a.city = "Berlin"; _p.home_address = _a; _p.aliases = new String[] {"Alias0", "Alias1", "Alias2"}; _p.numbers = new int[] {10, 20, 30, 40, 50}; return _p; } public Any getTestPersonAny() { Any _testPerson; _testPerson = orb_.create_any(); PersonHelper.insert(_testPerson, getTestPerson()); return _testPerson; } public Any getSizedTestData(int size) { Any _testData = orb_.create_any(); int[] _payload = new int[size]; for (int x=0; x<size; ++x) { _payload[x] = x; } LongSeqHelper.insert(_testData, _payload); return _testData; } static StructuredEvent invalidStructuredEvent_; public static StructuredEvent getInvalidStructuredEvent(ORB orb) { if (invalidStructuredEvent_ == null) { synchronized(NotificationTestUtils.class.getName()) { if (invalidStructuredEvent_ == null) { FixedEventHeader _fixedHeader = new FixedEventHeader(); _fixedHeader.event_name = ""; _fixedHeader.event_type = new EventType("",""); EventHeader _header = new EventHeader(_fixedHeader, new Property[0]); invalidStructuredEvent_ = new StructuredEvent(_header, new Property[0], orb.create_any()); } } } return invalidStructuredEvent_; } }