* Handle events - BAEL - 1674

* BAEL -1674 - test

* test - BAEL-1674

* Change system.out to logger

* minor change
This commit is contained in:
raksha-rao
2018-05-25 01:50:47 +05:30
committed by maibin
parent 7dc605f7b0
commit 60cb1d7d49
5 changed files with 135 additions and 0 deletions
@@ -1,5 +1,7 @@
package com.baeldung.config;
import com.baeldung.events.AuthorEventHandler;
import com.baeldung.events.BookEventHandler;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
@@ -22,4 +24,14 @@ public class MvcConfig extends WebMvcConfigurerAdapter{
configurer.enable();
}
@Bean
AuthorEventHandler authorEventHandler() {
return new AuthorEventHandler();
}
@Bean
BookEventHandler bookEventHandler(){
return new BookEventHandler();
}
}
@@ -0,0 +1,40 @@
package com.baeldung.events;
import com.baeldung.models.Author;
import com.baeldung.models.Book;
import org.springframework.data.rest.core.annotation.*;
import java.util.logging.Logger;
@RepositoryEventHandler
public class AuthorEventHandler {
Logger logger = Logger.getLogger("Class AuthorEventHandler");
public AuthorEventHandler(){
super();
}
@HandleBeforeCreate
public void handleAuthorBeforeCreate(Author author){
logger.info("Inside Author Before Create....");
String name = author.getName();
}
@HandleAfterCreate
public void handleAuthorAfterCreate(Author author){
logger.info("Inside Author After Create ....");
String name = author.getName();
}
@HandleBeforeDelete
public void handleAuthorBeforeDelete(Author author){
logger.info("Inside Author Before Delete ....");
String name = author.getName();
}
@HandleAfterDelete
public void handleAuthorAfterDelete(Author author){
logger.info("Inside Author After Delete ....");
String name = author.getName();
}
}
@@ -0,0 +1,26 @@
package com.baeldung.events;
import java.util.logging.Logger;
import com.baeldung.models.Author;
import com.baeldung.models.Book;
import org.apache.commons.logging.Log;
import org.springframework.data.rest.core.annotation.HandleAfterDelete;
import org.springframework.data.rest.core.annotation.HandleBeforeCreate;
import org.springframework.data.rest.core.annotation.RepositoryEventHandler;
@RepositoryEventHandler
public class BookEventHandler {
Logger logger = Logger.getLogger("Class BookEventHandler");
@HandleBeforeCreate
public void handleBookBeforeCreate(Book book){
logger.info("Inside Book Before Create ....");
book.getAuthors();
}
@HandleBeforeCreate
public void handleAuthorBeforeCreate(Author author){
logger.info("Inside Author Before Create ....");
author.getBooks();
}
}