Usage of Mongodb and Login Module using mongo

This commit is contained in:
Nicolas Héron 2020-01-03 14:40:00 +01:00
commit 657a0f9a03
54 changed files with 1003 additions and 3963 deletions

View file

@ -97,8 +97,8 @@
<orderEntry type="library" name="Maven: commons-io:commons-io:2.6" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.9.7" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.9.7" level="project" />
<orderEntry type="library" name="Maven: org.kie:kie-internal:7.28.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie:kie-api:7.28.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie.soup:kie-soup-maven-support:7.28.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie:kie-internal:7.31.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie:kie-api:7.31.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie.soup:kie-soup-maven-support:7.31.0.Final" level="project" />
</component>
</module>

View file

@ -95,8 +95,8 @@
<orderEntry type="library" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:guava:13.0.1" level="project" />
<orderEntry type="library" name="Maven: commons-io:commons-io:2.1" level="project" />
<orderEntry type="library" name="Maven: org.kie:kie-internal:7.28.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie:kie-api:7.28.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie.soup:kie-soup-maven-support:7.28.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie:kie-internal:7.31.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie:kie-api:7.31.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie.soup:kie-soup-maven-support:7.31.0.Final" level="project" />
</component>
</module>

View file

@ -41,9 +41,9 @@
<orderEntry type="library" name="Maven: com.google.guava:guava:13.0.1" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.9.7" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.9.7" level="project" />
<orderEntry type="library" name="Maven: org.kie:kie-internal:7.28.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie:kie-api:7.28.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie.soup:kie-soup-maven-support:7.28.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie:kie-internal:7.31.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie:kie-api:7.31.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.kie.soup:kie-soup-maven-support:7.31.0.Final" level="project" />
<orderEntry type="library" name="Maven: com.github.mkopylec:charon-spring-boot-starter:3.1.0" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.1.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.1.0.RELEASE" level="project" />

View file

@ -2,15 +2,15 @@ package org.chtijbug.drools.proxy.persistence.json;
import java.io.Serializable;
public class KeyProject implements Serializable {
public class KieProject implements Serializable {
private String spaceName;
private String name;
public KeyProject(){}
public KieProject(){}
public KeyProject(String spaceName, String name) {
public KieProject(String spaceName, String name) {
this.spaceName = spaceName;
this.name = name;
}

View file

@ -0,0 +1,44 @@
package org.chtijbug.drools.proxy.persistence.model;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.index.Indexed;
import org.springframework.data.mongodb.core.mapping.DBRef;
import org.springframework.data.mongodb.core.mapping.Document;
@Document
public class Customer {
@Id
@Indexed
private String ID;
@Indexed(unique = true)
private String name;
@DBRef
private KieWorkbench kieWorkbench;
public String getID() {
return ID;
}
public void setID(String ID) {
this.ID = ID;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public KieWorkbench getKieWorkbench() {
return kieWorkbench;
}
public void setKieWorkbench(KieWorkbench kieWorkbench) {
this.kieWorkbench = kieWorkbench;
}
}

View file

@ -0,0 +1,73 @@
package org.chtijbug.drools.proxy.persistence.model;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.index.Indexed;
import org.springframework.data.mongodb.core.mapping.Document;
@Document
public class KieWorkbench {
@Id
@Indexed
private String ID;
@Indexed(unique = true)
private String name;
private String internalUrl;
private String externalUrl;
private byte[] logo;
private String gitURL;
public String getID() {
return ID;
}
public void setID(String ID) {
this.ID = ID;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public byte[] getLogo() {
return logo;
}
public void setLogo(byte[] logo) {
this.logo = logo;
}
public String getInternalUrl() {
return internalUrl;
}
public void setInternalUrl(String internalUrl) {
this.internalUrl = internalUrl;
}
public String getExternalUrl() {
return externalUrl;
}
public void setExternalUrl(String externalUrl) {
this.externalUrl = externalUrl;
}
public String getGitURL() {
return gitURL;
}
public void setGitURL(String gitURL) {
this.gitURL = gitURL;
}
}

View file

@ -1,6 +1,6 @@
package org.chtijbug.drools.proxy.persistence.model;
import org.chtijbug.drools.proxy.persistence.json.KeyProject;
import org.chtijbug.drools.proxy.persistence.json.KieProject;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.index.Indexed;
import org.springframework.data.mongodb.core.mapping.Document;
@ -10,7 +10,7 @@ import java.util.ArrayList;
import java.util.List;
@Document
public class ProjectPersist implements Serializable {
public class ProjectPersist implements Serializable {
public static final String ADEFINIR="A définir";
@ -23,7 +23,7 @@ public class ProjectPersist implements Serializable {
@Id
@Indexed
private KeyProject projectName;
private KieProject projectName;
private String mainClass;
@ -45,7 +45,7 @@ public class ProjectPersist implements Serializable {
public ProjectPersist(){}
public ProjectPersist(String deploymentName, KeyProject projectName, String mainClass, String groupID, String artifactID, String processID, String projectVersion, String containerID, List<String> serverNames, String status) {
public ProjectPersist(String deploymentName, KieProject projectName, String mainClass, String groupID, String artifactID, String processID, String projectVersion, String containerID, List<String> serverNames, String status) {
this.deploymentName = deploymentName;
this.projectName = projectName;
this.mainClass = mainClass;
@ -66,11 +66,11 @@ public class ProjectPersist implements Serializable {
this.deploymentName = deploymentName;
}
public KeyProject getProjectName() {
public KieProject getProjectName() {
return projectName;
}
public void setProjectName(KeyProject projectName) {
public void setProjectName(KieProject projectName) {
this.projectName = projectName;
}

View file

@ -0,0 +1,101 @@
package org.chtijbug.drools.proxy.persistence.model;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.index.Indexed;
import org.springframework.data.mongodb.core.mapping.DBRef;
import org.springframework.data.mongodb.core.mapping.Document;
import java.util.ArrayList;
import java.util.List;
@Document
public class User {
@Id
@Indexed
private String ID;
@Indexed(unique = true)
private String login;
private String wbName;
private String password;
public User() {
}
public User(String ID, String login, String password) {
this.ID = ID;
this.login = login;
this.password = password;
}
@DBRef
private List<UserRoles> userRoles = new ArrayList<>();
@DBRef
private List<UserGroups> userGroups = new ArrayList<>();
@DBRef
private Customer customer;
public String getID() {
return ID;
}
public void setID(String ID) {
this.ID = ID;
}
public String getLogin() {
return login;
}
public void setLogin(String login) {
this.login = login;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public List<UserRoles> getUserRoles() {
return userRoles;
}
public void setUserRoles(List<UserRoles> userRoles) {
this.userRoles = userRoles;
}
public List<UserGroups> getUserGroups() {
return userGroups;
}
public void setUserGroups(List<UserGroups> userGroups) {
this.userGroups = userGroups;
}
public String getWbName() {
return wbName;
}
public void setWbName(String wbName) {
this.wbName = wbName;
}
public Customer getCustomer() {
return customer;
}
public void setCustomer(Customer customer) {
this.customer = customer;
}
}

View file

@ -0,0 +1,61 @@
package org.chtijbug.drools.proxy.persistence.model;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.index.Indexed;
import org.springframework.data.mongodb.core.mapping.Document;
@Document
public class UserGroups {
@Id
@Indexed
private String ID;
@Indexed
private String name;
@Indexed
private String spaceName;
@Indexed
private String projectName;
public UserGroups() {
}
public UserGroups(String ID, String name) {
this.ID = ID;
this.name = name;
}
public String getID() {
return ID;
}
public void setID(String ID) {
this.ID = ID;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSpaceName() {
return spaceName;
}
public void setSpaceName(String spaceName) {
this.spaceName = spaceName;
}
public String getProjectName() {
return projectName;
}
public void setProjectName(String projectName) {
this.projectName = projectName;
}
}

View file

@ -0,0 +1,39 @@
package org.chtijbug.drools.proxy.persistence.model;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.index.Indexed;
import org.springframework.data.mongodb.core.mapping.Document;
@Document
public class UserRoles {
@Id
@Indexed
private String ID;
@Indexed
private String name;
public UserRoles() {
}
public UserRoles(String ID, String name) {
this.ID = ID;
this.name = name;
}
public String getID() {
return ID;
}
public void setID(String ID) {
this.ID = ID;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}

View file

@ -0,0 +1,12 @@
package org.chtijbug.drools.proxy.persistence.repository;
import org.chtijbug.drools.proxy.persistence.model.Customer;
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface CustomerRepository extends MongoRepository<Customer, String> {
Customer findByName(String name);
Customer findByID(String ID);
}

View file

@ -0,0 +1,12 @@
package org.chtijbug.drools.proxy.persistence.repository;
import org.chtijbug.drools.proxy.persistence.model.KieWorkbench;
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface KieWorkbenchRepository extends MongoRepository<KieWorkbench, String> {
KieWorkbench findByName(String name);
KieWorkbench findByID(String ID);
}

View file

@ -1,6 +1,6 @@
package org.chtijbug.drools.proxy.persistence.repository;
import org.chtijbug.drools.proxy.persistence.json.KeyProject;
import org.chtijbug.drools.proxy.persistence.json.KieProject;
import org.chtijbug.drools.proxy.persistence.model.ProjectPersist;
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.stereotype.Repository;
@ -10,7 +10,7 @@ import java.util.List;
@Repository
public interface ProjectRepository extends MongoRepository<ProjectPersist, String> {
public ProjectPersist findByProjectName(KeyProject projectName);
public ProjectPersist findByProjectName(KieProject projectName);
public ProjectPersist findByDeploymentName(String deploymentName);
public List<ProjectPersist> findByServerNamesIn(List<String> serverNames);
public List<ProjectPersist> findByServerNamesInAndDeploymentName(List<String> serverNames,String deploymentName);

View file

@ -0,0 +1,12 @@
package org.chtijbug.drools.proxy.persistence.repository;
import org.chtijbug.drools.proxy.persistence.model.UserGroups;
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface UserGroupsRepository extends MongoRepository<UserGroups, String> {
UserGroups findByName(String login);
UserGroups findByID(String login);
}

View file

@ -0,0 +1,11 @@
package org.chtijbug.drools.proxy.persistence.repository;
import org.chtijbug.drools.proxy.persistence.model.User;
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface UserRepository extends MongoRepository<User, String> {
User findByLogin(String login);
}

View file

@ -0,0 +1,12 @@
package org.chtijbug.drools.proxy.persistence.repository;
import org.chtijbug.drools.proxy.persistence.model.UserRoles;
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface UserRolesRepository extends MongoRepository<UserRoles, String> {
UserRoles findByName(String login);
UserRoles findByID(String login);
}