
Revert "Merge branch 'issue-2098' of dlab/hive"
This reverts commit b4eec9ff78abc04b50e729642d70731c9e01c41e, reversing changes made to ce5115aa61838abff7805425d0e10c21a65b6377.
@8c25ca9471148691bdc64b89d8e15f601470a2b4
--- app/controllers/AbstractPostingApp.java
+++ app/controllers/AbstractPostingApp.java
... | ... | @@ -29,13 +29,11 @@ |
29 | 29 |
import org.apache.commons.lang3.StringUtils; |
30 | 30 |
import play.data.Form; |
31 | 31 |
import play.db.ebean.Model; |
32 |
-import play.db.ebean.Transactional; |
|
33 | 32 |
import play.i18n.Messages; |
34 | 33 |
import play.mvc.*; |
35 | 34 |
import utils.*; |
36 | 35 |
|
37 | 36 |
@AnonymousCheck |
38 |
-@Transactional |
|
39 | 37 |
public class AbstractPostingApp extends Controller { |
40 | 38 |
public static final int ITEMS_PER_PAGE = 15; |
41 | 39 |
|
--- app/controllers/Application.java
+++ app/controllers/Application.java
... | ... | @@ -23,7 +23,6 @@ |
23 | 23 |
import controllers.annotation.AnonymousCheck; |
24 | 24 |
import models.Project; |
25 | 25 |
import play.Logger; |
26 |
-import play.db.ebean.Transactional; |
|
27 | 26 |
import play.mvc.Controller; |
28 | 27 |
import play.mvc.Result; |
29 | 28 |
import playRepository.RepositoryService; |
... | ... | @@ -33,7 +32,6 @@ |
33 | 32 |
|
34 | 33 |
import java.io.File; |
35 | 34 |
|
36 |
-@Transactional |
|
37 | 35 |
public class Application extends Controller { |
38 | 36 |
|
39 | 37 |
@AnonymousCheck |
--- app/controllers/AttachmentApp.java
+++ app/controllers/AttachmentApp.java
... | ... | @@ -29,7 +29,6 @@ |
29 | 29 |
import com.fasterxml.jackson.databind.JsonNode; |
30 | 30 |
import play.Configuration; |
31 | 31 |
import play.Logger; |
32 |
-import play.db.ebean.Transactional; |
|
33 | 32 |
import play.mvc.Controller; |
34 | 33 |
import play.mvc.Http.MultipartFormData.FilePart; |
35 | 34 |
import play.mvc.Result; |
... | ... | @@ -47,7 +46,6 @@ |
47 | 46 |
import static play.libs.Json.toJson; |
48 | 47 |
|
49 | 48 |
@AnonymousCheck |
50 |
-@Transactional |
|
51 | 49 |
public class AttachmentApp extends Controller { |
52 | 50 |
|
53 | 51 |
public static final String TAG_NAME_FOR_TEMPORARY_UPLOAD_FILES = "temporaryUploadFiles"; |
--- app/controllers/BoardApp.java
+++ app/controllers/BoardApp.java
... | ... | @@ -58,7 +58,6 @@ |
58 | 58 |
|
59 | 59 |
import static com.avaje.ebean.Expr.icontains; |
60 | 60 |
|
61 |
-@Transactional |
|
62 | 61 |
public class BoardApp extends AbstractPostingApp { |
63 | 62 |
public static class SearchCondition extends AbstractPostingApp.SearchCondition { |
64 | 63 |
private ExpressionList<Posting> asExpressionList(Project project) { |
... | ... | @@ -119,6 +118,7 @@ |
119 | 118 |
return request().getQueryString("readme") != null; |
120 | 119 |
} |
121 | 120 |
|
121 |
+ @Transactional |
|
122 | 122 |
@IsCreatable(ResourceType.BOARD_POST) |
123 | 123 |
public static Result newPost(String userName, String projectName) { |
124 | 124 |
Form<Posting> postForm = new Form<>(Posting.class).bindFromRequest(); |
... | ... | @@ -212,6 +212,7 @@ |
212 | 212 |
/** |
213 | 213 |
* @see AbstractPostingApp#editPosting(models.AbstractPosting, models.AbstractPosting, play.data.Form, play.mvc.Call, java.lang.Runnable) |
214 | 214 |
*/ |
215 |
+ @Transactional |
|
215 | 216 |
@With(NullProjectCheckAction.class) |
216 | 217 |
public static Result editPost(String userName, String projectName, Long number) { |
217 | 218 |
Form<Posting> postForm = new Form<>(Posting.class).bindFromRequest(); |
... | ... | @@ -252,6 +253,7 @@ |
252 | 253 |
/** |
253 | 254 |
* @see controllers.AbstractPostingApp#delete(play.db.ebean.Model, models.resource.Resource, play.mvc.Call) |
254 | 255 |
*/ |
256 |
+ @Transactional |
|
255 | 257 |
@IsAllowed(value = Operation.DELETE, resourceType = ResourceType.BOARD_POST) |
256 | 258 |
public static Result deletePost(String owner, String projectName, Long number) { |
257 | 259 |
Project project = Project.findByOwnerAndProjectName(owner, projectName); |
... | ... | @@ -264,6 +266,7 @@ |
264 | 266 |
/** |
265 | 267 |
* @see controllers.AbstractPostingApp#saveComment(models.Comment, play.data.Form, play.mvc.Call, Runnable) |
266 | 268 |
*/ |
269 |
+ @Transactional |
|
267 | 270 |
@IsAllowed(value = Operation.READ, resourceType = ResourceType.BOARD_POST) |
268 | 271 |
@With(NullProjectCheckAction.class) |
269 | 272 |
public static Result newComment(String owner, String projectName, Long number) throws IOException { |
... | ... | @@ -303,6 +306,7 @@ |
303 | 306 |
/** |
304 | 307 |
* @see controllers.AbstractPostingApp#delete(play.db.ebean.Model, models.resource.Resource, play.mvc.Call) |
305 | 308 |
*/ |
309 |
+ @Transactional |
|
306 | 310 |
@With(NullProjectCheckAction.class) |
307 | 311 |
public static Result deleteComment(String userName, String projectName, Long number, Long commentId) { |
308 | 312 |
Comment comment = PostingComment.find.byId(commentId); |
--- app/controllers/BranchApp.java
+++ app/controllers/BranchApp.java
... | ... | @@ -29,7 +29,6 @@ |
29 | 29 |
import org.apache.commons.collections.Predicate; |
30 | 30 |
import org.eclipse.jgit.api.errors.GitAPIException; |
31 | 31 |
import org.eclipse.jgit.lib.Repository; |
32 |
-import play.db.ebean.Transactional; |
|
33 | 32 |
import play.mvc.Controller; |
34 | 33 |
import play.mvc.Result; |
35 | 34 |
import playRepository.GitBranch; |
... | ... | @@ -46,7 +45,6 @@ |
46 | 45 |
*/ |
47 | 46 |
@IsOnlyGitAvailable |
48 | 47 |
@AnonymousCheck |
49 |
-@Transactional |
|
50 | 48 |
public class BranchApp extends Controller { |
51 | 49 |
|
52 | 50 |
@IsAllowed(Operation.READ) |
--- app/controllers/CodeApp.java
+++ app/controllers/CodeApp.java
... | ... | @@ -31,7 +31,6 @@ |
31 | 31 |
import com.fasterxml.jackson.databind.node.ObjectNode; |
32 | 32 |
import org.eclipse.jgit.api.errors.GitAPIException; |
33 | 33 |
import org.tmatesoft.svn.core.SVNException; |
34 |
-import play.db.ebean.Transactional; |
|
35 | 34 |
import play.mvc.*; |
36 | 35 |
import playRepository.PlayRepository; |
37 | 36 |
import playRepository.RepositoryService; |
... | ... | @@ -49,7 +48,6 @@ |
49 | 48 |
import java.util.List; |
50 | 49 |
|
51 | 50 |
@AnonymousCheck |
52 |
-@Transactional |
|
53 | 51 |
public class CodeApp extends Controller { |
54 | 52 |
public static String hostName; |
55 | 53 |
|
--- app/controllers/CodeHistoryApp.java
+++ app/controllers/CodeHistoryApp.java
... | ... | @@ -33,7 +33,6 @@ |
33 | 33 |
import org.eclipse.jgit.api.errors.NoHeadException; |
34 | 34 |
import org.tmatesoft.svn.core.SVNException; |
35 | 35 |
import play.data.Form; |
36 |
-import play.db.ebean.Transactional; |
|
37 | 36 |
import play.mvc.*; |
38 | 37 |
import playRepository.Commit; |
39 | 38 |
import playRepository.FileDiff; |
... | ... | @@ -52,7 +51,6 @@ |
52 | 51 |
import java.util.List; |
53 | 52 |
|
54 | 53 |
@AnonymousCheck |
55 |
-@Transactional |
|
56 | 54 |
public class CodeHistoryApp extends Controller { |
57 | 55 |
|
58 | 56 |
private static final int HISTORY_ITEM_LIMIT = 25; |
--- app/controllers/CompareApp.java
+++ app/controllers/CompareApp.java
... | ... | @@ -25,7 +25,6 @@ |
25 | 25 |
import controllers.annotation.IsAllowed; |
26 | 26 |
import models.Project; |
27 | 27 |
import models.enumeration.Operation; |
28 |
-import play.db.ebean.Transactional; |
|
29 | 28 |
import play.mvc.Controller; |
30 | 29 |
import play.mvc.Result; |
31 | 30 |
import playRepository.Commit; |
... | ... | @@ -41,7 +40,6 @@ |
41 | 40 |
@AnonymousCheck |
42 | 41 |
public class CompareApp extends Controller { |
43 | 42 |
@IsAllowed(Operation.READ) |
44 |
- @Transactional |
|
45 | 43 |
public static Result compare(String ownerName, String projectName, String revA, String revB) |
46 | 44 |
throws Exception { |
47 | 45 |
Project project = Project.findByOwnerAndProjectName(ownerName, projectName); |
--- app/controllers/EnrollOrganizationApp.java
+++ app/controllers/EnrollOrganizationApp.java
... | ... | @@ -35,9 +35,9 @@ |
35 | 35 |
import java.util.Map; |
36 | 36 |
|
37 | 37 |
@AnonymousCheck |
38 |
-@Transactional |
|
39 | 38 |
public class EnrollOrganizationApp extends Controller { |
40 | 39 |
|
40 |
+ @Transactional |
|
41 | 41 |
public static Result enroll(String organizationName) { |
42 | 42 |
ValidationResult result = validateForEnroll(organizationName); |
43 | 43 |
if (result.hasError()) { |
... | ... | @@ -72,6 +72,7 @@ |
72 | 72 |
return new ValidationResult(null, false); |
73 | 73 |
} |
74 | 74 |
|
75 |
+ @Transactional |
|
75 | 76 |
public static Result cancelEnroll(String organizationName) { |
76 | 77 |
ValidationResult result = validateForCancelEnroll(organizationName); |
77 | 78 |
if (result.hasError()) { |
--- app/controllers/EnrollProjectApp.java
+++ app/controllers/EnrollProjectApp.java
... | ... | @@ -33,9 +33,9 @@ |
33 | 33 |
import play.mvc.With; |
34 | 34 |
|
35 | 35 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
36 |
-@Transactional |
|
37 | 36 |
public class EnrollProjectApp extends Controller { |
38 | 37 |
|
38 |
+ @Transactional |
|
39 | 39 |
@With(DefaultProjectCheckAction.class) |
40 | 40 |
public static Result enroll(String loginId, String projectName) { |
41 | 41 |
Project project = Project.findByOwnerAndProjectName(loginId, projectName); |
... | ... | @@ -53,6 +53,7 @@ |
53 | 53 |
return ok(); |
54 | 54 |
} |
55 | 55 |
|
56 |
+ @Transactional |
|
56 | 57 |
@With(DefaultProjectCheckAction.class) |
57 | 58 |
public static Result cancelEnroll(String loginId, String proejctName) { |
58 | 59 |
Project project = Project.findByOwnerAndProjectName(loginId, proejctName); |
--- app/controllers/GitApp.java
+++ app/controllers/GitApp.java
... | ... | @@ -27,7 +27,6 @@ |
27 | 27 |
import models.Project; |
28 | 28 |
import models.enumeration.Operation; |
29 | 29 |
|
30 |
-import play.db.ebean.Transactional; |
|
31 | 30 |
import play.mvc.Controller; |
32 | 31 |
import play.mvc.Result; |
33 | 32 |
import play.mvc.With; |
... | ... | @@ -36,7 +35,6 @@ |
36 | 35 |
import utils.AccessControl; |
37 | 36 |
import utils.BasicAuthAction; |
38 | 37 |
|
39 |
-@Transactional |
|
40 | 38 |
public class GitApp extends Controller { |
41 | 39 |
|
42 | 40 |
public static boolean isSupportedService(String service) { |
--- app/controllers/ImportApp.java
+++ app/controllers/ImportApp.java
... | ... | @@ -46,7 +46,6 @@ |
46 | 46 |
import static play.data.Form.form; |
47 | 47 |
|
48 | 48 |
@AnonymousCheck |
49 |
-@Transactional |
|
50 | 49 |
public class ImportApp extends Controller { |
51 | 50 |
|
52 | 51 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
... | ... | @@ -57,6 +56,7 @@ |
57 | 56 |
return ok(importing.render("title.newProject", projectForm, orgUserList)); |
58 | 57 |
} |
59 | 58 |
|
59 |
+ @Transactional |
|
60 | 60 |
public static Result newProject() throws GitAPIException, IOException { |
61 | 61 |
if( !AccessControl.isGlobalResourceCreatable(UserApp.currentUser()) ){ |
62 | 62 |
return forbidden("'" + UserApp.currentUser().name + "' has no permission"); |
--- app/controllers/IssueApp.java
+++ app/controllers/IssueApp.java
... | ... | @@ -50,7 +50,6 @@ |
50 | 50 |
import java.util.Map; |
51 | 51 |
|
52 | 52 |
@AnonymousCheck |
53 |
-@Transactional |
|
54 | 53 |
public class IssueApp extends AbstractPostingApp { |
55 | 54 |
private static final String EXCEL_EXT = "xls"; |
56 | 55 |
private static final Integer ITEMS_PER_PAGE_MAX = 45; |
... | ... | @@ -273,6 +272,7 @@ |
273 | 272 |
return ok(create.render("title.newIssue", new Form<>(Issue.class), project)); |
274 | 273 |
} |
275 | 274 |
|
275 |
+ @Transactional |
|
276 | 276 |
@With(NullProjectCheckAction.class) |
277 | 277 |
public static Result massUpdate(String ownerName, String projectName) { |
278 | 278 |
Form<IssueMassUpdate> issueMassUpdateForm |
... | ... | @@ -390,6 +390,7 @@ |
390 | 390 |
} |
391 | 391 |
} |
392 | 392 |
|
393 |
+ @Transactional |
|
393 | 394 |
@IsCreatable(ResourceType.ISSUE_POST) |
394 | 395 |
public static Result newIssue(String ownerName, String projectName) { |
395 | 396 |
Form<Issue> issueForm = new Form<>(Issue.class).bindFromRequest(); |
... | ... | @@ -455,6 +456,7 @@ |
455 | 456 |
return ok(edit.render("title.editIssue", editForm, issue, project)); |
456 | 457 |
} |
457 | 458 |
|
459 |
+ @Transactional |
|
458 | 460 |
@IsAllowed(value = Operation.UPDATE, resourceType = ResourceType.ISSUE_POST) |
459 | 461 |
public static Result nextState(String ownerName, String projectName, Long number) { |
460 | 462 |
Project project = Project.findByOwnerAndProjectName(ownerName, projectName); |
... | ... | @@ -556,6 +558,7 @@ |
556 | 558 |
/** |
557 | 559 |
* @ see {@link AbstractPostingApp#delete(play.db.ebean.Model, models.resource.Resource, Call)} |
558 | 560 |
*/ |
561 |
+ @Transactional |
|
559 | 562 |
@With(NullProjectCheckAction.class) |
560 | 563 |
public static Result deleteIssue(String ownerName, String projectName, Long number) { |
561 | 564 |
Project project = Project.findByOwnerAndProjectName(ownerName, projectName); |
... | ... | @@ -572,6 +575,7 @@ |
572 | 575 |
/** |
573 | 576 |
* @see {@link AbstractPostingApp#newComment(models.Comment, play.data.Form} |
574 | 577 |
*/ |
578 |
+ @Transactional |
|
575 | 579 |
@With(NullProjectCheckAction.class) |
576 | 580 |
public static Result newComment(String ownerName, String projectName, Long number) throws IOException { |
577 | 581 |
Project project = Project.findByOwnerAndProjectName(ownerName, projectName); |
... | ... | @@ -650,6 +654,7 @@ |
650 | 654 |
/** |
651 | 655 |
* @see {@link AbstractPostingApp#delete(play.db.ebean.Model, models.resource.Resource, Call)} |
652 | 656 |
*/ |
657 |
+ @Transactional |
|
653 | 658 |
@With(NullProjectCheckAction.class) |
654 | 659 |
public static Result deleteComment(String ownerName, String projectName, Long issueNumber, |
655 | 660 |
Long commentId) { |
--- app/controllers/IssueLabelApp.java
+++ app/controllers/IssueLabelApp.java
... | ... | @@ -48,7 +48,6 @@ |
48 | 48 |
import static play.libs.Json.toJson; |
49 | 49 |
|
50 | 50 |
@AnonymousCheck |
51 |
-@Transactional |
|
52 | 51 |
public class IssueLabelApp extends Controller { |
53 | 52 |
/** |
54 | 53 |
* Responds to a request for issue labels of the specified project. |
... | ... | @@ -184,6 +183,7 @@ |
184 | 183 |
* @param projectName the name of a project |
185 | 184 |
* @return the response to the request to add a new issue label |
186 | 185 |
*/ |
186 |
+ @Transactional |
|
187 | 187 |
@IsCreatable(ResourceType.ISSUE_LABEL) |
188 | 188 |
public static Result newLabel(String ownerName, String projectName) { |
189 | 189 |
Project project = Project.findByOwnerAndProjectName(ownerName, projectName); |
... | ... | @@ -249,6 +249,7 @@ |
249 | 249 |
* @param id the id of the label to be deleted |
250 | 250 |
* @return the response to the request to delete an issue label |
251 | 251 |
*/ |
252 |
+ @Transactional |
|
252 | 253 |
@IsAllowed(value = Operation.DELETE, resourceType = ResourceType.ISSUE_LABEL) |
253 | 254 |
public static Result delete(String ownerName, String projectName, Long id) { |
254 | 255 |
// _method must be 'delete' |
... | ... | @@ -451,6 +452,7 @@ |
451 | 452 |
return created(toJson(categoryPropertyMap)).as("application/json"); |
452 | 453 |
} |
453 | 454 |
|
455 |
+ @Transactional |
|
454 | 456 |
@IsAllowed(value = Operation.DELETE, resourceType = ResourceType.ISSUE_LABEL_CATEGORY) |
455 | 457 |
public static Result deleteCategory(String ownerName, String projectName, Long id) { |
456 | 458 |
IssueLabelCategory.find.byId(id).delete(); |
--- app/controllers/LabelApp.java
+++ app/controllers/LabelApp.java
... | ... | @@ -27,7 +27,6 @@ |
27 | 27 |
import controllers.annotation.AnonymousCheck; |
28 | 28 |
import models.Label; |
29 | 29 |
import org.apache.commons.lang3.StringUtils; |
30 |
-import play.db.ebean.Transactional; |
|
31 | 30 |
import play.mvc.Controller; |
32 | 31 |
import play.mvc.Http; |
33 | 32 |
import play.mvc.Result; |
... | ... | @@ -41,7 +40,6 @@ |
41 | 40 |
import static play.libs.Json.toJson; |
42 | 41 |
|
43 | 42 |
@AnonymousCheck |
44 |
-@Transactional |
|
45 | 43 |
public class LabelApp extends Controller { |
46 | 44 |
private static final int MAX_FETCH_LABELS = 1000; |
47 | 45 |
|
--- app/controllers/MarkdownApp.java
+++ app/controllers/MarkdownApp.java
... | ... | @@ -22,7 +22,6 @@ |
22 | 22 |
|
23 | 23 |
import play.data.DynamicForm; |
24 | 24 |
import models.Project; |
25 |
-import play.db.ebean.Transactional; |
|
26 | 25 |
import play.mvc.Controller; |
27 | 26 |
import play.mvc.Result; |
28 | 27 |
import utils.Markdown; |
... | ... | @@ -30,7 +29,6 @@ |
30 | 29 |
import static play.data.Form.form; |
31 | 30 |
|
32 | 31 |
public class MarkdownApp extends Controller { |
33 |
- @Transactional |
|
34 | 32 |
public static Result render(String ownerName, String projectName) { |
35 | 33 |
DynamicForm dynamicForm = form().bindFromRequest(); |
36 | 34 |
String source = dynamicForm.get("body"); |
--- app/controllers/MilestoneApp.java
+++ app/controllers/MilestoneApp.java
... | ... | @@ -45,7 +45,6 @@ |
45 | 45 |
import static play.data.Form.form; |
46 | 46 |
|
47 | 47 |
@AnonymousCheck |
48 |
-@Transactional |
|
49 | 48 |
public class MilestoneApp extends Controller { |
50 | 49 |
|
51 | 50 |
public static class MilestoneCondition { |
... | ... | @@ -91,6 +90,7 @@ |
91 | 90 |
* |
92 | 91 |
* @see {@link #validate(models.Project, play.data.Form)} |
93 | 92 |
*/ |
93 |
+ @Transactional |
|
94 | 94 |
@IsCreatable(ResourceType.MILESTONE) |
95 | 95 |
public static Result newMilestone(String userName, String projectName) { |
96 | 96 |
Form<Milestone> milestoneForm = new Form<>(Milestone.class).bindFromRequest(); |
... | ... | @@ -138,6 +138,7 @@ |
138 | 138 |
/** |
139 | 139 |
* when: POST /:user/:project/milestone/:id/edit |
140 | 140 |
*/ |
141 |
+ @Transactional |
|
141 | 142 |
@IsAllowed(value = Operation.UPDATE, resourceType = ResourceType.MILESTONE) |
142 | 143 |
public static Result editMilestone(String userName, String projectName, Long milestoneId) { |
143 | 144 |
Project project = Project.findByOwnerAndProjectName(userName, projectName); |
... | ... | @@ -168,6 +169,7 @@ |
168 | 169 |
/** |
169 | 170 |
* when: GET /:user/:project/milestone/:id/delete |
170 | 171 |
*/ |
172 |
+ @Transactional |
|
171 | 173 |
@IsAllowed(value = Operation.DELETE, resourceType = ResourceType.MILESTONE) |
172 | 174 |
public static Result deleteMilestone(String userName, String projectName, Long id) { |
173 | 175 |
Project project = Project.findByOwnerAndProjectName(userName, projectName); |
... | ... | @@ -186,6 +188,7 @@ |
186 | 188 |
return redirect(routes.MilestoneApp.milestones(userName, projectName)); |
187 | 189 |
} |
188 | 190 |
|
191 |
+ @Transactional |
|
189 | 192 |
@IsAllowed(value = Operation.UPDATE, resourceType = ResourceType.MILESTONE) |
190 | 193 |
public static Result open(String userName, String projectName, Long id) { |
191 | 194 |
Milestone milestone = Milestone.findById(id); |
... | ... | @@ -193,6 +196,7 @@ |
193 | 196 |
return redirect(routes.MilestoneApp.milestone(userName, projectName, id)); |
194 | 197 |
} |
195 | 198 |
|
199 |
+ @Transactional |
|
196 | 200 |
@IsAllowed(value = Operation.UPDATE, resourceType = ResourceType.MILESTONE) |
197 | 201 |
public static Result close(String userName, String projectName, Long id) { |
198 | 202 |
Milestone milestone = Milestone.findById(id); |
--- app/controllers/NotificationApp.java
+++ app/controllers/NotificationApp.java
... | ... | @@ -21,13 +21,11 @@ |
21 | 21 |
package controllers; |
22 | 22 |
|
23 | 23 |
import controllers.annotation.AnonymousCheck; |
24 |
-import play.db.ebean.Transactional; |
|
25 | 24 |
import play.mvc.Controller; |
26 | 25 |
import play.mvc.Result; |
27 | 26 |
|
28 | 27 |
@AnonymousCheck |
29 | 28 |
public class NotificationApp extends Controller { |
30 |
- @Transactional |
|
31 | 29 |
public static Result notifications(int from, int size) { |
32 | 30 |
return ok(views.html.index.partial_notifications.render(from, size)); |
33 | 31 |
} |
--- app/controllers/OrganizationApp.java
+++ app/controllers/OrganizationApp.java
... | ... | @@ -54,7 +54,6 @@ |
54 | 54 |
* @author Keeun Baik |
55 | 55 |
*/ |
56 | 56 |
@AnonymousCheck |
57 |
-@Transactional |
|
58 | 57 |
public class OrganizationApp extends Controller { |
59 | 58 |
/** |
60 | 59 |
* show New Group page |
... | ... | @@ -116,6 +115,7 @@ |
116 | 115 |
return ok(view.render(org)); |
117 | 116 |
} |
118 | 117 |
|
118 |
+ @Transactional |
|
119 | 119 |
public static Result addMember(String organizationName) { |
120 | 120 |
Form<User> addMemberForm = form(User.class).bindFromRequest(); |
121 | 121 |
Result result = validateForAddMember(addMemberForm, organizationName); |
... | ... | @@ -161,6 +161,7 @@ |
161 | 161 |
return null; |
162 | 162 |
} |
163 | 163 |
|
164 |
+ @Transactional |
|
164 | 165 |
public static Result deleteMember(String organizationName, Long userId) { |
165 | 166 |
Result result = validateForDeleteMember(organizationName, userId); |
166 | 167 |
if (result != null) { |
... | ... | @@ -203,6 +204,7 @@ |
203 | 204 |
return null; |
204 | 205 |
} |
205 | 206 |
|
207 |
+ @Transactional |
|
206 | 208 |
public static Result editMember(String organizationName, Long userId) { |
207 | 209 |
Form<Role> roleForm = form(Role.class).bindFromRequest(); |
208 | 210 |
Result result = validateForEditMember(roleForm, organizationName, userId); |
... | ... | @@ -246,6 +248,7 @@ |
246 | 248 |
return null; |
247 | 249 |
} |
248 | 250 |
|
251 |
+ @Transactional |
|
249 | 252 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
250 | 253 |
public static Result leave(String organizationName) { |
251 | 254 |
ValidationResult result = validateForLeave(organizationName); |
... | ... | @@ -415,6 +418,7 @@ |
415 | 418 |
return ok(deleteForm.render(organization)); |
416 | 419 |
} |
417 | 420 |
|
421 |
+ @Transactional |
|
418 | 422 |
public static Result deleteOrganization(String organizationName) { |
419 | 423 |
Organization organization = Organization.findByName(organizationName); |
420 | 424 |
|
--- app/controllers/PasswordResetApp.java
+++ app/controllers/PasswordResetApp.java
... | ... | @@ -29,7 +29,6 @@ |
29 | 29 |
import play.Configuration; |
30 | 30 |
import play.Logger; |
31 | 31 |
import play.data.DynamicForm; |
32 |
-import play.db.ebean.Transactional; |
|
33 | 32 |
import play.i18n.Messages; |
34 | 33 |
import play.mvc.Controller; |
35 | 34 |
import play.mvc.Result; |
... | ... | @@ -43,7 +42,6 @@ |
43 | 42 |
import static play.data.Form.form; |
44 | 43 |
|
45 | 44 |
@AnonymousCheck |
46 |
-@Transactional |
|
47 | 45 |
public class PasswordResetApp extends Controller { |
48 | 46 |
|
49 | 47 |
public static Result lostPassword(){ |
--- app/controllers/ProjectApp.java
+++ app/controllers/ProjectApp.java
... | ... | @@ -72,7 +72,6 @@ |
72 | 72 |
import static utils.TemplateHelper.*; |
73 | 73 |
|
74 | 74 |
@AnonymousCheck |
75 |
-@Transactional |
|
76 | 75 |
public class ProjectApp extends Controller { |
77 | 76 |
|
78 | 77 |
private static final int ISSUE_MENTION_SHOW_LIMIT = 2000; |
... | ... | @@ -173,6 +172,7 @@ |
173 | 172 |
return ok(setting.render("title.projectSetting", projectForm, project, repository.getBranchNames())); |
174 | 173 |
} |
175 | 174 |
|
175 |
+ @Transactional |
|
176 | 176 |
public static Result newProject() throws Exception { |
177 | 177 |
Form<Project> filledNewProjectForm = form(Project.class).bindFromRequest(); |
178 | 178 |
String owner = filledNewProjectForm.field("owner").value(); |
... | ... | @@ -236,6 +236,7 @@ |
236 | 236 |
return newProjectForm.hasErrors(); |
237 | 237 |
} |
238 | 238 |
|
239 |
+ @Transactional |
|
239 | 240 |
@IsAllowed(Operation.UPDATE) |
240 | 241 |
public static Result settingProject(String ownerId, String projectName) |
241 | 242 |
throws IOException, NoSuchAlgorithmException, UnsupportedOperationException, ServletException { |
... | ... | @@ -335,6 +336,7 @@ |
335 | 336 |
return ok(delete.render("title.projectDelete", projectForm, project)); |
336 | 337 |
} |
337 | 338 |
|
339 |
+ @Transactional |
|
338 | 340 |
@IsAllowed(Operation.DELETE) |
339 | 341 |
public static Result deleteProject(String ownerId, String projectName) throws Exception { |
340 | 342 |
Project project = Project.findByOwnerAndProjectName(ownerId, projectName); |
... | ... | @@ -349,6 +351,7 @@ |
349 | 351 |
return redirect(routes.Application.index()); |
350 | 352 |
} |
351 | 353 |
|
354 |
+ @Transactional |
|
352 | 355 |
@IsAllowed(Operation.UPDATE) |
353 | 356 |
public static Result members(String loginId, String projectName) { |
354 | 357 |
Project project = Project.findByOwnerAndProjectName(loginId, projectName); |
... | ... | @@ -522,6 +525,7 @@ |
522 | 525 |
return ok(transfer.render("title.projectTransfer", projectForm, project)); |
523 | 526 |
} |
524 | 527 |
|
528 |
+ @Transactional |
|
525 | 529 |
@IsAllowed(Operation.DELETE) |
526 | 530 |
public static Result transferProject(String ownerId, String projectName) { |
527 | 531 |
Project project = Project.findByOwnerAndProjectName(ownerId, projectName); |
... | ... | @@ -563,6 +567,7 @@ |
563 | 567 |
return redirect(url); |
564 | 568 |
} |
565 | 569 |
|
570 |
+ @Transactional |
|
566 | 571 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
567 | 572 |
public static synchronized Result acceptTransfer(Long id, String confirmKey) throws IOException, ServletException { |
568 | 573 |
ProjectTransfer pt = ProjectTransfer.findValidOne(id); |
... | ... | @@ -796,6 +801,7 @@ |
796 | 801 |
} |
797 | 802 |
} |
798 | 803 |
|
804 |
+ @Transactional |
|
799 | 805 |
@With(DefaultProjectCheckAction.class) |
800 | 806 |
@IsAllowed(Operation.UPDATE) |
801 | 807 |
public static Result newMember(String ownerId, String projectName) { |
... | ... | @@ -861,6 +867,7 @@ |
861 | 867 |
* @param userId |
862 | 868 |
* @return the result |
863 | 869 |
*/ |
870 |
+ @Transactional |
|
864 | 871 |
@With(DefaultProjectCheckAction.class) |
865 | 872 |
public static Result deleteMember(String ownerId, String projectName, Long userId) { |
866 | 873 |
Project project = Project.findByOwnerAndProjectName(ownerId, projectName); |
... | ... | @@ -894,6 +901,7 @@ |
894 | 901 |
* @param userId the user id |
895 | 902 |
* @return |
896 | 903 |
*/ |
904 |
+ @Transactional |
|
897 | 905 |
@IsAllowed(Operation.UPDATE) |
898 | 906 |
public static Result editMember(String ownerId, String projectName, Long userId) { |
899 | 907 |
Project project = Project.findByOwnerAndProjectName(ownerId, projectName); |
... | ... | @@ -1031,6 +1039,7 @@ |
1031 | 1039 |
* @param projectName the project name |
1032 | 1040 |
* @return the result |
1033 | 1041 |
*/ |
1042 |
+ @Transactional |
|
1034 | 1043 |
@With(DefaultProjectCheckAction.class) |
1035 | 1044 |
public static Result attachLabel(String ownerId, String projectName) { |
1036 | 1045 |
Project project = Project.findByOwnerAndProjectName(ownerId, projectName); |
... | ... | @@ -1091,6 +1100,7 @@ |
1091 | 1100 |
* @param id the id |
1092 | 1101 |
* @return the result |
1093 | 1102 |
*/ |
1103 |
+ @Transactional |
|
1094 | 1104 |
@With(DefaultProjectCheckAction.class) |
1095 | 1105 |
public static Result detachLabel(String ownerId, String projectName, Long id) { |
1096 | 1106 |
Project project = Project.findByOwnerAndProjectName(ownerId, projectName); |
... | ... | @@ -1117,6 +1127,7 @@ |
1117 | 1127 |
return status(Http.Status.NO_CONTENT); |
1118 | 1128 |
} |
1119 | 1129 |
|
1130 |
+ @Transactional |
|
1120 | 1131 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
1121 | 1132 |
@IsAllowed(Operation.DELETE) |
1122 | 1133 |
public static Result deletePushedBranch(String ownerId, String projectName, Long id) { |
--- app/controllers/PullRequestApp.java
+++ app/controllers/PullRequestApp.java
... | ... | @@ -66,7 +66,6 @@ |
66 | 66 |
|
67 | 67 |
@IsOnlyGitAvailable |
68 | 68 |
@AnonymousCheck |
69 |
-@Transactional |
|
70 | 69 |
public class PullRequestApp extends Controller { |
71 | 70 |
|
72 | 71 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
... | ... | @@ -110,6 +109,7 @@ |
110 | 109 |
return ok(clone.render("fork", forkProject)); |
111 | 110 |
} |
112 | 111 |
|
112 |
+ @Transactional |
|
113 | 113 |
@IsCreatable(ResourceType.FORK) |
114 | 114 |
public static Result doClone(String userName, String projectName) { |
115 | 115 |
Form<Project> form = new Form<>(Project.class).bindFromRequest(); |
... | ... | @@ -232,6 +232,7 @@ |
232 | 232 |
mergeResult.conflicts())); |
233 | 233 |
} |
234 | 234 |
|
235 |
+ @Transactional |
|
235 | 236 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
236 | 237 |
@IsCreatable(ResourceType.FORK) |
237 | 238 |
public static Result newPullRequest(String userName, String projectName) throws IOException, GitAPIException { |
... | ... | @@ -382,6 +383,7 @@ |
382 | 383 |
return ok(views.html.git.viewChanges.render(project, pullRequest, commitId)); |
383 | 384 |
} |
384 | 385 |
|
386 |
+ @Transactional |
|
385 | 387 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
386 | 388 |
@IsAllowed(value = Operation.ACCEPT, resourceType = ResourceType.PULL_REQUEST) |
387 | 389 |
public static Promise<Result> accept(final String userName, final String projectName, |
... | ... | @@ -427,6 +429,7 @@ |
427 | 429 |
PullRequestEvent.addFromNotificationEvent(notiEvent, pullRequest); |
428 | 430 |
} |
429 | 431 |
|
432 |
+ @Transactional |
|
430 | 433 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
431 | 434 |
@IsAllowed(value = Operation.CLOSE, resourceType = ResourceType.PULL_REQUEST) |
432 | 435 |
public static Result close(String userName, String projectName, Long pullRequestNumber) { |
... | ... | @@ -442,6 +445,7 @@ |
442 | 445 |
return redirect(call); |
443 | 446 |
} |
444 | 447 |
|
448 |
+ @Transactional |
|
445 | 449 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
446 | 450 |
@IsAllowed(value = Operation.REOPEN, resourceType = ResourceType.PULL_REQUEST) |
447 | 451 |
public static Result open(String userName, String projectName, Long pullRequestNumber) { |
... | ... | @@ -479,6 +483,7 @@ |
479 | 483 |
return ok(edit.render("title.editPullRequest", editForm, fromProject, fromBranches, toBranches, pullRequest)); |
480 | 484 |
} |
481 | 485 |
|
486 |
+ @Transactional |
|
482 | 487 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
483 | 488 |
@IsAllowed(value = Operation.UPDATE, resourceType = ResourceType.PULL_REQUEST) |
484 | 489 |
public static Result editPullRequest(String userName, String projectName, Long pullRequestNumber) { |
... | ... | @@ -512,6 +517,7 @@ |
512 | 517 |
return redirect(routes.PullRequestApp.pullRequest(toProject.owner, toProject.name, pullRequest.number)); |
513 | 518 |
} |
514 | 519 |
|
520 |
+ @Transactional |
|
515 | 521 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
516 | 522 |
@IsAllowed(value = Operation.UPDATE, resourceType = ResourceType.PULL_REQUEST) |
517 | 523 |
public static Result deleteFromBranch(String userName, String projectName, Long pullRequestNumber) { |
... | ... | @@ -523,6 +529,7 @@ |
523 | 529 |
return redirect(routes.PullRequestApp.pullRequest(toProject.owner, toProject.name, pullRequestNumber)); |
524 | 530 |
} |
525 | 531 |
|
532 |
+ @Transactional |
|
526 | 533 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
527 | 534 |
@IsAllowed(value = Operation.UPDATE, resourceType = ResourceType.PULL_REQUEST) |
528 | 535 |
public static Result restoreFromBranch(String userName, String projectName, Long pullRequestNumber) { |
--- app/controllers/ReviewApp.java
+++ app/controllers/ReviewApp.java
... | ... | @@ -35,9 +35,9 @@ |
35 | 35 |
import play.mvc.Result; |
36 | 36 |
|
37 | 37 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
38 |
-@Transactional |
|
39 | 38 |
public class ReviewApp extends Controller { |
40 | 39 |
|
40 |
+ @Transactional |
|
41 | 41 |
@IsAllowed(value = Operation.ACCEPT, resourceType = ResourceType.PULL_REQUEST) |
42 | 42 |
public static Result review(String userName, String projectName, Long pullRequestNumber) { |
43 | 43 |
Project project = Project.findByOwnerAndProjectName(userName, projectName); |
... | ... | @@ -51,6 +51,7 @@ |
51 | 51 |
return redirect(call); |
52 | 52 |
} |
53 | 53 |
|
54 |
+ @Transactional |
|
54 | 55 |
@IsAllowed(value = Operation.ACCEPT, resourceType = ResourceType.PULL_REQUEST) |
55 | 56 |
public static Result unreview(String userName, String projectName, Long pullRequestNumber) { |
56 | 57 |
Project project = Project.findByOwnerAndProjectName(userName, projectName); |
--- app/controllers/ReviewThreadApp.java
+++ app/controllers/ReviewThreadApp.java
... | ... | @@ -29,7 +29,6 @@ |
29 | 29 |
import models.enumeration.Operation; |
30 | 30 |
import models.support.ReviewSearchCondition; |
31 | 31 |
import play.data.Form; |
32 |
-import play.db.ebean.Transactional; |
|
33 | 32 |
import play.mvc.Controller; |
34 | 33 |
import play.mvc.Result; |
35 | 34 |
import views.html.reviewthread.list; |
... | ... | @@ -45,7 +44,6 @@ |
45 | 44 |
|
46 | 45 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
47 | 46 |
@IsAllowed(value = Operation.READ) |
48 |
- @Transactional |
|
49 | 47 |
public static Result reviewThreads(String ownerName, String projectName) { |
50 | 48 |
Project project = Project.findByOwnerAndProjectName(ownerName, projectName); |
51 | 49 |
ReviewSearchCondition searchCondition = Form.form(ReviewSearchCondition.class).bindFromRequest().get(); |
--- app/controllers/SearchApp.java
+++ app/controllers/SearchApp.java
... | ... | @@ -26,14 +26,12 @@ |
26 | 26 |
import models.enumeration.Operation; |
27 | 27 |
import models.enumeration.SearchType; |
28 | 28 |
import org.apache.commons.lang3.StringUtils; |
29 |
-import play.db.ebean.Transactional; |
|
30 | 29 |
import play.mvc.Controller; |
31 | 30 |
import play.mvc.Result; |
32 | 31 |
import utils.ErrorViews; |
33 | 32 |
import views.html.search.*; |
34 | 33 |
|
35 | 34 |
@AnonymousCheck |
36 |
-@Transactional |
|
37 | 35 |
public class SearchApp extends Controller { |
38 | 36 |
|
39 | 37 |
private static final PageParam DEFAULT_PAGE = new PageParam(0, 20); |
--- app/controllers/SiteApp.java
+++ app/controllers/SiteApp.java
... | ... | @@ -46,7 +46,6 @@ |
46 | 46 |
*/ |
47 | 47 |
@With(SiteManagerAuthAction.class) |
48 | 48 |
@AnonymousCheck |
49 |
-@Transactional |
|
50 | 49 |
public class SiteApp extends Controller { |
51 | 50 |
|
52 | 51 |
private static final int PROJECT_COUNT_PER_PAGE = 25; |
... | ... | @@ -134,6 +133,7 @@ |
134 | 133 |
* @return the result |
135 | 134 |
* @see {@link Project#isOnlyManager(Long)} |
136 | 135 |
*/ |
136 |
+ @Transactional |
|
137 | 137 |
public static Result deleteUser(Long userId) { |
138 | 138 |
if (User.findByLoginId(session().get("loginId")).isSiteManager()){ |
139 | 139 |
if (Project.isOnlyManager(userId)) { |
... | ... | @@ -169,6 +169,7 @@ |
169 | 169 |
* @param projectId the project id |
170 | 170 |
* @return the result |
171 | 171 |
*/ |
172 |
+ @Transactional |
|
172 | 173 |
public static Result deleteProject(Long projectId){ |
173 | 174 |
if( User.findByLoginId(session().get("loginId")).isSiteManager() ){ |
174 | 175 |
Project.find.byId(projectId).delete(); |
--- app/controllers/StatisticsApp.java
+++ app/controllers/StatisticsApp.java
... | ... | @@ -23,7 +23,6 @@ |
23 | 23 |
import actions.DefaultProjectCheckAction; |
24 | 24 |
import controllers.annotation.AnonymousCheck; |
25 | 25 |
import models.Project; |
26 |
-import play.db.ebean.Transactional; |
|
27 | 26 |
import play.mvc.Controller; |
28 | 27 |
import play.mvc.Result; |
29 | 28 |
import play.mvc.With; |
... | ... | @@ -33,7 +32,6 @@ |
33 | 32 |
public class StatisticsApp extends Controller { |
34 | 33 |
|
35 | 34 |
@With(DefaultProjectCheckAction.class) |
36 |
- @Transactional |
|
37 | 35 |
public static Result statistics(String userName, String projectName) { |
38 | 36 |
Project project = Project.findByOwnerAndProjectName(userName, projectName); |
39 | 37 |
return ok(statistics.render("statistics", project)); |
--- app/controllers/SvnApp.java
+++ app/controllers/SvnApp.java
... | ... | @@ -26,7 +26,6 @@ |
26 | 26 |
import org.apache.commons.lang.ArrayUtils; |
27 | 27 |
import org.apache.commons.lang3.StringUtils; |
28 | 28 |
import org.tmatesoft.svn.core.internal.server.dav.handlers.DAVHandlerFactory; |
29 |
-import play.db.ebean.Transactional; |
|
30 | 29 |
import play.mvc.*; |
31 | 30 |
import playRepository.PlayRepository; |
32 | 31 |
import playRepository.RepositoryService; |
... | ... | @@ -37,7 +36,6 @@ |
37 | 36 |
import java.io.PipedInputStream; |
38 | 37 |
import java.net.URISyntaxException; |
39 | 38 |
|
40 |
-@Transactional |
|
41 | 39 |
public class SvnApp extends Controller { |
42 | 40 |
private static final String[] WEBDAV_METHODS = { |
43 | 41 |
DAVHandlerFactory.METHOD_PROPFIND, |
--- app/controllers/UserApp.java
+++ app/controllers/UserApp.java
... | ... | @@ -20,6 +20,7 @@ |
20 | 20 |
package controllers; |
21 | 21 |
|
22 | 22 |
import com.avaje.ebean.ExpressionList; |
23 |
+import com.avaje.ebean.annotation.Transactional; |
|
23 | 24 |
import controllers.annotation.AnonymousCheck; |
24 | 25 |
import models.*; |
25 | 26 |
import models.enumeration.Operation; |
... | ... | @@ -36,7 +37,6 @@ |
36 | 37 |
import play.Logger; |
37 | 38 |
import play.Play; |
38 | 39 |
import play.data.Form; |
39 |
-import play.db.ebean.Transactional; |
|
40 | 40 |
import play.i18n.Messages; |
41 | 41 |
import play.libs.Json; |
42 | 42 |
import play.mvc.*; |
... | ... | @@ -49,7 +49,6 @@ |
49 | 49 |
import static play.data.Form.form; |
50 | 50 |
import static play.libs.Json.toJson; |
51 | 51 |
|
52 |
-@Transactional |
|
53 | 52 |
public class UserApp extends Controller { |
54 | 53 |
public static final String SESSION_USERID = "userId"; |
55 | 54 |
public static final String SESSION_LOGINID = "loginId"; |
... | ... | @@ -301,6 +300,7 @@ |
301 | 300 |
return ok(signup.render("title.signup", form(User.class))); |
302 | 301 |
} |
303 | 302 |
|
303 |
+ @Transactional |
|
304 | 304 |
public static Result newUser() { |
305 | 305 |
Form<User> newUserForm = form(User.class).bindFromRequest(); |
306 | 306 |
validate(newUserForm); |
... | ... | @@ -317,6 +317,7 @@ |
317 | 317 |
} |
318 | 318 |
} |
319 | 319 |
|
320 |
+ @Transactional |
|
320 | 321 |
public static Result resetUserPassword() { |
321 | 322 |
Form<User> userForm = form(User.class).bindFromRequest(); |
322 | 323 |
|
... | ... | @@ -349,6 +350,7 @@ |
349 | 350 |
return currentUser.password.equals(hashedOldPassword); |
350 | 351 |
} |
351 | 352 |
|
353 |
+ @Transactional |
|
352 | 354 |
public static void resetPassword(User user, String newPassword) { |
353 | 355 |
user.password = hashedPassword(newPassword, user.passwordSalt); |
354 | 356 |
user.save(); |
... | ... | @@ -607,6 +609,7 @@ |
607 | 609 |
} |
608 | 610 |
|
609 | 611 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
612 |
+ @Transactional |
|
610 | 613 |
public static Result editUserInfo() { |
611 | 614 |
Form<User> userForm = new Form<>(User.class).bindFromRequest("name", "email"); |
612 | 615 |
String newEmail = userForm.data().get("email"); |
... | ... | @@ -651,6 +654,7 @@ |
651 | 654 |
return redirect(routes.UserApp.userInfo(user.loginId, DEFAULT_GROUP, DAYS_AGO, DEFAULT_SELECTED_TAB)); |
652 | 655 |
} |
653 | 656 |
|
657 |
+ @Transactional |
|
654 | 658 |
public static Result leave(String userName, String projectName) { |
655 | 659 |
ProjectApp.deleteMember(userName, projectName, UserApp.currentUser().id); |
656 | 660 |
return redirect(routes.UserApp.userInfo(UserApp.currentUser().loginId, DEFAULT_GROUP, DAYS_AGO, DEFAULT_SELECTED_TAB)); |
... | ... | @@ -692,6 +696,7 @@ |
692 | 696 |
return new Sha256Hash(plainTextPassword, ByteSource.Util.bytes(passwordSalt), HASH_ITERATIONS).toBase64(); |
693 | 697 |
} |
694 | 698 |
|
699 |
+ @Transactional |
|
695 | 700 |
public static Result addEmail() { |
696 | 701 |
Form<Email> emailForm = form(Email.class).bindFromRequest(); |
697 | 702 |
String newEmail = emailForm.data().get("email"); |
... | ... | @@ -722,6 +727,7 @@ |
722 | 727 |
return redirect(routes.UserApp.editUserInfoForm()); |
723 | 728 |
} |
724 | 729 |
|
730 |
+ @Transactional |
|
725 | 731 |
public static Result deleteEmail(Long id) { |
726 | 732 |
User currentUser = currentUser(); |
727 | 733 |
Email email = Email.find.byId(id); |
... | ... | @@ -738,6 +744,7 @@ |
738 | 744 |
return redirect(routes.UserApp.editUserInfoForm()); |
739 | 745 |
} |
740 | 746 |
|
747 |
+ @Transactional |
|
741 | 748 |
public static Result sendValidationEmail(Long id) { |
742 | 749 |
User currentUser = currentUser(); |
743 | 750 |
Email email = Email.find.byId(id); |
... | ... | @@ -756,6 +763,7 @@ |
756 | 763 |
return redirect(routes.UserApp.editUserInfoForm()); |
757 | 764 |
} |
758 | 765 |
|
766 |
+ @Transactional |
|
759 | 767 |
public static Result confirmEmail(Long id, String token) { |
760 | 768 |
Email email = Email.find.byId(id); |
761 | 769 |
|
... | ... | @@ -771,6 +779,7 @@ |
771 | 779 |
} |
772 | 780 |
} |
773 | 781 |
|
782 |
+ @Transactional |
|
774 | 783 |
public static Result setAsMainEmail(Long id) { |
775 | 784 |
User currentUser = currentUser(); |
776 | 785 |
Email email = Email.find.byId(id); |
--- app/controllers/VoteApp.java
+++ app/controllers/VoteApp.java
... | ... | @@ -39,7 +39,6 @@ |
39 | 39 |
* The Controller which plays a role in voting in the issue. |
40 | 40 |
*/ |
41 | 41 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
42 |
-@Transactional |
|
43 | 42 |
public class VoteApp extends Controller { |
44 | 43 |
|
45 | 44 |
/** |
... | ... | @@ -52,6 +51,7 @@ |
52 | 51 |
* @param issueNumber |
53 | 52 |
* @return |
54 | 53 |
*/ |
54 |
+ @Transactional |
|
55 | 55 |
@IsAllowed(Operation.READ) |
56 | 56 |
public static Result vote(String ownerName, String projectName, Long issueNumber) { |
57 | 57 |
|
... | ... | @@ -75,6 +75,7 @@ |
75 | 75 |
* @param issueNumber |
76 | 76 |
* @return |
77 | 77 |
*/ |
78 |
+ @Transactional |
|
78 | 79 |
@IsAllowed(Operation.READ) |
79 | 80 |
public static Result unvote(String ownerName, String projectName, Long issueNumber) { |
80 | 81 |
Project project = Project.findByOwnerAndProjectName(ownerName, projectName); |
... | ... | @@ -87,6 +88,7 @@ |
87 | 88 |
return redirect(call); |
88 | 89 |
} |
89 | 90 |
|
91 |
+ @Transactional |
|
90 | 92 |
@IsAllowed(Operation.READ) |
91 | 93 |
public static Result voteComment(String user, String project, Long number, Long commentId) { |
92 | 94 |
IssueComment issueComment = IssueComment.find.byId(commentId); |
... | ... | @@ -99,6 +101,7 @@ |
99 | 101 |
return redirect(RouteUtil.getUrl(issueComment)); |
100 | 102 |
} |
101 | 103 |
|
104 |
+ @Transactional |
|
102 | 105 |
@IsAllowed(Operation.READ) |
103 | 106 |
public static Result unvoteComment(String user, String project, Long number, Long commentId) { |
104 | 107 |
IssueComment issueComment = IssueComment.find.byId(commentId); |
--- app/controllers/WatchApp.java
+++ app/controllers/WatchApp.java
... | ... | @@ -35,7 +35,6 @@ |
35 | 35 |
import utils.RouteUtil; |
36 | 36 |
import org.apache.commons.lang3.StringUtils; |
37 | 37 |
|
38 |
-@Transactional |
|
39 | 38 |
public class WatchApp extends Controller { |
40 | 39 |
public static Result watch(ResourceParam resourceParam) { |
41 | 40 |
User user = UserApp.currentUser(); |
... | ... | @@ -54,6 +53,7 @@ |
54 | 53 |
return ok(); |
55 | 54 |
} |
56 | 55 |
|
56 |
+ @Transactional |
|
57 | 57 |
public static Result unwatch(ResourceParam resourceParam) { |
58 | 58 |
User user = UserApp.currentUser(); |
59 | 59 |
Resource resource = resourceParam.resource; |
--- app/controllers/WatchProjectApp.java
+++ app/controllers/WatchProjectApp.java
... | ... | @@ -28,7 +28,6 @@ |
28 | 28 |
import models.Watch; |
29 | 29 |
import models.enumeration.EventType; |
30 | 30 |
import models.enumeration.Operation; |
31 |
-import play.db.ebean.Transactional; |
|
32 | 31 |
import play.i18n.Messages; |
33 | 32 |
import play.mvc.Controller; |
34 | 33 |
import play.mvc.Result; |
... | ... | @@ -36,7 +35,6 @@ |
36 | 35 |
import utils.ErrorViews; |
37 | 36 |
|
38 | 37 |
@AnonymousCheck(requiresLogin = true, displaysFlashMessage = true) |
39 |
-@Transactional |
|
40 | 38 |
public class WatchProjectApp extends Controller { |
41 | 39 |
|
42 | 40 |
@IsAllowed(Operation.READ) |
Add a comment
Delete comment
Once you delete this comment, you won't be able to recover it. Are you sure you want to delete this comment?