Compare commits
No commits in common. "897f469ea936c5bbc0b404a9fd3cd96d23a1d884" and "97f4aae3ab84b584d83314b8cb7422276899111b" have entirely different histories.
897f469ea9
...
97f4aae3ab
|
@ -156,6 +156,8 @@ public class EmailServiceManager {
|
||||||
store = (IMAPStore) session.getStore();
|
store = (IMAPStore) session.getStore();
|
||||||
//连接
|
//连接
|
||||||
store.connect(email.getUsername(),email.getPassword());
|
store.connect(email.getUsername(),email.getPassword());
|
||||||
|
if (RandomUtil.randomInt(1, 5) == 3)
|
||||||
|
throw new MessagingException();
|
||||||
// 解决163普通邮箱无法建立连接问题
|
// 解决163普通邮箱无法建立连接问题
|
||||||
store.id(IAM);
|
store.id(IAM);
|
||||||
//获取收件箱
|
//获取收件箱
|
||||||
|
@ -721,8 +723,8 @@ public class EmailServiceManager {
|
||||||
try {
|
try {
|
||||||
subject = MimeUtility.decodeText(message.getSubject());
|
subject = MimeUtility.decodeText(message.getSubject());
|
||||||
receivedDate = message.getReceivedDate();
|
receivedDate = message.getReceivedDate();
|
||||||
message.setFlag(Flags.Flag.DELETED,true);
|
// message.setFlag(Flags.Flag.DELETED,true);
|
||||||
// log.info("EmailServiceManager: Remove Email:{},receiveTime:{}",message.getSubject(), DateUtils.formatDate(message.getReceivedDate(),"yyyy-MM-dd HH:mm:ss"));
|
// log.info("EmailServiceManager: Remove Email:{},receiveTime:{}",message.getSubject(), DateUtils.formatDate(message.getReceivedDate(),"yyyy-MM-dd HH:mm:ss"));
|
||||||
} catch (MessagingException | UnsupportedEncodingException e) {
|
} catch (MessagingException | UnsupportedEncodingException e) {
|
||||||
status = EmailLogManager.STATUS_ERROR;
|
status = EmailLogManager.STATUS_ERROR;
|
||||||
log.error("Email deletion failed, the subject of the email is :{}, the reason is :{}.",subject,e.getMessage());
|
log.error("Email deletion failed, the subject of the email is :{}, the reason is :{}.",subject,e.getMessage());
|
||||||
|
@ -748,7 +750,6 @@ public class EmailServiceManager {
|
||||||
if(null != store){
|
if(null != store){
|
||||||
store.close();
|
store.close();
|
||||||
}
|
}
|
||||||
log.info("EmailServiceManage资源关闭完成.");
|
|
||||||
// for(String messageId : messageIds){
|
// for(String messageId : messageIds){
|
||||||
// String key = RedisConstant.EMAIL_MSG_ID+StringConstant.COLON+messageId;
|
// String key = RedisConstant.EMAIL_MSG_ID+StringConstant.COLON+messageId;
|
||||||
// redisUtil.del(key);
|
// redisUtil.del(key);
|
||||||
|
@ -769,11 +770,11 @@ public class EmailServiceManager {
|
||||||
try {
|
try {
|
||||||
String key = RedisConstant.EMAIL_MSG_ID+StringConstant.COLON+messageId;
|
String key = RedisConstant.EMAIL_MSG_ID+StringConstant.COLON+messageId;
|
||||||
int numberKey = redisUtil.get(key) != null? (int) redisUtil.get(key):0;
|
int numberKey = redisUtil.get(key) != null? (int) redisUtil.get(key):0;
|
||||||
// exist = redisUtil.hasKey(key);
|
// exist = redisUtil.hasKey(key);
|
||||||
if(numberKey >= taskProperties.getForceDeletedNumber()){
|
if(numberKey >= taskProperties.getForceDeletedNumber()){
|
||||||
exist = true;
|
exist = true;
|
||||||
log.info("Check: Remove Email:{},receiveTime:{}",message.getSubject(), DateUtils.formatDate(message.getReceivedDate(),"yyyy-MM-dd HH:mm:ss"));
|
log.info("Check: Remove Email:{},receiveTime:{}",message.getSubject(), DateUtils.formatDate(message.getReceivedDate(),"yyyy-MM-dd HH:mm:ss"));
|
||||||
message.setFlag(Flags.Flag.DELETED,true);
|
// message.setFlag(Flags.Flag.DELETED,true);
|
||||||
redisUtil.del(key);
|
redisUtil.del(key);
|
||||||
}
|
}
|
||||||
return exist;
|
return exist;
|
||||||
|
|
|
@ -47,6 +47,8 @@ public class AutoProcessManager{
|
||||||
*/
|
*/
|
||||||
private Map<String,EmailParsingActuator> emailExecThreadMap = new HashMap<>();
|
private Map<String,EmailParsingActuator> emailExecThreadMap = new HashMap<>();
|
||||||
|
|
||||||
|
private boolean flag = true;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 启动自动处理
|
* 启动自动处理
|
||||||
*/
|
*/
|
||||||
|
@ -145,9 +147,14 @@ public class AutoProcessManager{
|
||||||
if(!email.isDelFlag()){
|
if(!email.isDelFlag()){
|
||||||
final EmailServiceManager emailServiceManager = EmailServiceManager.getInstance();
|
final EmailServiceManager emailServiceManager = EmailServiceManager.getInstance();
|
||||||
emailServiceManager.init(email);
|
emailServiceManager.init(email);
|
||||||
boolean testFlag = emailServiceManager.testConnectEmailServer();
|
/*boolean testFlag = emailServiceManager.testConnectEmailServer();
|
||||||
if(!testFlag){
|
if(!testFlag){
|
||||||
emails.add(email);
|
emails.add(email);
|
||||||
|
}*/
|
||||||
|
int i = RandomUtil.randomInt(1, 5);
|
||||||
|
flag = i == 3;
|
||||||
|
if(flag){
|
||||||
|
emails.add(email);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -231,8 +238,8 @@ public class AutoProcessManager{
|
||||||
}else{
|
}else{
|
||||||
//如果不包含邮箱id 并且 邮箱处于启用状态 将邮箱对象存入到map中 并将新邮箱标识设置为true
|
//如果不包含邮箱id 并且 邮箱处于启用状态 将邮箱对象存入到map中 并将新邮箱标识设置为true
|
||||||
if(databaseEmail.getEnabled().equals(SysMailEnableType.ENABLE.getMailEnableType())){
|
if(databaseEmail.getEnabled().equals(SysMailEnableType.ENABLE.getMailEnableType())){
|
||||||
final boolean testFlag = testConnectEmailServer(databaseEmail);
|
// final boolean testFlag = testConnectEmailServer(databaseEmail);
|
||||||
if(testFlag){
|
if(flag){
|
||||||
if (emailExecThreadMap.containsKey(databaseEmail.getId())) {
|
if (emailExecThreadMap.containsKey(databaseEmail.getId())) {
|
||||||
EmailParsingActuator actuator = emailExecThreadMap.get(databaseEmail.getId());
|
EmailParsingActuator actuator = emailExecThreadMap.get(databaseEmail.getId());
|
||||||
actuator.setThreadSleep(false);
|
actuator.setThreadSleep(false);
|
||||||
|
|
|
@ -91,11 +91,13 @@ public class EmailParsingActuator extends Thread{
|
||||||
//检验获取的邮件是否在之前删除失败列表中,若在直接调用邮件API删除,并且此次数组里元素也删除
|
//检验获取的邮件是否在之前删除失败列表中,若在直接调用邮件API删除,并且此次数组里元素也删除
|
||||||
for(int i=messages.length-1;i>=0;i--){
|
for(int i=messages.length-1;i>=0;i--){
|
||||||
if (null == messages[i].getHeader("Message-ID")) {
|
if (null == messages[i].getHeader("Message-ID")) {
|
||||||
|
System.out.println("Message ID是空值信息!!!!!!!");
|
||||||
messages = ArrayUtils.remove(messages, i);
|
messages = ArrayUtils.remove(messages, i);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (!messages[i].isExpunged()){
|
if (!messages[i].isExpunged()){
|
||||||
String messageId = ((MimeMessage) messages[i]).getMessageID();
|
String messageId = ((MimeMessage) messages[i]).getMessageID();
|
||||||
|
System.out.println("正常获取到的Message ID是:"+messageId);
|
||||||
final boolean exist = emailServiceManager.check(messages[i],messageId);
|
final boolean exist = emailServiceManager.check(messages[i],messageId);
|
||||||
messageIds.add(messageId);
|
messageIds.add(messageId);
|
||||||
if(exist){
|
if(exist){
|
||||||
|
@ -115,14 +117,15 @@ public class EmailParsingActuator extends Thread{
|
||||||
poolExecutor.execute(spectrumParsingActuator);
|
poolExecutor.execute(spectrumParsingActuator);
|
||||||
}
|
}
|
||||||
taskLatch.await();
|
taskLatch.await();
|
||||||
log.info("EmailParsingActuator本次{}封邮件处理完成", messages.length);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} catch (MessagingException e) {
|
||||||
log.error("EmailParsingActuator has exception: {}", e.getMessage());
|
System.out.println("捕获MessagingException!!!!!!!!");
|
||||||
log.info("Mail-Parsing线程池资源关闭...");
|
// closeResource();
|
||||||
closeResource();
|
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
|
} catch (Exception e) {
|
||||||
|
// closeResource();
|
||||||
|
log.error(""+e);
|
||||||
} finally {
|
} finally {
|
||||||
//清除本批次邮件日志缓存
|
//清除本批次邮件日志缓存
|
||||||
EmailLogManager.getInstance().clear();
|
EmailLogManager.getInstance().clear();
|
||||||
|
|
|
@ -84,8 +84,7 @@ public class GardsSampleDataServiceImpl extends ServiceImpl<GardsSampleDataMappe
|
||||||
LambdaQueryWrapper<GardsSampleData> queryWrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<GardsSampleData> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
queryWrapper.eq(GardsSampleData::getInputFileName,inputFileName);
|
queryWrapper.eq(GardsSampleData::getInputFileName,inputFileName);
|
||||||
final GardsSampleData sampleData = this.getOne(queryWrapper);
|
final GardsSampleData sampleData = this.getOne(queryWrapper);
|
||||||
if(Objects.nonNull(sampleData) && !SampleStatus.COMPLETE.getValue().equals(sampleData.getStatus())
|
if(Objects.nonNull(sampleData) && !SampleStatus.COMPLETE.getValue().equals(sampleData.getStatus())){
|
||||||
&& !SampleStatus.INTERACTIVE.getValue().equals(sampleData.getStatus())){
|
|
||||||
this.baseMapper.updateStatus(status,inputFileName);
|
this.baseMapper.updateStatus(status,inputFileName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -316,7 +316,7 @@ public abstract class AbstractSpectrumHandler extends AbstractChain {
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
} else if(SpectrumSource.FROM_FILE_SOURCE.getSourceType().equals(spectrumSource) && (e instanceof FileRepeatException)){
|
} else if(SpectrumSource.FROM_FILE_SOURCE.getSourceType().equals(spectrumSource) && (e instanceof FileRepeatException)){
|
||||||
this.spectrumFile.delete(); // TODO 删除原始谱文件
|
this.spectrumFile.delete();
|
||||||
} else if (SpectrumSource.FORM_FILE_UNDEL.getSourceType().equals(spectrumSource) && !(e instanceof FileRepeatException)) {
|
} else if (SpectrumSource.FORM_FILE_UNDEL.getSourceType().equals(spectrumSource) && !(e instanceof FileRepeatException)) {
|
||||||
try {
|
try {
|
||||||
if (isDateFormatErr) {
|
if (isDateFormatErr) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user