feat: update

librena
librena 2 years ago
parent 3e74e05075
commit d0e6f04466

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
* <p>
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
* <p>
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
* <p>
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,12 +1,12 @@
/**
* Copyright 2018-2028 Akaxin Group
* <p>
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
* <p>
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

@ -1,12 +1,12 @@
/**
* Copyright 2018-2028 Akaxin Group
* <p>
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
* <p>
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

@ -1,12 +1,12 @@
/**
* Copyright 2018-2028 Akaxin Group
* <p>
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
* <p>
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

@ -1,12 +1,12 @@
/**
* Copyright 2018-2028 Akaxin Group
* <p>
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
* <p>
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,12 +1,12 @@
/**
* Copyright 2018-2028 Akaxin Group
* <p>
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
* <p>
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,12 +1,12 @@
/**
* Copyright 2018-2028 Akaxin Group
* <p>
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
* <p>
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,12 +1,12 @@
/**
* Copyright 2018-2028 Akaxin Group
* <p>
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
* <p>
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
#
# Copyright 2018-2028 Akaxin Group
# Copyright 2018-2028 WindChat Group
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.

@ -1,15 +1,18 @@
package com.windchat.im.business.bean;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* customized annotation
*
* @author Librena
* @since 2020-10-20
*/
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD, ElementType.ANNOTATION_TYPE})
@Documented
public @interface WindChatActions {
public @interface ApiActions {
String action();

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -22,9 +22,9 @@ package com.windchat.im.business.constant;
* @since 2017-12-28 14:38:15
*/
public interface NoticeText {
public String USER_ADD_FRIEND = "我通过了你的好友验证,现在可以开始聊天了";
public String USER_ADD_GROUP = " 加入了群聊";
String USER_ADD_FRIEND = "我通过了你的好友验证,现在可以开始聊天了";
String USER_ADD_GROUP = " 加入了群聊";
public String USER_ADD_GROUP_QR_CODE = " 通过群组二维码加入群聊";
String USER_ADD_GROUP_QR_CODE = " 通过群组二维码加入群聊";
}

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,12 +1,12 @@
/**
* Copyright 2018-2028 Akaxin Group
* <p>
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
* <p>
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,12 +1,12 @@
/**
* Copyright 2018-2028 Akaxin Group
* <p>
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
* <p>
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,12 +1,12 @@
/**
* Copyright 2018-2028 Akaxin Group
* <p>
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
* <p>
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -15,10 +15,14 @@
*/
package com.windchat.im.business.impl;
import java.lang.reflect.Method;
import com.windchat.im.business.dao.UserGroupDao;
import com.windchat.im.business.dao.UserProfileDao;
import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
import com.windchat.common.command.Command;
import com.windchat.common.command.CommandResponse;
import com.windchat.common.constant.CommandConst;
import com.windchat.common.constant.ErrorCode2;
import com.windchat.common.logs.LogUtils;
import com.windchat.im.business.bean.ApiActions;
import com.windchat.im.business.dao.UserGroupDao;
import com.windchat.im.business.dao.UserProfileDao;
import com.windchat.im.storage.bean.GroupProfileBean;
@ -27,62 +31,76 @@ import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.windchat.common.command.Command;
import com.windchat.common.command.CommandResponse;
import com.windchat.common.constant.CommandConst;
import com.windchat.common.constant.ErrorCode2;
import com.windchat.common.logs.LogUtils;
import java.lang.reflect.Method;
import java.util.concurrent.TimeUnit;
/**
*
* @author Sam{@link an.guoyue254@gmail.com}
* @since 2018-01-31 12:20:14
*/
public abstract class AbstractRequest implements IRequestService {
private static final Logger logger = LoggerFactory.getLogger(AbstractRequest.class);
private static final Logger logger = LoggerFactory.getLogger(AbstractRequest.class);
Cache<String, Method> cache = CacheBuilder.newBuilder().maximumSize(1000).expireAfterWrite(10, TimeUnit.MINUTES).build();
public CommandResponse execute(Command command) {
return executeMethodByReflect(command);
}
public CommandResponse execute(Command command) {
return executeMethodByReflect(command);
}
private CommandResponse executeMethodByReflect(Command command) {
CommandResponse response = null;
ErrorCode2 errCode = ErrorCode2.ERROR;
try {
String methodName = command.getMethod();
Method m = this.getClass().getDeclaredMethod(methodName, command.getClass());
response = (CommandResponse) m.invoke(this, command);
} catch (Exception e) {
LogUtils.requestErrorLog(logger, command, e);
}
private CommandResponse executeMethodByReflect(Command command) {
CommandResponse response = null;
ErrorCode2 errCode = ErrorCode2.ERROR;
try {
Method actionMethod = cache.getIfPresent(command.getAction());
if (actionMethod == null) {
Method[] allMethods = this.getClass().getDeclaredMethods();
ApiActions serviceAction = this.getClass().getDeclaredAnnotation(ApiActions.class);
for (Method method : allMethods) {
ApiActions apiActions = method.getAnnotation(ApiActions.class);
if (apiActions == null) {
continue;
}
String action = serviceAction.action() + apiActions.action();
if (action.equals(command.getAction())) {
response = (CommandResponse) method.invoke(this, command);
cache.put(action, method);
break;
}
}
} else {
response = (CommandResponse) actionMethod.invoke(this, command);
}
} catch (Exception e) {
LogUtils.requestErrorLog(logger, command, e);
}
if (response == null) {
response = new CommandResponse().setVersion(CommandConst.PROTOCOL_VERSION)
.setAction(CommandConst.ACTION_RES).setErrCode2(errCode);
}
return response;
}
if (response == null) {
response = new CommandResponse().setVersion(CommandConst.PROTOCOL_VERSION)
.setAction(CommandConst.ACTION_RES).setErrCode2(errCode);
}
return response;
}
//检查请求的参数中的siteUserId是否是存在的
public boolean checkUserIdLegal(String siteUserId) {
if (StringUtils.isNotEmpty(siteUserId)) {
SimpleUserBean userProfile = UserProfileDao.getInstance().getSimpleProfileById(siteUserId);
if (userProfile != null && StringUtils.isNotEmpty(userProfile.getSiteUserId())) {
return true;
}
}
return false;
}
//检查请求的参数中的siteUserId是否是存在的
public boolean checkUserIdLegal(String siteUserId) {
if (StringUtils.isNotEmpty(siteUserId)) {
SimpleUserBean userProfile = UserProfileDao.getInstance().getSimpleProfileById(siteUserId);
if (userProfile != null && StringUtils.isNotEmpty(userProfile.getSiteUserId())) {
return true;
}
}
return false;
}
//检查请求的参数中的groupId是否是存在的
public boolean checkGroupIdLegal(String groupId) {
if (StringUtils.isNotEmpty(groupId)) {
GroupProfileBean groupProfile = UserGroupDao.getInstance().getSimpleGroupBeanById(groupId);
if (groupProfile != null) {
return true;
}
}
return false;
}
//检查请求的参数中的groupId是否是存在的
public boolean checkGroupIdLegal(String groupId) {
if (StringUtils.isNotEmpty(groupId)) {
GroupProfileBean groupProfile = UserGroupDao.getInstance().getSimpleGroupBeanById(groupId);
if (groupProfile != null) {
return true;
}
}
return false;
}
}

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -15,23 +15,20 @@
*/
package com.windchat.im.business.impl.site;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import com.akaxin.proto.core.ConfigProto;
import com.windchat.im.business.constant.GroupConfig;
import com.windchat.im.business.dao.SiteConfigDao;
import com.windchat.im.message.utils.SiteConfigHelper;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.math.NumberUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.akaxin.proto.core.ConfigProto;
import com.windchat.im.business.constant.GroupConfig;
import com.windchat.im.business.dao.SiteConfigDao;
import com.windchat.im.message.utils.SiteConfigHelper;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
*

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -15,25 +15,23 @@
*/
package com.windchat.im.business.impl.tai;
import java.util.List;
import com.windchat.im.business.dao.UserDeviceDao;
import com.windchat.im.business.impl.AbstractRequest;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.windchat.common.command.Command;
import com.windchat.common.command.CommandResponse;
import com.windchat.common.constant.ErrorCode2;
import com.windchat.common.logs.LogUtils;
import com.akaxin.proto.core.DeviceProto;
import com.akaxin.proto.site.ApiDeviceBoundListProto;
import com.akaxin.proto.site.ApiDeviceListProto;
import com.akaxin.proto.site.ApiDeviceProfileProto;
import com.windchat.common.command.Command;
import com.windchat.common.command.CommandResponse;
import com.windchat.common.constant.ErrorCode2;
import com.windchat.common.logs.LogUtils;
import com.windchat.im.business.bean.ApiActions;
import com.windchat.im.business.dao.UserDeviceDao;
import com.windchat.im.business.impl.AbstractRequest;
import com.windchat.im.storage.bean.UserDeviceBean;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.List;
/**
*
@ -41,9 +39,11 @@ import com.windchat.im.storage.bean.UserDeviceBean;
* @since 2017.10.20
*
*/
@ApiActions(action = "api.device")
public class ApiDeviceService extends AbstractRequest {
private static final Logger logger = LoggerFactory.getLogger(ApiDeviceService.class);
@ApiActions(action = ".profile")
public CommandResponse profile(Command command) {
CommandResponse commandResponse = new CommandResponse();
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -76,6 +76,7 @@ public class ApiDeviceService extends AbstractRequest {
return commandResponse.setErrCode2(errCode);
}
@ApiActions(action = ".list")
public CommandResponse list(Command command) {
CommandResponse commandResponse = new CommandResponse();
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -116,6 +117,7 @@ public class ApiDeviceService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".boundList")
public CommandResponse boundList(Command command) {
CommandResponse commandResponse = new CommandResponse();
ErrorCode2 errCode = ErrorCode2.ERROR;

@ -15,23 +15,21 @@
*/
package com.windchat.im.business.impl.tai;
import com.windchat.im.business.impl.AbstractRequest;
import com.windchat.im.business.utils.FilePathUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.akaxin.proto.core.FileProto;
import com.akaxin.proto.site.ApiFileDownloadProto;
import com.akaxin.proto.site.ApiFileUploadProto;
import com.google.protobuf.ByteString;
import com.windchat.common.command.Command;
import com.windchat.common.command.CommandResponse;
import com.windchat.common.constant.ErrorCode2;
import com.windchat.common.logs.LogUtils;
import com.akaxin.proto.core.FileProto;
import com.akaxin.proto.site.ApiFileDownloadProto;
import com.akaxin.proto.site.ApiFileUploadProto;
import com.windchat.im.business.bean.ApiActions;
import com.windchat.im.business.impl.AbstractRequest;
import com.windchat.im.business.utils.FilePathUtils;
import com.windchat.im.business.utils.FileServerUtils;
import com.google.protobuf.ByteString;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
*
@ -39,9 +37,11 @@ import com.google.protobuf.ByteString;
* @author Sam{@link an.guoyue254@gmail.com}
* @since 2018-01-25 17:52:08
*/
@ApiActions(action = "api.file")
public class ApiFileService extends AbstractRequest {
private static Logger logger = LoggerFactory.getLogger(ApiFileService.class);
@ApiActions(action = ".upload")
public CommandResponse upload(Command command) {
CommandResponse commandResponse = new CommandResponse();
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -66,6 +66,7 @@ public class ApiFileService extends AbstractRequest {
return commandResponse.setErrCode2(errCode);
}
@ApiActions(action = ".download")
public CommandResponse download(Command command) {
CommandResponse commandResponse = new CommandResponse();
ErrorCode2 errCode = ErrorCode2.ERROR;

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -15,23 +15,6 @@
*/
package com.windchat.im.business.impl.tai;
import java.util.List;
import com.windchat.im.business.dao.UserFriendDao;
import com.windchat.im.business.dao.UserProfileDao;
import com.windchat.im.business.impl.AbstractRequest;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.windchat.common.command.Command;
import com.windchat.common.command.CommandResponse;
import com.windchat.common.constant.CommandConst;
import com.windchat.common.constant.ErrorCode2;
import com.windchat.common.constant.IErrorCode;
import com.windchat.common.exceptions.ZalyException2;
import com.windchat.common.logs.LogUtils;
import com.windchat.common.utils.StringHelper;
import com.akaxin.proto.core.UserProto;
import com.akaxin.proto.site.ApiFriendApplyCountProto;
import com.akaxin.proto.site.ApiFriendApplyListProto;
@ -45,6 +28,15 @@ import com.akaxin.proto.site.ApiFriendRemarkProto;
import com.akaxin.proto.site.ApiFriendSettingProto;
import com.akaxin.proto.site.ApiFriendUpdateMuteProto;
import com.akaxin.proto.site.ApiFriendUpdateSettingProto;
import com.windchat.common.command.Command;
import com.windchat.common.command.CommandResponse;
import com.windchat.common.constant.CommandConst;
import com.windchat.common.constant.ErrorCode2;
import com.windchat.common.constant.IErrorCode;
import com.windchat.common.exceptions.ZalyException2;
import com.windchat.common.logs.LogUtils;
import com.windchat.common.utils.StringHelper;
import com.windchat.im.business.bean.ApiActions;
import com.windchat.im.business.dao.UserFriendDao;
import com.windchat.im.business.dao.UserProfileDao;
import com.windchat.im.business.impl.AbstractRequest;
@ -55,6 +47,11 @@ import com.windchat.im.storage.bean.ApplyFriendBean;
import com.windchat.im.storage.bean.ApplyUserBean;
import com.windchat.im.storage.bean.SimpleUserBean;
import com.windchat.im.storage.bean.UserFriendBean;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.List;
/**
* <pre>
@ -73,6 +70,7 @@ import com.windchat.im.storage.bean.UserFriendBean;
* @author Sam{@link an.guoyue254@gmail.com}
* @since 2017.11.24 18:36:59
*/
@ApiActions(action = "api.friend")
public class ApiFriendService extends AbstractRequest {
private static final Logger logger = LoggerFactory.getLogger(ApiFriendService.class);
@ -82,6 +80,7 @@ public class ApiFriendService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".profile")
public CommandResponse profile(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -156,6 +155,7 @@ public class ApiFriendService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".list")
public CommandResponse list(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -210,6 +210,7 @@ public class ApiFriendService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".apply")
public CommandResponse apply(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
IErrorCode errCode = ErrorCode2.ERROR;
@ -270,6 +271,7 @@ public class ApiFriendService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".applyList")
public CommandResponse applyList(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -309,6 +311,7 @@ public class ApiFriendService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".applyCount")
public CommandResponse applyCount(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -336,6 +339,7 @@ public class ApiFriendService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".applyResult")
public CommandResponse applyResult(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -382,6 +386,7 @@ public class ApiFriendService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".delete")
public CommandResponse delete(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -413,6 +418,7 @@ public class ApiFriendService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".setting")
public CommandResponse setting(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -451,6 +457,7 @@ public class ApiFriendService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".updateSetting")
public CommandResponse updateSetting(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -488,6 +495,7 @@ public class ApiFriendService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".mute")
public CommandResponse mute(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -520,6 +528,7 @@ public class ApiFriendService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".updateMute")
public CommandResponse updateMute(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -548,6 +557,13 @@ public class ApiFriendService extends AbstractRequest {
return commandResponse.setErrCode2(errCode);
}
/**
*
*
* @param command
* @return
*/
@ApiActions(action =".remark")
public CommandResponse remark(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
IErrorCode errCode = ErrorCode2.ERROR;

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -15,18 +15,12 @@
*/
package com.windchat.im.business.impl.tai;
import java.util.Base64;
import java.util.List;
import java.util.Map;
//import org.apache.commons.codec.binary.Base64;
import com.windchat.im.business.dao.SitePluginDao;
import com.windchat.im.business.impl.AbstractRequest;
import com.windchat.im.business.impl.site.SiteConfig;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.akaxin.proto.core.CoreProto;
import com.akaxin.proto.core.PluginProto;
import com.akaxin.proto.site.ApiPluginListProto;
import com.akaxin.proto.site.ApiPluginPageProto;
import com.akaxin.proto.site.ApiPluginProxyProto;
import com.google.protobuf.ByteString;
import com.windchat.common.command.Command;
import com.windchat.common.command.CommandResponse;
import com.windchat.common.constant.CharsetCoding;
@ -37,16 +31,18 @@ import com.windchat.common.crypto.AESCrypto;
import com.windchat.common.exceptions.ZalyException2;
import com.windchat.common.http.ZalyHttpClient;
import com.windchat.common.logs.LogUtils;
import com.akaxin.proto.core.CoreProto;
import com.akaxin.proto.core.PluginProto;
import com.akaxin.proto.site.ApiPluginListProto;
import com.akaxin.proto.site.ApiPluginPageProto;
import com.akaxin.proto.site.ApiPluginProxyProto;
import com.windchat.im.business.bean.ApiActions;
import com.windchat.im.business.dao.SitePluginDao;
import com.windchat.im.business.impl.AbstractRequest;
import com.windchat.im.business.impl.site.SiteConfig;
import com.windchat.im.storage.bean.PluginBean;
import com.google.protobuf.ByteString;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.Base64;
import java.util.List;
import java.util.Map;
/**
*
@ -54,6 +50,7 @@ import com.google.protobuf.ByteString;
* @author Sam{@link an.guoyue254@gmail.com}
* @since 2017-12-11 14:46:28
*/
@ApiActions(action = "api.plugin")
public class ApiPluginService extends AbstractRequest {
private static Logger logger = LoggerFactory.getLogger(ApiPluginService.class);
private static final String HTTP_PREFFIX = "http://";
@ -65,6 +62,7 @@ public class ApiPluginService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".list")
public CommandResponse list(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
IErrorCode errCode = ErrorCode2.ERROR;
@ -134,6 +132,7 @@ public class ApiPluginService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".page")
public CommandResponse page(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
ErrorCode2 errCode = ErrorCode2.ERROR;
@ -209,6 +208,7 @@ public class ApiPluginService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".proxy")
public CommandResponse proxy(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
ErrorCode2 errCode = ErrorCode2.ERROR;

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -15,24 +15,23 @@
*/
package com.windchat.im.business.impl.tai;
import com.windchat.im.business.impl.AbstractRequest;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.akaxin.proto.core.ConfigProto;
import com.akaxin.proto.core.DeviceProto;
import com.akaxin.proto.site.ApiSecretChatApplyU2Proto;
import com.windchat.common.command.Command;
import com.windchat.common.command.CommandResponse;
import com.windchat.common.constant.CommandConst;
import com.windchat.common.constant.ErrorCode2;
import com.windchat.common.logs.LogUtils;
import com.akaxin.proto.core.ConfigProto;
import com.akaxin.proto.core.DeviceProto;
import com.akaxin.proto.site.ApiSecretChatApplyU2Proto;
import com.windchat.im.business.bean.ApiActions;
import com.windchat.im.business.impl.AbstractRequest;
import com.windchat.im.business.impl.site.SiteConfig;
import com.windchat.im.storage.api.IUserDeviceDao;
import com.windchat.im.storage.bean.UserDeviceBean;
import com.windchat.im.storage.service.DeviceDaoService;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
*
@ -40,6 +39,7 @@ import com.windchat.im.storage.service.DeviceDaoService;
* @author Sam{@link an.guoyue254@gmail.com}
* @since 2017.10.20
*/
@ApiActions(action = "api.secretChat")
public class ApiSecretChatService extends AbstractRequest {
private static final Logger logger = LoggerFactory.getLogger(ApiSecretChatService.class);
private IUserDeviceDao userDeviceDao = new DeviceDaoService();
@ -50,6 +50,7 @@ public class ApiSecretChatService extends AbstractRequest {
* @param command
* @return
*/
@ApiActions(action = ".applyU2")
public CommandResponse applyU2(Command command) {
CommandResponse commandResponse = new CommandResponse().setAction(CommandConst.ACTION_RES);
ErrorCode2 errCode = ErrorCode2.ERROR;

@ -1,5 +1,5 @@
/**
* Copyright 2018-2028 Akaxin Group
* Copyright 2018-2028 WindChat Group
* <p>
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -15,20 +15,12 @@
*/
package com.windchat.im.business.impl.tai;
import java.security.PublicKey;
import java.security.Signature;
import java.util.Base64;
import java.util.Map;
import java.util.Set;
import java.util.UUID;
import com.windchat.im.business.bean.PlatformPhoneBean;
import com.windchat.im.business.dao.*;
import com.windchat.im.business.impl.AbstractRequest;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.akaxin.proto.core.ConfigProto;
import com.akaxin.proto.core.CoreProto;
import com.akaxin.proto.core.UserProto;
import com.akaxin.proto.site.ApiSiteConfigProto;
import com.akaxin.proto.site.ApiSiteLoginProto;
import com.akaxin.proto.site.ApiSiteRegisterProto;
import com.windchat.common.command.Command;
import com.windchat.common.command.CommandResponse;
import com.windchat.common.constant.CommandConst;
@ -40,12 +32,7 @@ import com.windchat.common.exceptions.ZalyException2;
import com.windchat.common.logs.LogUtils;
import com.windchat.common.utils.StringHelper;
import com.windchat.common.utils.UserIdUtils;
import com.akaxin.proto.core.ConfigProto;
import com.akaxin.proto.core.CoreProto;
import com.akaxin.proto.core.UserProto;
import com.akaxin.proto.site.ApiSiteConfigProto;
import com.akaxin.proto.site.ApiSiteLoginProto;
import com.akaxin.proto.site.ApiSiteRegisterProto;
import com.windchat.im.business.bean.ApiActions;
import com.windchat.im.business.bean.PlatformPhoneBean;
import com.windchat.im.business.dao.SiteConfigDao;
import com.windchat.im.business.dao.SiteLoginDao;
@ -64,422 +51,439 @@ import com.windchat.im.storage.bean.UserDeviceBean;
import com.windchat.im.storage.bean.UserProfileBean;
import com.windchat.im.storage.bean.UserSessionBean;
import com.windchat.im.storage.service.DeviceDaoService;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.security.PublicKey;
import java.security.Signature;
import java.util.Base64;
import java.util.Map;
import java.util.Set;
import java.util.UUID;
/**
* <br>
*
* &&
*
* @author Sam{@link an.guoyue254@gmail.com}
* @since 2017-10-17 18:14:10
*/
@ApiActions(action = "api.site")