Package com.sivalabs.angularcrud.config

Source Code of com.sivalabs.angularcrud.config.DBInitializer

/**
*
*/
package com.sivalabs.angularcrud.config;

import javax.annotation.PostConstruct;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

import com.sivalabs.angularcrud.entities.Contact;
import com.sivalabs.angularcrud.entities.Role;
import com.sivalabs.angularcrud.entities.User;
import com.sivalabs.angularcrud.services.UserService;

/**
* @author Siva
*
*/
@Component
public class DBInitializer
{
  private static Logger logger = LoggerFactory.getLogger(DBInitializer.class);

  @Autowired
  private UserService userService;

  @Value("${init-db:false}")
  private String initDatabase;

  @PostConstruct
  public void init()
  {
    try {
      logger.info("############## InitDatabase :" + initDatabase + " ########################");
      if (Boolean.parseBoolean(initDatabase)) {
        initDatabase();
      }
    } catch (Exception e) {
      e.printStackTrace();
    }
  }

  void initDatabase()
  {

    initDBWithServices();

  }
 
  void initDBWithSqlScript()
  {
   
  }
 
  void initDBWithServices()
  {
    logger.info("Initializing Database with sample data");
   
    Role role1 = new Role("ROLE_USER");
    Role role2 = new Role("ROLE_ADMIN");
   
    User user1 = new User(1, "admin@gmail.com", "admin", "Administrator");
    User user2 = new User(2, "siva@gmail.com", "siva", "Siva");
   
    user1.addRoles(role1, role2);
    user2.addRoles(role1);
   
    Contact contact1 = new Contact(null, "abcd@gmail.com", "Abcd", null, null, user2);
    Contact contact2 = new Contact(null, "xyz@gmail.com", "Xyz", null, null, user2);
    user2.addContacts(contact1, contact2);
   
    userService.createUser(user1);
    userService.createUser(user2);
   
   
  }
 
}
TOP

Related Classes of com.sivalabs.angularcrud.config.DBInitializer

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.