working on client creation
Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
/* © SRSoftware 2024 */
|
||||
package de.srsoftware.oidc.api;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
/* © SRSoftware 2024 */
|
||||
package de.srsoftware.oidc.api;
|
||||
|
||||
import java.util.List;
|
||||
@@ -5,8 +6,8 @@ import java.util.Optional;
|
||||
|
||||
public interface ClientService {
|
||||
Optional<Client> getClient(String clientId);
|
||||
ClientService add(Client client);
|
||||
List<Client> listClients();
|
||||
ClientService remove(Client client);
|
||||
ClientService update(Client client);
|
||||
ClientService add(Client client);
|
||||
List<Client> listClients();
|
||||
ClientService remove(Client client);
|
||||
ClientService update(Client client);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
package de.srsoftware.oidc.api;
|
||||
|
||||
public class Constants {
|
||||
public static final String CLIENT_ID = "client_id";
|
||||
public static final String NAME = "name";
|
||||
public static final String REDIRECT_URI = "redirect_uri";
|
||||
public static final String SECRET = "secret";
|
||||
}
|
||||
@@ -9,7 +9,6 @@ import com.sun.net.httpserver.HttpExchange;
|
||||
import com.sun.net.httpserver.HttpHandler;
|
||||
import com.sun.net.httpserver.HttpServer;
|
||||
import java.io.IOException;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
@@ -115,7 +114,7 @@ public abstract class PathHandler implements HttpHandler {
|
||||
}
|
||||
|
||||
public static boolean sendContent(HttpExchange ex, byte[] bytes) throws IOException {
|
||||
return sendContent(ex,HTTP_OK,bytes);
|
||||
return sendContent(ex, HTTP_OK, bytes);
|
||||
}
|
||||
|
||||
public static boolean sendContent(HttpExchange ex, Object o) throws IOException {
|
||||
@@ -124,10 +123,10 @@ public abstract class PathHandler implements HttpHandler {
|
||||
}
|
||||
|
||||
public static boolean sendError(HttpExchange ex, byte[] bytes) throws IOException {
|
||||
return sendContent(ex,HTTP_BAD_REQUEST,bytes);
|
||||
return sendContent(ex, HTTP_BAD_REQUEST, bytes);
|
||||
}
|
||||
|
||||
public static boolean sendError(HttpExchange ex, Object o) throws IOException {
|
||||
return sendContent(ex,HTTP_BAD_REQUEST,o.toString().getBytes(UTF_8));
|
||||
return sendContent(ex, HTTP_BAD_REQUEST, o.toString().getBytes(UTF_8));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
/* © SRSoftware 2024 */
|
||||
package de.srsoftware.oidc.api;
|
||||
|
||||
public enum Permission {
|
||||
MANAGE_CLIENTS
|
||||
}
|
||||
public enum Permission { MANAGE_CLIENTS }
|
||||
|
||||
@@ -4,12 +4,12 @@ package de.srsoftware.oidc.api;
|
||||
import java.util.*;
|
||||
|
||||
public final class User {
|
||||
public static final String EMAIL = "email";
|
||||
public static final String PASSWORD = "password";
|
||||
public static final String EMAIL = "email";
|
||||
public static final String PASSWORD = "password";
|
||||
public static final String PERMISSIONS = "permissions";
|
||||
public static final String REALNAME = "realname";
|
||||
public static final String USERNAME = "username";
|
||||
public static final String UUID = "uuid";
|
||||
public static final String REALNAME = "realname";
|
||||
public static final String USERNAME = "username";
|
||||
public static final String UUID = "uuid";
|
||||
|
||||
private final Set<Permission> permissions = new HashSet<>();
|
||||
|
||||
@@ -45,7 +45,7 @@ public final class User {
|
||||
return Objects.equals(this.uuid, that.uuid);
|
||||
}
|
||||
|
||||
public boolean hasPermission(Permission permission){
|
||||
public boolean hasPermission(Permission permission) {
|
||||
return permissions.contains(permission);
|
||||
}
|
||||
|
||||
@@ -65,9 +65,7 @@ public final class User {
|
||||
|
||||
|
||||
public Map<String, Object> map(boolean includePassword) {
|
||||
return includePassword
|
||||
? Map.of(USERNAME, username, REALNAME, realName, EMAIL, email, PERMISSIONS, permissions, UUID, uuid, PASSWORD, hashedPassword)
|
||||
: Map.of(USERNAME, username, REALNAME, realName, EMAIL, email, PERMISSIONS, permissions, UUID, uuid);
|
||||
return includePassword ? Map.of(USERNAME, username, REALNAME, realName, EMAIL, email, PERMISSIONS, permissions, UUID, uuid, PASSWORD, hashedPassword) : Map.of(USERNAME, username, REALNAME, realName, EMAIL, email, PERMISSIONS, permissions, UUID, uuid);
|
||||
}
|
||||
|
||||
public String realName() {
|
||||
|
||||
@@ -6,7 +6,7 @@ import java.util.Optional;
|
||||
|
||||
public interface UserService {
|
||||
public UserService delete(User user);
|
||||
public boolean passwordMatches(String password, String hashedPassword);
|
||||
public boolean passwordMatches(String password, String hashedPassword);
|
||||
public UserService init(User defaultUser);
|
||||
public List<User> list();
|
||||
public Optional<User> load(String id);
|
||||
|
||||
Reference in New Issue
Block a user