Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
service-campaign
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Nguyen Ha
service-campaign
Commits
6152cdbe
Commit
6152cdbe
authored
Aug 16, 2019
by
Nguyen Ha
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add Redis
parent
cb391bbf
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
117 additions
and
113 deletions
+117
-113
src/main/java/com/viettel/campaign/ServiceCampaignApplication.java
...java/com/viettel/campaign/ServiceCampaignApplication.java
+2
-2
src/main/java/com/viettel/campaign/config/JobConfig.java
src/main/java/com/viettel/campaign/config/JobConfig.java
+57
-57
src/main/java/com/viettel/campaign/filter/CorsFilter.java
src/main/java/com/viettel/campaign/filter/CorsFilter.java
+22
-23
src/main/java/com/viettel/campaign/utils/Config.java
src/main/java/com/viettel/campaign/utils/Config.java
+2
-2
src/main/java/com/viettel/campaign/utils/RedisUtil.java
src/main/java/com/viettel/campaign/utils/RedisUtil.java
+1
-1
src/main/java/com/viettel/econtact/filter/UserSession.java
src/main/java/com/viettel/econtact/filter/UserSession.java
+33
-28
No files found.
src/main/java/com/viettel/campaign/ServiceCampaignApplication.java
View file @
6152cdbe
...
...
@@ -18,8 +18,8 @@ public class ServiceCampaignApplication {
public
static
void
main
(
String
[]
args
)
{
SpringApplication
.
run
(
ServiceCampaignApplication
.
class
,
args
);
//
RedisUtil redis = new RedisUtil(Config.redisAddress,Config.redisTimeout);
//
redis.setup();
RedisUtil
redis
=
new
RedisUtil
(
Config
.
redisAddress
,
Config
.
redisTimeout
);
redis
.
setup
();
}
}
src/main/java/com/viettel/campaign/config/JobConfig.java
View file @
6152cdbe
...
...
@@ -26,19 +26,19 @@ import java.util.concurrent.ScheduledFuture;
* @project campaign
*/
//
@Slf4j
//
@EnableScheduling
//
@Configuration
//
public class JobConfig implements SchedulingConfigurer {
//
//
TaskScheduler taskScheduler;
//
private ScheduledFuture<?> job1;
//
private ScheduledFuture<?> job2;
//
//
@Bean
//
public CampaignJob campaignJob(){
//
return new CampaignJob();
//
}
@Slf4j
@EnableScheduling
@Configuration
public
class
JobConfig
implements
SchedulingConfigurer
{
TaskScheduler
taskScheduler
;
private
ScheduledFuture
<?>
job1
;
private
ScheduledFuture
<?>
job2
;
@Bean
public
CampaignJob
campaignJob
(){
return
new
CampaignJob
();
}
// @Override
// public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
...
...
@@ -53,47 +53,47 @@ import java.util.concurrent.ScheduledFuture;
// taskRegistrar.setTaskScheduler(threadPoolTaskScheduler);
// }
//
private void job1(TaskScheduler scheduler) {
//
job1 = scheduler.schedule(() -> {
//
log.info("processing job1 ...");
//
log.info(Thread.currentThread().getName() + " The Task1 executed at " + new Date());
//
try {
//
Thread.sleep(10000);
//
} catch (InterruptedException e) {
//
// TODO Auto-generated catch block
//
e.printStackTrace();
//
}
//
}, triggerContext -> {
//
//
String cronExp = "0/5 * * * * ?";// Can be pulled from a db .
//
return new CronTrigger(cronExp).nextExecutionTime(triggerContext);
//
});
//
}
//
//
private void job2(TaskScheduler scheduler) {
//
job2 = scheduler.schedule(() -> {
//
log.info(Thread.currentThread().getName() + " The Job executed at " + new Date());
//
campaignJob().process();
//
//
}, triggerContext -> {
//
String cronExp = "0/1 * * * * ?";// Can be pulled from a db . This will run every minute
//
return new CronTrigger(cronExp).nextExecutionTime(triggerContext);
//
});
//
}
//
//
//
//
@Override
//
public void configureTasks(ScheduledTaskRegistrar scheduledTaskRegistrar) {
//
ThreadPoolTaskScheduler threadPoolTaskScheduler = new ThreadPoolTaskScheduler();
//
threadPoolTaskScheduler.setPoolSize(10);
//
threadPoolTaskScheduler.setThreadNamePrefix("scheduler-thread");
//
threadPoolTaskScheduler.initialize();
//
scheduledTaskRegistrar.setTaskScheduler(threadPoolTaskScheduler);
//
//
scheduledTaskRegistrar.addTriggerTask(() -> campaignJob().process(), (TriggerContext triggerContext) -> yourService.getCron());
//
scheduledTaskRegistrar.addTriggerTask(() -> campaignJob().process(), triggerContext -> {
//
CronTrigger trigger = new CronTrigger("0/5 * * * * ?");
//
return trigger.nextExecutionTime(triggerContext);
//
});
//
}
//
}
private
void
job1
(
TaskScheduler
scheduler
)
{
job1
=
scheduler
.
schedule
(()
->
{
log
.
info
(
"processing job1 ..."
);
log
.
info
(
Thread
.
currentThread
().
getName
()
+
" The Task1 executed at "
+
new
Date
());
try
{
Thread
.
sleep
(
10000
);
}
catch
(
InterruptedException
e
)
{
// TODO Auto-generated catch block
e
.
printStackTrace
();
}
},
triggerContext
->
{
String
cronExp
=
"0/5 * * * * ?"
;
// Can be pulled from a db .
return
new
CronTrigger
(
cronExp
).
nextExecutionTime
(
triggerContext
);
});
}
private
void
job2
(
TaskScheduler
scheduler
)
{
job2
=
scheduler
.
schedule
(()
->
{
log
.
info
(
Thread
.
currentThread
().
getName
()
+
" The Job executed at "
+
new
Date
());
campaignJob
().
process
();
},
triggerContext
->
{
String
cronExp
=
"0/1 * * * * ?"
;
// Can be pulled from a db . This will run every minute
return
new
CronTrigger
(
cronExp
).
nextExecutionTime
(
triggerContext
);
});
}
@Override
public
void
configureTasks
(
ScheduledTaskRegistrar
scheduledTaskRegistrar
)
{
ThreadPoolTaskScheduler
threadPoolTaskScheduler
=
new
ThreadPoolTaskScheduler
();
threadPoolTaskScheduler
.
setPoolSize
(
10
);
threadPoolTaskScheduler
.
setThreadNamePrefix
(
"scheduler-thread"
);
threadPoolTaskScheduler
.
initialize
();
scheduledTaskRegistrar
.
setTaskScheduler
(
threadPoolTaskScheduler
);
// scheduledTaskRegistrar.addTriggerTask(() -> campaignJob().process(), (TriggerContext triggerContext) -> yourService.getCron());
scheduledTaskRegistrar
.
addTriggerTask
(()
->
campaignJob
().
process
(),
triggerContext
->
{
CronTrigger
trigger
=
new
CronTrigger
(
"0/5 * * * * ?"
);
return
trigger
.
nextExecutionTime
(
triggerContext
);
});
}
}
src/main/java/com/viettel/campaign/filter/CorsFilter.java
View file @
6152cdbe
...
...
@@ -13,7 +13,7 @@ import java.io.IOException;
@Component
public
class
CorsFilter
implements
Filter
{
private
Logger
logger
=
Logger
.
getLogger
(
CorsFilter
.
class
);
//
private Logger logger = Logger.getLogger(CorsFilter.class);
@Override
public
void
init
(
FilterConfig
filterConfig
){
...
...
@@ -31,28 +31,27 @@ public class CorsFilter implements Filter {
HttpServletRequest
request
=
(
HttpServletRequest
)
req
;
chain
.
doFilter
(
req
,
resp
);
// if ("OPTIONS".equalsIgnoreCase(request.getMethod())) {
// chain.doFilter(req, resp);
// return;
// }
// logger.info("uri: "+ request.getRequestURI());
// if ("/".equals(request.getRequestURI())) {
// chain.doFilter(req, resp);
// return;
// }
// String xAuthToken = request.getHeader("X-Auth-Token");
// if (xAuthToken == null || "".equals(xAuthToken)) {
// response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "The token is null.");
// return;
// }
// Object obj = RedisUtil.getInstance().get(xAuthToken);
// if (obj instanceof UserSession) {
// chain.doFilter(req, resp);
// } else {
// response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "The token is invalid.");
// }
// chain.doFilter(req, resp);
if
(
"OPTIONS"
.
equalsIgnoreCase
(
request
.
getMethod
()))
{
chain
.
doFilter
(
req
,
resp
);
return
;
}
if
(
"/"
.
equals
(
request
.
getRequestURI
()))
{
chain
.
doFilter
(
req
,
resp
);
return
;
}
String
xAuthToken
=
request
.
getHeader
(
"X-Auth-Token"
);
if
(
xAuthToken
==
null
||
""
.
equals
(
xAuthToken
))
{
response
.
sendError
(
HttpServletResponse
.
SC_UNAUTHORIZED
,
"The token is null."
);
return
;
}
Object
obj
=
RedisUtil
.
getInstance
().
get
(
xAuthToken
);
if
(
obj
instanceof
UserSession
)
{
chain
.
doFilter
(
req
,
resp
);
}
else
{
response
.
sendError
(
HttpServletResponse
.
SC_UNAUTHORIZED
,
"The token is invalid."
);
}
}
@Override
...
...
src/main/java/com/viettel/campaign/utils/Config.java
View file @
6152cdbe
package
com.viettel.campaign.utils
;
//
import com.viettel.security.PassTranformer;
import
com.viettel.security.PassTranformer
;
import
org.apache.log4j.Logger
;
import
java.io.File
;
...
...
@@ -60,7 +60,7 @@ public class Config {
}
catch
(
IOException
ex
)
{
Logger
.
getLogger
(
Config
.
class
.
getName
()).
error
(
ex
.
getMessage
(),
ex
);
}
//
PassTranformer.setInputKey("Ipcc#987654321#@!");
PassTranformer
.
setInputKey
(
"Ipcc#987654321#@!"
);
// rabbitConnection = properties.getProperty("rabbit_connection_string");
// fbGatewayUser = PassTranformer.decrypt(properties.getProperty("rabbit_user", "").trim());
...
...
src/main/java/com/viettel/campaign/utils/RedisUtil.java
View file @
6152cdbe
...
...
@@ -105,7 +105,7 @@ public class RedisUtil {
JedisCluster
jedis
=
getRedis
();
byte
[]
value
=
jedis
.
get
(
key
.
getBytes
());
if
(
value
!=
null
&&
value
.
length
>
0
)
{
object
=
SerializationUtils
.
deserialize
(
value
);
object
=
(
Object
)
SerializationUtils
.
deserialize
(
value
);
}
}
catch
(
Exception
ex
)
{
logger
.
error
(
ex
.
getMessage
(),
ex
);
...
...
src/main/java/com/viettel/econtact/filter/UserSession.java
View file @
6152cdbe
package
com.viettel.econtact.filter
;
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
import
java.io.Serializable
;
/**
*
@author hanv_itsol
* @
project service-campaign
*
* @
author ThaoNT19
*/
public
class
UserSession
implements
Serializable
{
String
authToken
;
String
ownserId
;
String
accountId
;
...
...
@@ -20,28 +24,20 @@ public class UserSession implements Serializable{
Long
companySiteId
;
long
expTime
;
public
String
getAuthToken
()
{
return
authToken
;
}
public
void
setAuthToken
(
String
authToken
)
{
this
.
authToken
=
authToken
;
}
public
String
getOwnserId
()
{
return
ownserId
;
public
long
getExpTime
()
{
return
expTime
;
}
public
void
set
OwnserId
(
String
ownserId
)
{
this
.
ownserId
=
ownserId
;
public
void
set
ExpTime
(
long
expTime
)
{
this
.
expTime
=
expTime
;
}
public
String
getA
ccountId
()
{
return
a
ccountId
;
public
String
getA
uthToken
()
{
return
a
uthToken
;
}
public
void
setA
ccountId
(
String
accountId
)
{
this
.
a
ccountId
=
accountId
;
public
void
setA
uthToken
(
String
authToken
)
{
this
.
a
uthToken
=
authToken
;
}
public
Long
getUserId
()
{
...
...
@@ -60,6 +56,22 @@ public class UserSession implements Serializable{
this
.
userName
=
userName
;
}
public
String
getOwnserId
()
{
return
ownserId
;
}
public
void
setOwnserId
(
String
ownserId
)
{
this
.
ownserId
=
ownserId
;
}
public
String
getAccountId
()
{
return
accountId
;
}
public
void
setAccountId
(
String
accountId
)
{
this
.
accountId
=
accountId
;
}
public
String
getRole
()
{
return
role
;
}
...
...
@@ -83,12 +95,5 @@ public class UserSession implements Serializable{
public
void
setCompanySiteId
(
Long
companySiteId
)
{
this
.
companySiteId
=
companySiteId
;
}
public
long
getExpTime
()
{
return
expTime
;
}
public
void
setExpTime
(
long
expTime
)
{
this
.
expTime
=
expTime
;
}
}
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