|
@@ -54,24 +54,37 @@ public class DataSyncServiceImpl implements DataSyncService {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public boolean sync(String component, String methodName, SyncBaseRequest req, Boolean retry) {
|
|
|
+ public Boolean sync(String component, String methodName, SyncBaseRequest req, Boolean retry) {
|
|
|
String url = PropertiesUtil.getString("$sync." + methodName + ".component." + component);
|
|
|
req.setUrl(url);
|
|
|
|
|
|
+ boolean async = PropertiesUtil.getBoolean("$sync.async", true);
|
|
|
boolean successful = false;
|
|
|
- try {
|
|
|
- Method method = handleSyncCloudService.getClass().getMethod(methodName, req.getClass());
|
|
|
- method.invoke(handleSyncCloudService, req);
|
|
|
- successful = true;
|
|
|
- } catch (Exception e) {
|
|
|
- if (retry) {
|
|
|
- DataSyncEntity entity = new DataSyncEntity();
|
|
|
- entity.setComponent(component);
|
|
|
- entity.setMethodName(methodName);
|
|
|
- entity.setParamType(req.getClass().getName());
|
|
|
- entity.setSyncNum(0);
|
|
|
- entity.setParamJson(JsonUtil.toJson(req));
|
|
|
- dataSyncRepo.saveAndFlush(entity);
|
|
|
+
|
|
|
+ if (async) {
|
|
|
+ DataSyncEntity entity = new DataSyncEntity();
|
|
|
+ entity.setComponent(component);
|
|
|
+ entity.setMethodName(methodName);
|
|
|
+ entity.setParamType(req.getClass().getName());
|
|
|
+ entity.setSyncNum(0);
|
|
|
+ entity.setParamJson(JsonUtil.toJson(req));
|
|
|
+ dataSyncRepo.saveAndFlush(entity);
|
|
|
+ } else {
|
|
|
+ try {
|
|
|
+ Method method = handleSyncCloudService.getClass().getMethod(methodName,
|
|
|
+ req.getClass());
|
|
|
+ method.invoke(handleSyncCloudService, req);
|
|
|
+ successful = true;
|
|
|
+ } catch (Exception e) {
|
|
|
+ if (retry) {
|
|
|
+ DataSyncEntity entity = new DataSyncEntity();
|
|
|
+ entity.setComponent(component);
|
|
|
+ entity.setMethodName(methodName);
|
|
|
+ entity.setParamType(req.getClass().getName());
|
|
|
+ entity.setSyncNum(0);
|
|
|
+ entity.setParamJson(JsonUtil.toJson(req));
|
|
|
+ dataSyncRepo.saveAndFlush(entity);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|