Skip to content

Commit 08d4d21

Browse files
Filters added
1 parent e4c4d93 commit 08d4d21

File tree

9 files changed

+233
-1
lines changed

9 files changed

+233
-1
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
package com.app.filters;
2+
3+
import org.springframework.cloud.netflix.zuul.filters.support.FilterConstants;
4+
import org.springframework.stereotype.Component;
5+
6+
import com.netflix.zuul.ZuulFilter;
7+
import com.netflix.zuul.exception.ZuulException;
8+
9+
/**
10+
* Filters are used in zuul server to pre process and post process request and response .
11+
* There are 4 types of filters .
12+
*
13+
* MyFilter ----> ZuulFilter (AC) ---> IZuulFilter (I)
14+
*
15+
*
16+
* PreFilter , PostFilter , RouteFilter , ExceptionFilter
17+
*
18+
* PreFilter --> Works on request
19+
*
20+
* PostFilter --> Works on response
21+
*
22+
* RouteFilter --> Works on service instance object
23+
*
24+
* ExceptionFilter --> Works only if exception is rased
25+
*
26+
*
27+
* **/
28+
29+
@Component
30+
public class ExceptionFilter extends ZuulFilter{
31+
32+
// to enable and disable filter
33+
public boolean shouldFilter() {
34+
return true;
35+
}
36+
37+
38+
// to provide work or loginc for filter ,
39+
public Object run() throws ZuulException {
40+
System.out.println("From Exception Filter");
41+
return null;
42+
}
43+
44+
45+
// specify which filter it is
46+
public String filterType() {
47+
return FilterConstants.ERROR_TYPE;
48+
// return "error"; /// also can be defined as
49+
}
50+
51+
52+
53+
// specifies execution order if multiple filter of same type are running
54+
public int filterOrder() {
55+
return 0;
56+
}
57+
58+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
package com.app.filters;
2+
3+
import org.springframework.cloud.netflix.zuul.filters.support.FilterConstants;
4+
import org.springframework.stereotype.Component;
5+
6+
import com.netflix.zuul.ZuulFilter;
7+
import com.netflix.zuul.exception.ZuulException;
8+
9+
/**
10+
* Filters are used in zuul server to pre process and post process request and response .
11+
* There are 4 types of filters .
12+
*
13+
* MyFilter ----> ZuulFilter (AC) ---> IZuulFilter (I)
14+
*
15+
*
16+
* PreFilter , PostFilter , RouteFilter , ExceptionFilter
17+
*
18+
* PreFilter --> Works on request
19+
*
20+
* PostFilter --> Works on response
21+
*
22+
* RouteFilter --> Works on service instance object
23+
*
24+
* ExceptionFilter --> Works only if exception is rased
25+
*
26+
*
27+
* **/
28+
29+
@Component
30+
public class PostFilter extends ZuulFilter{
31+
32+
// to enable and disable filter
33+
public boolean shouldFilter() {
34+
return true;
35+
}
36+
37+
38+
// to provide work or loginc for filter , for postfilter - data conversion , encodeing ,decoding etc .
39+
public Object run() throws ZuulException {
40+
System.out.println("From Post Filter");
41+
return null;
42+
}
43+
44+
45+
// specify which filter it is
46+
public String filterType() {
47+
return FilterConstants.POST_TYPE;
48+
// return "post"; /// also can be defined as
49+
}
50+
51+
52+
53+
// specifies execution order if multiple filter of same type are running
54+
public int filterOrder() {
55+
return 0;
56+
}
57+
58+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
package com.app.filters;
2+
3+
import org.springframework.cloud.netflix.zuul.filters.support.FilterConstants;
4+
import org.springframework.stereotype.Component;
5+
6+
import com.netflix.zuul.ZuulFilter;
7+
import com.netflix.zuul.exception.ZuulException;
8+
9+
/**
10+
* Filters are used in zuul server to pre process and post process request and response .
11+
* There are 4 types of filters .
12+
*
13+
* MyFilter ----> ZuulFilter (AC) ---> IZuulFilter (I)
14+
*
15+
*
16+
* PreFilter , PostFilter , RouteFilter , ExceptionFilter
17+
*
18+
* PreFilter --> Works on request
19+
*
20+
* PostFilter --> Works on response
21+
*
22+
* RouteFilter --> Works on service instance object
23+
*
24+
* ExceptionFilter --> Works only if exception is rased
25+
*
26+
*
27+
* **/
28+
29+
@Component
30+
public class PreFilter extends ZuulFilter{
31+
32+
// to enable and disable filter
33+
public boolean shouldFilter() {
34+
return true;
35+
}
36+
37+
38+
// to provide work or loginc for filter , for prefilter - validate headers , encodeing ,decoding etc .
39+
public Object run() throws ZuulException {
40+
System.out.println("From Pre Filter");
41+
return null;
42+
}
43+
44+
45+
// specify which filter it is
46+
public String filterType() {
47+
return FilterConstants.PRE_TYPE;
48+
// return "pre"; /// also can be defined as
49+
}
50+
51+
52+
53+
// specifies execution order if multiple filter of same type are running
54+
public int filterOrder() {
55+
return 0;
56+
}
57+
58+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
package com.app.filters;
2+
3+
import org.springframework.cloud.netflix.zuul.filters.support.FilterConstants;
4+
import org.springframework.stereotype.Component;
5+
6+
import com.netflix.zuul.ZuulFilter;
7+
import com.netflix.zuul.exception.ZuulException;
8+
9+
/**
10+
* Filters are used in zuul server to pre process and post process request and response .
11+
* There are 4 types of filters .
12+
*
13+
* MyFilter ----> ZuulFilter (AC) ---> IZuulFilter (I)
14+
*
15+
*
16+
* PreFilter , PostFilter , RouteFilter , ExceptionFilter
17+
*
18+
* PreFilter --> Works on request
19+
*
20+
* PostFilter --> Works on response
21+
*
22+
* RouteFilter --> Works on service instance object
23+
*
24+
* ExceptionFilter --> Works only if exception is rased
25+
*
26+
*
27+
* **/
28+
29+
@Component
30+
public class RouteFilter extends ZuulFilter{
31+
32+
// to enable and disable filter
33+
public boolean shouldFilter() {
34+
return true;
35+
}
36+
37+
38+
// to provide work or loginc for filter , f
39+
public Object run() throws ZuulException {
40+
System.out.println("From Route Filter");
41+
return null;
42+
}
43+
44+
45+
// specify which filter it is
46+
public String filterType() {
47+
return FilterConstants.ROUTE_TYPE;
48+
// return "route"; /// also can be defined as
49+
}
50+
51+
52+
53+
// specifies execution order if multiple filter of same type are running
54+
public int filterOrder() {
55+
return 0;
56+
}
57+
58+
}

Microservices/SpringCloudZuul/SpringCloud_ZuulGateway-ZuulServer/target/classes/META-INF/maven/com.app/SpringCloud_ZuulGateway-ZuulServer/pom.properties

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#Generated by Maven Integration for Eclipse
2-
#Thu Aug 15 11:23:40 IST 2019
2+
#Fri Aug 16 15:05:17 IST 2019
33
version=1.0
44
groupId=com.app
55
m2e.projectName=SpringCloud_ZuulGateway-ZuulServer

0 commit comments

Comments
 (0)