Stephan Richter
3 months ago
16 changed files with 109 additions and 79 deletions
@ -1,36 +0,0 @@ |
|||||||
/* © SRSoftware 2024 */ |
|
||||||
package de.srsoftware.oidc.api; |
|
||||||
|
|
||||||
|
|
||||||
import java.util.HashMap; |
|
||||||
import java.util.Map; |
|
||||||
|
|
||||||
public class Error<T> implements Result<T> { |
|
||||||
private final String cause; |
|
||||||
private Map<String, Object> metadata; |
|
||||||
|
|
||||||
public Error(String cause) { |
|
||||||
this.cause = cause; |
|
||||||
} |
|
||||||
|
|
||||||
public String cause() { |
|
||||||
return cause; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public boolean isError() { |
|
||||||
return true; |
|
||||||
} |
|
||||||
|
|
||||||
public static <T> Error<T> message(String text) { |
|
||||||
return new Error<T>(text); |
|
||||||
} |
|
||||||
|
|
||||||
public Error<T> metadata(Object... tokens) { |
|
||||||
metadata = new HashMap<String, Object>(); |
|
||||||
for (int i = 0; i < tokens.length - 1; i += 2) { |
|
||||||
metadata.put(tokens[i].toString(), tokens[i + 1]); |
|
||||||
} |
|
||||||
return this; |
|
||||||
} |
|
||||||
} |
|
@ -0,0 +1,40 @@ |
|||||||
|
/* © SRSoftware 2024 */ |
||||||
|
package de.srsoftware.utils; |
||||||
|
|
||||||
|
|
||||||
|
import java.util.HashMap; |
||||||
|
import java.util.Map; |
||||||
|
import org.json.JSONObject; |
||||||
|
|
||||||
|
public class Error<T> implements Result<T> { |
||||||
|
private final String cause; |
||||||
|
private Map<String, Object> metadata; |
||||||
|
|
||||||
|
public Error(String cause) { |
||||||
|
this.cause = cause; |
||||||
|
} |
||||||
|
|
||||||
|
public String cause() { |
||||||
|
return cause; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean isError() { |
||||||
|
return true; |
||||||
|
} |
||||||
|
|
||||||
|
public static <T> Error<T> message(String cause, Object... tokens) { |
||||||
|
var err = new Error<T>(cause); |
||||||
|
err.metadata = new HashMap<>(); |
||||||
|
for (int i = 0; i < tokens.length - 1; i += 2) { |
||||||
|
err.metadata.put(tokens[i].toString(), tokens[i + 1]); |
||||||
|
} |
||||||
|
return err; |
||||||
|
} |
||||||
|
|
||||||
|
public JSONObject json() { |
||||||
|
var json = new JSONObject(Map.of("error", cause)); |
||||||
|
if (metadata != null) json.put("metadata", metadata); |
||||||
|
return json; |
||||||
|
} |
||||||
|
} |
@ -1,5 +1,5 @@ |
|||||||
/* © SRSoftware 2024 */ |
/* © SRSoftware 2024 */ |
||||||
package de.srsoftware.oidc.api; |
package de.srsoftware.utils; |
||||||
|
|
||||||
|
|
||||||
public class Payload<T> implements Result<T> { |
public class Payload<T> implements Result<T> { |
@ -1,5 +1,5 @@ |
|||||||
/* © SRSoftware 2024 */ |
/* © SRSoftware 2024 */ |
||||||
package de.srsoftware.oidc.api; |
package de.srsoftware.utils; |
||||||
|
|
||||||
public interface Result<T> { |
public interface Result<T> { |
||||||
public boolean isError(); |
public boolean isError(); |
Loading…
Reference in new issue