File tree Expand file tree Collapse file tree 1 file changed +5
-2
lines changed
src/main/scala/org/apache/mesos/chronos/scheduler/api Expand file tree Collapse file tree 1 file changed +5
-2
lines changed Original file line number Diff line number Diff line change @@ -11,12 +11,14 @@ import com.google.inject.Inject
11
11
12
12
import scala .collection .JavaConverters ._
13
13
import scala .language .postfixOps
14
+ import mesosphere .chaos .http .HttpConf
15
+ import org .apache .mesos .chronos .scheduler .config .SchedulerConfiguration
14
16
15
17
/**
16
18
* Simple filter that redirects to the leader if applicable.
17
19
* @author Florian Leibert ([email protected] )
18
20
*/
19
- class RedirectFilter @ Inject ()(val jobScheduler : JobScheduler ) extends Filter {
21
+ class RedirectFilter @ Inject ()(val jobScheduler : JobScheduler , val config : SchedulerConfiguration with HttpConf ) extends Filter {
20
22
val log = Logger .getLogger(getClass.getName)
21
23
22
24
def init (filterConfig : FilterConfig ) {}
@@ -28,8 +30,9 @@ class RedirectFilter @Inject()(val jobScheduler: JobScheduler) extends Filter {
28
30
case request : HttpServletRequest =>
29
31
val leaderData = jobScheduler.getLeader
30
32
val response = rawResponse.asInstanceOf [HttpServletResponse ]
33
+ val currentId = " %s:%d" .format(config.hostname(), config.httpPort())
31
34
32
- if (jobScheduler.isLeader) {
35
+ if (jobScheduler.isLeader || currentId == leaderData ) {
33
36
chain.doFilter(request, response)
34
37
} else {
35
38
var proxyStatus : Int = 200
You can’t perform that action at this time.
0 commit comments