James Moger
2015-11-22 ed552ba47c02779c270ffd62841d6d1048dade70
commit | author | age
5e3521 1 /*
JM 2  * Copyright 2014 gitblit.com.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package com.gitblit.tickets;
17
18 import java.util.Collections;
19 import java.util.List;
4d81c9 20 import java.util.Set;
5e3521 21
JM 22 import com.gitblit.manager.INotificationManager;
ba5670 23 import com.gitblit.manager.IPluginManager;
5e3521 24 import com.gitblit.manager.IRepositoryManager;
JM 25 import com.gitblit.manager.IRuntimeManager;
26 import com.gitblit.manager.IUserManager;
27 import com.gitblit.models.RepositoryModel;
28 import com.gitblit.models.TicketModel;
29 import com.gitblit.models.TicketModel.Attachment;
30 import com.gitblit.models.TicketModel.Change;
c42032 31 import com.google.inject.Inject;
JM 32 import com.google.inject.Singleton;
5e3521 33
JM 34 /**
35  * Implementation of a ticket service that rejects everything.
36  *
37  * @author James Moger
38  *
39  */
aa1361 40 @Singleton
5e3521 41 public class NullTicketService extends ITicketService {
JM 42
aa1361 43     @Inject
5e3521 44     public NullTicketService(
JM 45             IRuntimeManager runtimeManager,
ba5670 46             IPluginManager pluginManager,
5e3521 47             INotificationManager notificationManager,
JM 48             IUserManager userManager,
49             IRepositoryManager repositoryManager) {
50
51         super(runtimeManager,
ba5670 52                 pluginManager,
5e3521 53                 notificationManager,
JM 54                 userManager,
55                 repositoryManager);
56     }
57
58     @Override
59     public boolean isReady() {
60         return false;
61     }
62
63     @Override
64     public NullTicketService start() {
c42032 65         log.info("{} started", getClass().getSimpleName());
5e3521 66         return this;
JM 67     }
68
69     @Override
70     protected void resetCachesImpl() {
71     }
72
73     @Override
74     protected void resetCachesImpl(RepositoryModel repository) {
75     }
76
77     @Override
78     protected void close() {
79     }
80
81     @Override
82     public boolean hasTicket(RepositoryModel repository, long ticketId) {
83         return false;
84     }
85
86     @Override
4d81c9 87     public synchronized Set<Long> getIds(RepositoryModel repository) {
JM 88         return Collections.emptySet();
89     }
90
91     @Override
5e3521 92     public synchronized long assignNewId(RepositoryModel repository) {
JM 93         return 0L;
94     }
95
96     @Override
97     public List<TicketModel> getTickets(RepositoryModel repository, TicketFilter filter) {
98         return Collections.emptyList();
99     }
100
101     @Override
102     protected TicketModel getTicketImpl(RepositoryModel repository, long ticketId) {
103         return null;
104     }
105
106     @Override
4d81c9 107     protected List<Change> getJournalImpl(RepositoryModel repository, long ticketId) {
JM 108         return null;
109     }
110
111     @Override
5e3521 112     public boolean supportsAttachments() {
JM 113         return false;
114     }
115
116     @Override
117     public Attachment getAttachment(RepositoryModel repository, long ticketId, String filename) {
118         return null;
119     }
120
121     @Override
122     protected synchronized boolean deleteTicketImpl(RepositoryModel repository, TicketModel ticket, String deletedBy) {
123         return false;
124     }
125
126     @Override
127     protected synchronized boolean commitChangeImpl(RepositoryModel repository, long ticketId, Change change) {
128         return false;
129     }
130
131     @Override
132     protected boolean deleteAllImpl(RepositoryModel repository) {
133         return false;
134     }
135
136     @Override
137     protected boolean renameImpl(RepositoryModel oldRepository, RepositoryModel newRepository) {
138         return false;
139     }
140
141     @Override
142     public String toString() {
143         return getClass().getSimpleName();
144     }
145 }