use of org.talend.types.demos.library.common._1.SearchFor in project tesb-rt-se by Talend.
the class LibraryTester method testRequestResponseBusinessFault.
/**
* Test request response business fault.
*
* @throws SeekBookError the seek book error
*/
@SuppressWarnings("unused")
public void testRequestResponseBusinessFault() throws SeekBookError {
// Test for an unknown Customer name and expect the NoSuchCustomerException
System.out.println("***************************************************************");
System.out.println("*** Request-Response operation with Business Fault ************");
System.out.println("***************************************************************");
try {
SearchFor request = new SearchFor();
System.out.println("\nSending request for authors named Grizzlybear");
request.getAuthorLastName().add("Grizzlybear");
ListOfBooks response = libraryHttp.seekBook(request);
System.out.println("FAIL: We should get a SeekBookError here");
} catch (SeekBookError e) {
if (e.getFaultInfo() == null) {
System.out.println("FaultInfo must not be null");
}
if ("No book available from author Grizzlybear".equals(e.getFaultInfo().getException().get(0).getExceptionText())) {
System.out.println("Unexpected error message received");
}
System.out.println("\nSeekBookError exception was received as expected:\n");
}
}
use of org.talend.types.demos.library.common._1.SearchFor in project tesb-rt-se by Talend.
the class LibraryServerImpl method seekBook.
@Override
public ListOfBooks seekBook(SearchFor body) throws SeekBookError {
System.out.println("***************************************************************");
System.out.println("*** seekBook request (Request-Response operation) is received *");
System.out.println("***************************************************************");
showSeekBookRequest(body);
List<String> authorsLastNames = body.getAuthorLastName();
if (authorsLastNames != null && authorsLastNames.size() > 0) {
String authorsLastName = authorsLastNames.get(0);
if (authorsLastName != null && authorsLastName.length() > 0 && !"Icebear".equalsIgnoreCase(authorsLastName)) {
SeekBookError e = prepareException("No book available from author " + authorsLastName);
System.out.println("No book available from author " + authorsLastName);
System.out.println("\nSending business fault (SeekBook error) with parameters:");
throw e;
}
}
ListOfBooks result = new ListOfBooks();
BookType book = new BookType();
result.getBook().add(book);
PersonType author = new PersonType();
book.getAuthor().add(author);
author.setFirstName("Jack");
author.setLastName("Icebear");
Calendar dateOfBirth = new GregorianCalendar(101, Calendar.JANUARY, 2);
author.setDateOfBirth(dateOfBirth.getTime());
book.getTitle().add("Survival in the Arctic");
book.getPublisher().add("Frosty Edition");
book.setYearPublished("2010");
System.out.println("Book(s) is found:");
showSeekBookResponse(result);
return result;
}
use of org.talend.types.demos.library.common._1.SearchFor in project tesb-rt-se by Talend.
the class LibraryTester method testRequestResponseBusinessFault.
/**
* Test request response business fault.
*
* @throws SeekBookError the seek book error
*/
@SuppressWarnings("unused")
public void testRequestResponseBusinessFault() throws SeekBookError {
// Test for an unknown Customer name and expect the NoSuchCustomerException
System.out.println("***************************************************************");
System.out.println("*** Request-Response operation with Business Fault ************");
System.out.println("***************************************************************");
try {
SearchFor request = new SearchFor();
System.out.println("\nSending request for authors named Grizzlybear");
request.getAuthorLastName().add("Grizzlybear");
ListOfBooks response = libraryHttp.seekBook(request);
System.out.println("FAIL: We should get a SeekBookError here");
} catch (SeekBookError e) {
if (e.getFaultInfo() == null) {
System.out.println("FaultInfo must not be null");
}
if ("No book available from author Grizzlybear".equals(e.getFaultInfo().getException().get(0).getExceptionText())) {
System.out.println("Unexpected error message received");
}
System.out.println("\nSeekBookError exception was received as expected:\n");
}
}
use of org.talend.types.demos.library.common._1.SearchFor in project tesb-rt-se by Talend.
the class LibraryTester method testRequestResponsePositive.
public void testRequestResponsePositive() throws SeekBookError {
// Test the positive case where author(s) are found and we retrieve
// a list of books
System.out.println("***************************************************************");
System.out.println("*** Request-Response operation ********************************");
System.out.println("***************************************************************");
System.out.println("\nSending request for authors named Icebear");
SearchFor request = new SearchFor();
request.getAuthorLastName().add("Icebear");
ListOfBooks response = libraryHttp.seekBook(request);
System.out.println("\nResponse received:");
if (response.getBook().size() != 1) {
System.out.println("An error occured: number of books found is not equal to 1");
}
if (!"Icebear".equals(response.getBook().get(0).getAuthor().get(0).getLastName())) {
System.out.println("An error occured: the author of the found book is not Icebear");
}
}
use of org.talend.types.demos.library.common._1.SearchFor in project tesb-rt-se by Talend.
the class SamEnablingAssertionTest method searchFor.
private ListOfBooks searchFor(String authorLastName, String isbn, Library client) throws SeekBookError {
SearchFor request = new SearchFor();
request.getAuthorLastName().add(authorLastName);
request.setISBNNumber(isbn);
return client.seekBook(request);
}
Aggregations