Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
T
trismegisto-services
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Mauro Paolo Josue Zuñiga Mallqui
trismegisto-services
Commits
6a37f6ae
Commit
6a37f6ae
authored
May 02, 2024
by
Mauro Paolo Josue Zuñiga Mallqui
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[FIXED] GA
parent
ee037b7b
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
12 additions
and
6 deletions
+12
-6
JWTokenApi.java
...ava/web/multitask/trismegistoservices/api/JWTokenApi.java
+2
-1
TokenSingleton.java
...ltitask/trismegistoservices/singleton/TokenSingleton.java
+9
-4
JWTokenUtil.java
.../web/multitask/trismegistoservices/utils/JWTokenUtil.java
+1
-1
No files found.
src/main/java/web/multitask/trismegistoservices/api/JWTokenApi.java
View file @
6a37f6ae
...
...
@@ -137,7 +137,8 @@ class JWTokenApi {
JSONObject
json
=
new
JSONObject
(
data
);
try
{
boolean
onelife
=
json
.
optBoolean
(
"onelife"
,
false
);
String
tokenized
=
jwtTokenUtil
.
tokenizeData
(
data
,
onelife
?
BigInteger
.
valueOf
(
0
)
:
BigInteger
.
valueOf
(
3600000
),
onelife
);
int
ms
=
json
.
optInt
(
"ms"
,
3600000
);
String
tokenized
=
jwtTokenUtil
.
tokenizeData
(
data
,
BigInteger
.
valueOf
(
ms
),
onelife
);
if
(
onelife
){
tokenSingleton
.
addToken
(
tokenized
);
}
...
...
src/main/java/web/multitask/trismegistoservices/singleton/TokenSingleton.java
View file @
6a37f6ae
...
...
@@ -4,8 +4,10 @@ import lombok.Getter;
import
lombok.NoArgsConstructor
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.stereotype.Component
;
import
web.multitask.trismegistoservices.utils.JWTokenUtil
;
import
java.util.stream.IntStream
;
...
...
@@ -16,6 +18,9 @@ public class TokenSingleton {
private
final
JSONArray
tokens
=
new
JSONArray
();
@Autowired
private
JWTokenUtil
jwtTokenUtil
;
public
boolean
consumeToken
(
String
token
)
{
boolean
isAvailable
=
false
;
for
(
int
i
=
0
;
i
<
tokens
.
length
();
i
++)
{
...
...
@@ -48,10 +53,10 @@ public class TokenSingleton {
@Scheduled
(
fixedRate
=
3600000
)
public
void
removeUnavailableTokens
()
{
System
.
out
.
println
(
"Removing unavailable tokens"
);
IntStream
.
range
(
0
,
tokens
.
length
()).
forEach
(
i
->
{
if
(!
tokens
.
getJSONObject
(
i
).
getBoolean
(
"available"
))
{
System
.
out
.
println
(
tokens
.
remove
(
i
));
for
(
int
i
=
0
;
i
<
tokens
.
length
();
i
++){
if
(!
tokens
.
getJSONObject
(
i
).
getBoolean
(
"available"
)
||
jwtTokenUtil
.
isTokenExpired
(
tokens
.
getJSONObject
(
i
).
getString
(
"token"
))){
System
.
out
.
println
(
"Token removed "
+
tokens
.
remove
(
i
));
}
}
});
}
}
src/main/java/web/multitask/trismegistoservices/utils/JWTokenUtil.java
View file @
6a37f6ae
...
...
@@ -44,7 +44,7 @@ public class JWTokenUtil implements Serializable{
return
Jwts
.
builder
()
.
setSubject
(
data
)
.
setIssuedAt
(
new
Date
())
.
setExpiration
(
new
Date
(
new
Date
().
getTime
()
+
36000000
))
.
setExpiration
(
new
Date
(
new
Date
().
getTime
()
+
ms
.
longValue
()
))
.
signWith
(
Keys
.
hmacShaKeyFor
(
onelife
?
jwtSecret2
.
getBytes
()
:
jwtSecret
.
getBytes
()))
.
compact
();
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment