Toggle navigation
Toggle navigation
This project
Loading...
Sign in
yangyoupeng
/
microservice
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
yangyoupeng
2016-12-01 16:35:54 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
b738cb1411b8a234f5730ed64875028590145700
b738cb14
1 parent
b03896d1
添加修改接口
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
77 additions
and
2 deletions
src/microservice-parent/support-gateway/src/main/java/com/zhaoonline/support/gateway/service/ESServiceInfoLoader.java
src/microservice-parent/support-gateway/src/main/java/com/zhaoonline/support/gateway/service/ServiceInfoLoader.java
src/microservice-parent/support-gateway/src/main/java/com/zhaoonline/support/gateway/web/ApiInfoController.java
src/microservice-parent/support-gateway/src/main/java/com/zhaoonline/support/gateway/web/service/APIInfoService.java
src/microservice-parent/support-gateway/src/main/webapp/WEB-INF/view/apiInfo.jsp
src/microservice-parent/support-gateway/src/main/java/com/zhaoonline/support/gateway/service/ESServiceInfoLoader.java
View file @
b738cb1
...
...
@@ -7,6 +7,7 @@ import java.util.Map;
import
java.util.Map.Entry
;
import
org.elasticsearch.action.delete.DeleteResponse
;
import
org.elasticsearch.action.get.GetResponse
;
import
org.elasticsearch.action.index.IndexResponse
;
import
org.elasticsearch.action.search.SearchRequestBuilder
;
import
org.elasticsearch.action.search.SearchResponse
;
...
...
@@ -52,6 +53,18 @@ public class ESServiceInfoLoader implements ServiceInfoLoader{
}
return
null
;
}
@Override
public
ServiceInfo
findServiceInfoByID
(
String
serviceID
)
throws
Exception
{
GetResponse
getReponse
=
client
.
prepareGet
(
GWConstants
.
DEFAUL_SERVICE_INDEX
,
DEFAUL_SERVICE_TYPE
,
serviceID
).
get
();
if
(
getReponse
!=
null
)
{
Map
<
String
,
Object
>
serivceDoc
=
getReponse
.
getSource
();
ServiceInfo
serivceInfo
=
setServiceInfo
(
serivceDoc
,
serviceID
);
LOG
.
info
(
"find serviceinfo [{}] docs with serviceID:[{}]"
,
serivceInfo
,
serviceID
);
return
serivceInfo
;
}
LOG
.
info
(
"find no serviceinfo with serviceID:[{}]"
,
serviceID
);
return
null
;
}
@Override
...
...
@@ -174,9 +187,15 @@ public class ESServiceInfoLoader implements ServiceInfoLoader{
public
boolean
addServiceInfo
(
ServiceInfo
newServiceInfo
)
throws
JsonProcessingException
{
String
docString
=
Utils
.
toJson
(
newServiceInfo
);
IndexResponse
indexResponse
=
null
;
if
(
ObjectUtils
.
isEmpty
(
newServiceInfo
.
getServiceID
())){
indexResponse
=
client
.
prepareIndex
(
GWConstants
.
DEFAUL_SERVICE_INDEX
,
DEFAUL_SERVICE_TYPE
)
.
setSource
(
docString
).
get
();
}
else
{
indexResponse
=
client
.
prepareIndex
(
GWConstants
.
DEFAUL_SERVICE_INDEX
,
DEFAUL_SERVICE_TYPE
,
newServiceInfo
.
getServiceID
())
.
setSource
(
docString
).
get
();
}
IndexResponse
indexResponse
=
client
.
prepareIndex
(
GWConstants
.
DEFAUL_SERVICE_INDEX
,
DEFAUL_SERVICE_TYPE
)
.
setSource
(
docString
).
get
();
LOG
.
info
(
"add service info:[{}],result details:[{}]"
,
newServiceInfo
,
indexResponse
);
if
(
indexResponse
!=
null
){
LOG
.
info
(
"success to add service info:[{}],id:[{}]"
,
newServiceInfo
,
indexResponse
.
getId
());
...
...
@@ -203,4 +222,5 @@ public class ESServiceInfoLoader implements ServiceInfoLoader{
}
}
...
...
src/microservice-parent/support-gateway/src/main/java/com/zhaoonline/support/gateway/service/ServiceInfoLoader.java
View file @
b738cb1
...
...
@@ -3,6 +3,8 @@ package com.zhaoonline.support.gateway.service;
public
interface
ServiceInfoLoader
{
public
ServiceInfo
findServiceInfo
(
String
serviceName
)
throws
Exception
;
public
ServiceInfo
findServiceInfoByID
(
String
serviceID
)
throws
Exception
;
public
ServiceQueryResult
findAllServiceInfo
(
String
serviceName
)
throws
Exception
;
public
boolean
deleteServiceInfoByID
(
String
serviceID
)
throws
Exception
;
...
...
src/microservice-parent/support-gateway/src/main/java/com/zhaoonline/support/gateway/web/ApiInfoController.java
View file @
b738cb1
...
...
@@ -6,12 +6,15 @@ import org.slf4j.Logger;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.ui.Model
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
org.springframework.web.servlet.ModelAndView
;
import
org.springframework.web.servlet.View
;
import
com.zhaoonline.support.gateway.apijar.ApiResponse
;
import
com.zhaoonline.support.gateway.service.ServiceInfo
;
...
...
@@ -30,6 +33,15 @@ public class ApiInfoController {
ApiResponse
response
=
apiInfoService
.
queryAllServiceInfo
();
return
response
;
}
@GetMapping
(
"/query/{serviceID}"
)
@ResponseBody
public
ApiResponse
query
(
ModelAndView
model
,
@PathVariable
(
value
=
"serviceID"
)
String
serviceID
)
{
ApiResponse
response
=
apiInfoService
.
findServiceInfoByID
(
serviceID
);
return
response
;
}
@GetMapping
(
"/delete/{serviceID}"
)
@ResponseBody
public
ApiResponse
delete
(
@PathVariable
String
serviceID
)
{
...
...
@@ -45,4 +57,13 @@ public class ApiInfoController {
ApiResponse
response
=
apiInfoService
.
addServiceInfo
(
serviceInfo
);
return
response
;
}
@RequestMapping
(
path
=
"/update"
,
method
=
RequestMethod
.
POST
)
@ResponseBody
public
ApiResponse
update
(
@RequestBody
ServiceInfo
serviceInfo
)
{
LOG
.
info
(
"requese to update service info {}"
,
serviceInfo
);
ApiResponse
response
=
apiInfoService
.
updateServiceInfo
(
serviceInfo
);
return
response
;
}
}
...
...
src/microservice-parent/support-gateway/src/main/java/com/zhaoonline/support/gateway/web/service/APIInfoService.java
View file @
b738cb1
...
...
@@ -78,4 +78,36 @@ public class APIInfoService {
return
response
;
}
public
ApiResponse
updateServiceInfo
(
ServiceInfo
serviceInfo
)
{
ApiResponse
response
=
new
ApiResponse
();
try
{
boolean
result
=
serviceLoader
.
addServiceInfo
(
serviceInfo
);
if
(!
result
){
response
.
setCode
(
ApiResponse
.
CODE_FAIL
);
}
}
catch
(
Exception
e
)
{
response
.
setCode
(
ApiResponse
.
CODE_FAIL
);
Map
<
String
,
String
>
returnMsg
=
new
HashMap
<
String
,
String
>();
returnMsg
.
put
(
"error"
,
String
.
format
(
"exception happens when query servic info:%s "
,
e
.
getMessage
()));
LOG
.
error
(
"exception happens when query servic info,cause by {}"
,
e
.
getMessage
());
}
return
response
;
}
public
ApiResponse
findServiceInfoByID
(
String
serviceID
)
{
ApiResponse
response
=
new
ApiResponse
();
try
{
ServiceInfo
serviceInfo
=
serviceLoader
.
findServiceInfoByID
(
serviceID
);
response
.
setData
(
serviceInfo
);
}
catch
(
Exception
e
)
{
response
.
setCode
(
ApiResponse
.
CODE_FAIL
);
Map
<
String
,
String
>
returnMsg
=
new
HashMap
<
String
,
String
>();
returnMsg
.
put
(
"error"
,
String
.
format
(
"exception happens when query servic info:%s "
,
e
.
getMessage
()));
LOG
.
error
(
"exception happens when query servic info,cause by {}"
,
e
.
getMessage
());
response
.
setData
(
returnMsg
);
}
return
response
;
}
}
...
...
src/microservice-parent/support-gateway/src/main/webapp/WEB-INF/view/apiInfo.jsp
View file @
b738cb1
This diff is collapsed. Click to expand it.
Please
register
or
login
to post a comment