Select Git revision
distribution.py
DatabaseFiller.java 2.47 KiB
package mozen.utils;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.event.ContextRefreshedEvent;
import org.springframework.context.event.EventListener;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import mozen.business.IModelDao;
import mozen.business.IUserDao;
import mozen.model.CustomLayer;
import mozen.model.Model;
import mozen.model.Role;
import mozen.model.Tag;
import mozen.model.TagCategory;
import mozen.model.User;
@Service
public class DatabaseFiller {
@Autowired
IModelDao daoModel;
@Autowired
IUserDao daoUser;
@Autowired
private BCryptPasswordEncoder bCryptPasswordEncoder;
@EventListener(ContextRefreshedEvent.class)
public void onApplicationEvent(ContextRefreshedEvent event) {
event.getApplicationContext().getBean(DatabaseFiller.class).fillDB();
}
@Transactional
public void fillDB() {
System.err.println("FILLING DB");
User u1 = new User();
u1.setEmail("user1@email.com");
u1.setPassword(bCryptPasswordEncoder.encode("1234"));
u1.setUsername("user 1");
u1.setRole(Role.Default);
User u2 = new User();
u2.setEmail("user2@email.com");
u2.setPassword(bCryptPasswordEncoder.encode("1234"));
u2.setUsername("user 2");
u2.setRole(Role.Admin);
Model m1 = new Model();
m1.setAuthor(u1);
m1.setName("model 1");
m1.setShortDescription("short description 1");
m1.setLongDescription("# README \n model 1");
m1.setVotes(0);
m1.setAdded(new Date());
m1.setLastModified(new Date());
Set<Tag> m1tags = new HashSet<Tag>();
Tag t1 = new Tag();
TagCategory ca1 = new TagCategory();
ca1.setName("Layer");
t1.setCategory(ca1);
t1.setName("Conv2D");
Tag t2 = new Tag();
TagCategory ca2 = new TagCategory();
ca2.setName("Architecture");
t2.setCategory(ca2);
t2.setName("VGG19");
m1tags.add(t1);
m1tags.add(t2);
m1.setTags(m1tags);
Set<CustomLayer> m1layers = new HashSet<CustomLayer>();
CustomLayer l1 = new CustomLayer();
l1.setName("super layer 1");
CustomLayer l2 = new CustomLayer();
l2.setName("super layer 2");
m1layers.add(l1);
m1layers.add(l2);
m1.setCustomLayers(m1layers);
daoUser.addUser(u1);
daoUser.addUser(u2);
daoModel.addModel(m1);
}
}