1 /*
2 * Copyright (C) 2017-2019 Centre National d'Etudes Spatiales (CNES).
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 3.0 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
17 * MA 02110-1301 USA
18 */
19 package fr.cnes.doi.db;
20
21 import fr.cnes.doi.exception.DOIDbException;
22 import java.util.List;
23
24 import fr.cnes.doi.utils.spec.Requirement;
25
26 /**
27 * Interface for handling the token database.
28 *
29 * @author Jean-Christophe Malapert (jean-christophe.malapert@cnes.fr)
30 */
31 @Requirement(reqId = Requirement.DOI_INTER_040, reqName = Requirement.DOI_INTER_040_NAME)
32 public abstract class AbstractTokenDBHelper {
33
34 /**
35 * Adds a token in the database
36 *
37 * @param jwt a token
38 * @return True when the token is added to the database otherwise False
39 */
40 public abstract boolean addToken(String jwt);
41
42 /**
43 * Deletes a token from the database.
44 *
45 * @param jwt the token
46 * @return True when the token is deletes otherwise false
47 */
48 public abstract boolean deleteToken(String jwt);
49
50 /**
51 * Tests if the token exists in the database.
52 *
53 * @param jwt the token
54 * @return True when the token exists in the database otherwise False
55 */
56 public abstract boolean isExist(String jwt);
57
58 /**
59 * Return the token list from database.
60 *
61 * @return the list of tokens
62 * @throws fr.cnes.doi.exception.DOIDbException when an error occurs
63 */
64 public abstract List<String> getTokens() throws DOIDbException;
65 }