Initial commit :
Base business core classes for User and Role management. Probably a lot more to be added to these, but I can't get to think to anything else for now.
This commit is contained in:
10
YACOSCore/.classpath
Normal file
10
YACOSCore/.classpath
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<classpath>
|
||||||
|
<classpathentry kind="src" path="ejbModule"/>
|
||||||
|
<classpathentry kind="src" path="test"/>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.launching.macosx.MacOSXType/JVM 1.5.0 (MacOS X Default)"/>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.generic.runtimeTarget/JBoss v5.0"/>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
|
||||||
|
<classpathentry kind="output" path="build/classes"/>
|
||||||
|
</classpath>
|
||||||
30
YACOSCore/.project
Normal file
30
YACOSCore/.project
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<projectDescription>
|
||||||
|
<name>YACOSCore</name>
|
||||||
|
<comment></comment>
|
||||||
|
<projects>
|
||||||
|
</projects>
|
||||||
|
<buildSpec>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.wst.common.project.facet.core.builder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.wst.validation.validationbuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
</buildSpec>
|
||||||
|
<natures>
|
||||||
|
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
|
||||||
|
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||||
|
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
|
||||||
|
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
|
||||||
|
</natures>
|
||||||
|
</projectDescription>
|
||||||
7
YACOSCore/.settings/org.eclipse.jdt.core.prefs
Normal file
7
YACOSCore/.settings/org.eclipse.jdt.core.prefs
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
#Tue Dec 11 22:09:32 CET 2007
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
|
||||||
|
org.eclipse.jdt.core.compiler.compliance=1.5
|
||||||
|
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||||
|
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||||
|
org.eclipse.jdt.core.compiler.source=1.5
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
#Tue Dec 11 22:09:32 CET 2007
|
||||||
|
classpath.helper/org.eclipse.jdt.launching.JRE_CONTAINER\:\:org.eclipse.jdt.internal.launching.macosx.MacOSXType\:\:JVM\ 1.5.0\ (MacOS\ X\ Default)/owners=jst.java\:5.0
|
||||||
|
classpath.helper/org.eclipse.jst.server.core.container\:\:org.eclipse.jst.server.generic.runtimeTarget\:\:JBoss\ v5.0/owners=jst.ejb\:3.0
|
||||||
|
eclipse.preferences.version=1
|
||||||
8
YACOSCore/.settings/org.eclipse.wst.common.component
Normal file
8
YACOSCore/.settings/org.eclipse.wst.common.component
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project-modules id="moduleCoreId" project-version="1.5.0">
|
||||||
|
<wb-module deploy-name="YACOSCore">
|
||||||
|
<wb-resource deploy-path="/" source-path="/ejbModule"/>
|
||||||
|
<wb-resource deploy-path="/" source-path="/test"/>
|
||||||
|
<property name="java-output-path" value="build/classes"/>
|
||||||
|
</wb-module>
|
||||||
|
</project-modules>
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<faceted-project>
|
||||||
|
<runtime name="JBoss v5.0"/>
|
||||||
|
<fixed facet="jst.java"/>
|
||||||
|
<fixed facet="jst.ejb"/>
|
||||||
|
<installed facet="jst.java" version="5.0"/>
|
||||||
|
<installed facet="jst.ejb" version="3.0"/>
|
||||||
|
</faceted-project>
|
||||||
3
YACOSCore/ejbModule/META-INF/MANIFEST.MF
Normal file
3
YACOSCore/ejbModule/META-INF/MANIFEST.MF
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
Manifest-Version: 1.0
|
||||||
|
Class-Path:
|
||||||
|
|
||||||
3
YACOSCore/ejbModule/META-INF/ejb-jar.xml
Normal file
3
YACOSCore/ejbModule/META-INF/ejb-jar.xml
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<ejb-jar version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd">
|
||||||
|
</ejb-jar>
|
||||||
12
YACOSCore/ejbModule/org/yacos/core/Conference.java
Normal file
12
YACOSCore/ejbModule/org/yacos/core/Conference.java
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
package org.yacos.core;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author christiancorsano
|
||||||
|
* TODO
|
||||||
|
*/
|
||||||
|
public class Conference {
|
||||||
|
|
||||||
|
}
|
||||||
66
YACOSCore/ejbModule/org/yacos/core/Role.java
Normal file
66
YACOSCore/ejbModule/org/yacos/core/Role.java
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
package org.yacos.core;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An role of a given type (author,chairman,PCmember or referee)
|
||||||
|
* defined for a user and a conference
|
||||||
|
* @author christiancorsano
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class Role {
|
||||||
|
/**
|
||||||
|
* User for which this role is defined
|
||||||
|
*/
|
||||||
|
private User user;
|
||||||
|
/**
|
||||||
|
* Conference for which this role is defined
|
||||||
|
*/
|
||||||
|
private Conference conference;
|
||||||
|
/**
|
||||||
|
* The type of this role
|
||||||
|
*/
|
||||||
|
private RoleType type;
|
||||||
|
|
||||||
|
public Role(RoleType type,User user, Conference conference) {
|
||||||
|
super();
|
||||||
|
setType(type);
|
||||||
|
setUser(user);
|
||||||
|
setConference(conference);
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* @return the user who plays this role
|
||||||
|
*/
|
||||||
|
public User getUser() {
|
||||||
|
return user;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* @param user the user who is to play this role
|
||||||
|
*/
|
||||||
|
public void setUser(User user) {
|
||||||
|
this.user = user;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* @return the conference for which this role is defined
|
||||||
|
*/
|
||||||
|
public Conference getConference() {
|
||||||
|
return conference;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* @param conference the conference for which this role is defined
|
||||||
|
*/
|
||||||
|
public void setConference(Conference conference) {
|
||||||
|
this.conference = conference;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* @return the type of this role
|
||||||
|
*/
|
||||||
|
public RoleType getType() {
|
||||||
|
return type;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* @param type the type of this role
|
||||||
|
*/
|
||||||
|
public void setType(RoleType type) {
|
||||||
|
this.type = type;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
48
YACOSCore/ejbModule/org/yacos/core/RoleType.java
Normal file
48
YACOSCore/ejbModule/org/yacos/core/RoleType.java
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
package org.yacos.core;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author christiancorsano
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class RoleType {
|
||||||
|
/**
|
||||||
|
* Author constant role
|
||||||
|
*/
|
||||||
|
static public final RoleType author = new RoleType("author");
|
||||||
|
/**
|
||||||
|
* Chairman constant role
|
||||||
|
*/
|
||||||
|
static public final RoleType chairman = new RoleType("chairman");
|
||||||
|
/**
|
||||||
|
* PCMember constant role
|
||||||
|
*/
|
||||||
|
static public final RoleType PCmember = new RoleType("PCmember");
|
||||||
|
/**
|
||||||
|
* Referee constant role
|
||||||
|
*/
|
||||||
|
static public final RoleType Referee = new RoleType("referee");
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Name of this role type
|
||||||
|
*/
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Private constructor : used to instanciate the constants
|
||||||
|
* @param name Name of the new RoleType
|
||||||
|
*/
|
||||||
|
private RoleType(String name){
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return the name of this RoleType
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public String getName() {
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
|
}
|
||||||
104
YACOSCore/ejbModule/org/yacos/core/User.java
Normal file
104
YACOSCore/ejbModule/org/yacos/core/User.java
Normal file
@@ -0,0 +1,104 @@
|
|||||||
|
package org.yacos.core;
|
||||||
|
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A unique User of the system.
|
||||||
|
* The user is registered globally in the application and would be able to get different roles for
|
||||||
|
* different conferences.
|
||||||
|
* @author christiancorsano
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class User {
|
||||||
|
/**
|
||||||
|
* Unique login of the user
|
||||||
|
* Is used to identify the user, should be unique and can't be modified
|
||||||
|
*/
|
||||||
|
private String login;
|
||||||
|
/**
|
||||||
|
* Password : used for authentication purpose only, is only writable
|
||||||
|
*/
|
||||||
|
private String password;
|
||||||
|
/**
|
||||||
|
* First Name of the user
|
||||||
|
*/
|
||||||
|
private String firstName;
|
||||||
|
/**
|
||||||
|
* Last name of the user
|
||||||
|
*/
|
||||||
|
private String lastName;
|
||||||
|
/**
|
||||||
|
* Organization or lab the user belongs to
|
||||||
|
*/
|
||||||
|
private String organization;
|
||||||
|
/**
|
||||||
|
* Active email (has to be used frequently) of the user
|
||||||
|
*/
|
||||||
|
private String email;
|
||||||
|
|
||||||
|
public User() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getLogin() {
|
||||||
|
return login;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPassword(String password) {
|
||||||
|
this.password = password;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getFirstName() {
|
||||||
|
return firstName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFirstName(String firstName) {
|
||||||
|
this.firstName = firstName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getLastName() {
|
||||||
|
return lastName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLastName(String lastName) {
|
||||||
|
this.lastName = lastName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getOrganization() {
|
||||||
|
return organization;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOrganization(String organization) {
|
||||||
|
this.organization = organization;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEmail() {
|
||||||
|
return email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEmail(String email) {
|
||||||
|
this.email = email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void addRole(Role role){
|
||||||
|
// TODO
|
||||||
|
}
|
||||||
|
|
||||||
|
public void addRoleForConference(RoleType roleType, Conference conference){
|
||||||
|
if(! hasRoleForConference(roleType)){
|
||||||
|
|
||||||
|
} else {
|
||||||
|
// TODO : declare and throw an exception
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean hasRoleForConference(RoleType roleType){
|
||||||
|
// TODO
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Role> getRoles(){
|
||||||
|
// TODO
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
33
YACOSCore/ejbModule/org/yacos/core/UsersManager.java
Normal file
33
YACOSCore/ejbModule/org/yacos/core/UsersManager.java
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
package org.yacos.core;
|
||||||
|
|
||||||
|
import java.util.Collection;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author christiancorsano
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class UsersManager {
|
||||||
|
public Collection<User> getUsers(){
|
||||||
|
// TODO
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds a user into the system
|
||||||
|
* @param user
|
||||||
|
*/
|
||||||
|
public void addUser(User user){
|
||||||
|
// TODO
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Removes a user from the system
|
||||||
|
* @param user
|
||||||
|
*/
|
||||||
|
public void removeUser(User user){
|
||||||
|
// TODO
|
||||||
|
}
|
||||||
|
}
|
||||||
15
YACOSCore/test/org/yacos/tests/core/TestRole.java
Normal file
15
YACOSCore/test/org/yacos/tests/core/TestRole.java
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
package org.yacos.tests.core;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author christiancorsano
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class TestRole {
|
||||||
|
public void aRoleShouldBeUnique(){
|
||||||
|
// TODO : look for roles of the same type, same user and same conference
|
||||||
|
}
|
||||||
|
}
|
||||||
7
YACOSCore/test/org/yacos/tests/core/TestUser.java
Normal file
7
YACOSCore/test/org/yacos/tests/core/TestUser.java
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
package org.yacos.tests.core;
|
||||||
|
|
||||||
|
import static org.junit.Assert.*;
|
||||||
|
|
||||||
|
public class TestUser {
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user