Search in sources :

Example 1 with IQueryService

use of com.iluwatar.cqrs.queries.IQueryService in project java-design-patterns by iluwatar.

the class App method main.

/**
 * Program entry point
 *
 * @param args
 *          command line args
 */
public static void main(String[] args) {
    ICommandService commands = new CommandServiceImpl();
    // Create Authors and Books using CommandService
    commands.authorCreated("eEvans", "Eric Evans", "eEvans@email.com");
    commands.authorCreated("jBloch", "Joshua Bloch", "jBloch@email.com");
    commands.authorCreated("mFowler", "Martin Fowler", "mFowler@email.com");
    commands.bookAddedToAuthor("Domain-Driven Design", 60.08, "eEvans");
    commands.bookAddedToAuthor("Effective Java", 40.54, "jBloch");
    commands.bookAddedToAuthor("Java Puzzlers", 39.99, "jBloch");
    commands.bookAddedToAuthor("Java Concurrency in Practice", 29.40, "jBloch");
    commands.bookAddedToAuthor("Patterns of Enterprise Application Architecture", 54.01, "mFowler");
    commands.bookAddedToAuthor("Domain Specific Languages", 48.89, "mFowler");
    commands.authorNameUpdated("eEvans", "Eric J. Evans");
    IQueryService queries = new QueryServiceImpl();
    // Query the database using QueryService
    Author nullAuthor = queries.getAuthorByUsername("username");
    Author eEvans = queries.getAuthorByUsername("eEvans");
    BigInteger jBlochBooksCount = queries.getAuthorBooksCount("jBloch");
    BigInteger authorsCount = queries.getAuthorsCount();
    Book dddBook = queries.getBook("Domain-Driven Design");
    List<Book> jBlochBooks = queries.getAuthorBooks("jBloch");
    LOGGER.info("Author username : {}", nullAuthor);
    LOGGER.info("Author eEvans : {}", eEvans);
    LOGGER.info("jBloch number of books : {}", jBlochBooksCount);
    LOGGER.info("Number of authors : {}", authorsCount);
    LOGGER.info("DDD book : {}", dddBook);
    LOGGER.info("jBloch books : {}", jBlochBooks);
    HibernateUtil.getSessionFactory().close();
}
Also used : CommandServiceImpl(com.iluwatar.cqrs.commandes.CommandServiceImpl) IQueryService(com.iluwatar.cqrs.queries.IQueryService) Book(com.iluwatar.cqrs.dto.Book) Author(com.iluwatar.cqrs.dto.Author) BigInteger(java.math.BigInteger) ICommandService(com.iluwatar.cqrs.commandes.ICommandService) QueryServiceImpl(com.iluwatar.cqrs.queries.QueryServiceImpl)

Aggregations

CommandServiceImpl (com.iluwatar.cqrs.commandes.CommandServiceImpl)1 ICommandService (com.iluwatar.cqrs.commandes.ICommandService)1 Author (com.iluwatar.cqrs.dto.Author)1 Book (com.iluwatar.cqrs.dto.Book)1 IQueryService (com.iluwatar.cqrs.queries.IQueryService)1 QueryServiceImpl (com.iluwatar.cqrs.queries.QueryServiceImpl)1 BigInteger (java.math.BigInteger)1