Source Code Cross Referenced for ProjectService.java in  » Project-Management » EmForce » org » emforge » projectmanager » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Project Management » EmForce » org.emforge.projectmanager 
Source Cross Referenced  Class Diagram Java Document (Java Doc) 


001:        package org.emforge.projectmanager;
002:
003:        import java.util.Collection;
004:
005:        import org.acegisecurity.AccessDeniedException;
006:        import org.acegisecurity.userdetails.UserDetails;
007:        import org.emforge.projectmanager.base.MilestoneDO;
008:        import org.emforge.projectmanager.base.ProjectDO;
009:
010:        import ru.emdev.EmForge.security.EmForgeUserDetails;
011:        import ru.emdev.EmForge.security.dao.Role;
012:
013:        /**
014:         * ProjectService is responsible for all operations related to projects.<br>
015:         * Service should be used everywhere (instead of currently used DAO) for security.<br>
016:         * The mathods check if user allowed to do some action or not.<br>
017:         * It is required to inform GUI about availability some actions.
018:         * 
019:         * @author akakunin
020:         */
021:        public interface ProjectService {
022:
023:            /** Predefined roles for Projects */
024:            public static final String ROLE_MANAGER = "Manager";
025:            public static final String ROLE_DEVELOPER = "Developer";
026:            public static final String ROLE_TESTER = "Tester";
027:            public static final String ROLE_USER = "User";
028:
029:            /** Basic Project Operations */
030:            public Collection<ProjectDO> getAllProjects()
031:                    throws AccessDeniedException, ProjectServiceException;
032:
033:            /**
034:             * Get Project by Id
035:             * 
036:             * @param i_projectId
037:             * @return null if specified project not found
038:             * @throws AccessDeniedException
039:             * @throws ProjectServiceException
040:             */
041:            public ProjectDO getProject(Long i_projectId)
042:                    throws AccessDeniedException, ProjectServiceException;
043:
044:            /**
045:             * @param i_projectId
046:             * @return
047:             */
048:            public boolean canGetProject(Long i_projectId);
049:
050:            /**
051:             * Get project by Name
052:             * 
053:             * @param i_projectWikiName
054:             * @return null if specified project not found
055:             * @throws AccessDeniedException
056:             * @throws ProjectServiceException
057:             */
058:            public ProjectDO getProject(String i_projectWikiName)
059:                    throws AccessDeniedException, ProjectServiceException;
060:
061:            /**
062:             * @param i_projectWikiName
063:             * @return
064:             */
065:            public boolean canGetProject(String i_projectWikiName);
066:
067:            /**
068:             * @param i_project
069:             * @throws AccessDeniedException
070:             * @throws ProjectServiceException
071:             */
072:            public void saveProject(ProjectDO i_project)
073:                    throws AccessDeniedException, ProjectServiceException;
074:
075:            /**
076:             * @return
077:             */
078:            public boolean canCreateProject();
079:
080:            /**
081:             * @param i_project
082:             * @return
083:             */
084:            public boolean canChangeProject(ProjectDO i_project);
085:
086:            /**
087:             * @param i_project
088:             * @throws AccessDeniedException
089:             * @throws ProjectServiceException
090:             */
091:            public void deleteProject(ProjectDO i_project)
092:                    throws AccessDeniedException, ProjectServiceException;
093:
094:            /**
095:             * @param i_project
096:             * @return
097:             */
098:            public boolean canDeleteProject(ProjectDO i_project);
099:
100:            /** Add User into Project with specified Role */
101:            public void addUser(ProjectDO i_project, UserDetails i_user,
102:                    Role i_role) throws AccessDeniedException,
103:                    ProjectServiceException;
104:
105:            /** Delete User's Role from Project */
106:            public void deleteUserRole(ProjectDO i_project, UserDetails i_user,
107:                    Role i_role) throws AccessDeniedException,
108:                    ProjectServiceException;
109:
110:            /**
111:             * Returns true - if specified user has specified role in project
112:             */
113:            public boolean hasRole(ProjectDO i_project, UserDetails i_user,
114:                    Role i_role) throws AccessDeniedException,
115:                    ProjectServiceException;
116:
117:            /**
118:             * Returns true - if specified user has specified role in project. Used role name as argument
119:             */
120:            public boolean hasRole(ProjectDO i_project, UserDetails i_user,
121:                    String i_role) throws AccessDeniedException,
122:                    ProjectServiceException;
123:
124:            /**
125:             * Returns Users with specified role
126:             */
127:            public Collection<EmForgeUserDetails> getUsers(ProjectDO i_project,
128:                    String i_roleName) throws AccessDeniedException,
129:                    ProjectServiceException;
130:
131:            /**
132:             * Returns Users with specified role
133:             */
134:            public Collection<EmForgeUserDetails> getUsers(ProjectDO i_project,
135:                    Role i_role) throws AccessDeniedException,
136:                    ProjectServiceException;
137:
138:            /**
139:             * Returns All users, has any role in the project
140:             */
141:            public Collection<EmForgeUserDetails> getAllProjectUsers(
142:                    ProjectDO i_project) throws AccessDeniedException,
143:                    ProjectServiceException;
144:
145:            /**
146:             * Returns Avialable Roles for specified Project
147:             * 
148:             * @param i_project
149:             * @return
150:             */
151:            public Collection<Role> getAvialableRoles(ProjectDO i_project)
152:                    throws AccessDeniedException, ProjectServiceException;
153:
154:            /**
155:             * @param i_milestoneId
156:             * @return
157:             * @throws AccessDeniedException
158:             * @throws ProjectServiceException
159:             */
160:            public MilestoneDO getMilestone(Long i_milestoneId)
161:                    throws AccessDeniedException, ProjectServiceException;
162:
163:            /**
164:             * @param i_name
165:             * @return
166:             * @throws AccessDeniedException
167:             * @throws ProjectServiceException
168:             */
169:            public MilestoneDO getMilestone(String i_name)
170:                    throws AccessDeniedException, ProjectServiceException;
171:
172:            /**
173:             * @param i_milestoneId
174:             * @return
175:             */
176:            public boolean canGetMilestone(Long i_milestoneId);
177:
178:            /**
179:             * @param i_name
180:             * @return
181:             */
182:            public boolean canGetMilestone(String i_name);
183:
184:            /**
185:             * @param i_project
186:             * @return
187:             * @throws AccessDeniedException
188:             * @throws ProjectServiceException
189:             */
190:            public Collection<MilestoneDO> getMilestones(ProjectDO i_project)
191:                    throws AccessDeniedException, ProjectServiceException;
192:
193:            /**
194:             * @param i_project
195:             * @return
196:             * @throws AccessDeniedException
197:             * @throws ProjectServiceException
198:             */
199:            public Collection<MilestoneDO> getOpenedMilestones(
200:                    ProjectDO i_project) throws AccessDeniedException,
201:                    ProjectServiceException;
202:
203:            /**
204:             * @param i_project
205:             * @return
206:             * @throws AccessDeniedException
207:             * @throws ProjectServiceException
208:             */
209:            public Collection<MilestoneDO> getClosedMilestones(
210:                    ProjectDO i_project) throws AccessDeniedException,
211:                    ProjectServiceException;
212:
213:            /**
214:             * @param i_project
215:             * @return
216:             */
217:            public boolean canGetMilestones(ProjectDO i_project);
218:
219:            /**
220:             * @param i_milestone
221:             * @throws AccessDeniedException
222:             * @throws ProjectServiceException
223:             */
224:            public void saveMilestone(MilestoneDO i_milestone)
225:                    throws AccessDeniedException, ProjectServiceException;
226:
227:            /**
228:             * @param i_project
229:             * @return
230:             */
231:            public boolean canCreateMilestone(ProjectDO i_project);
232:
233:            /**
234:             * @param i_milestone
235:             * @return
236:             */
237:            public boolean canChangeMilestone(MilestoneDO i_milestone);
238:
239:            /**
240:             * @param i_milestone
241:             * @throws AccessDeniedException
242:             * @throws ProjectServiceException
243:             */
244:            public void deleteMilestone(MilestoneDO i_milestone)
245:                    throws AccessDeniedException, ProjectServiceException;
246:
247:            /**
248:             * @param i_milestone
249:             * @return
250:             */
251:            public boolean canDeleteMilestone(MilestoneDO i_milestone);
252:
253:            /**
254:             * @param project
255:             */
256:            public void initProjectRoles(ProjectDO project);
257:        }
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.