新增查询真实可用空间
This commit is contained in:
parent
da9ab50613
commit
1eb5e16c6b
@ -14,7 +14,7 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
|
||||
ConnectMessage.class, DelayTestMessage.class, DynamicConfigMessage.class, ExtractFileMessage.class, FileOperateMessage.class, FileQueryMessage.class, FileResponseMessage.class,
|
||||
MoveFileRequestMessage.class, MoveFileResponseMessage.class, PairMessage.class, PairResultMessage.class, ResponseMessage.class, ShareFileMessage.class, ShareFileQueryMessage.class,
|
||||
TaskCancelMessage.class, TaskStatusMessage.class, UnPairMessage.class, FileNode.class, Record.class, ShareFile.class, ShareFileDownloadRecord.class, Task.class,
|
||||
User.class})
|
||||
User.class, StorageSpaceQueryMessage.class})
|
||||
public class WebComponentConfiguration implements WebMvcConfigurer {
|
||||
|
||||
Interceptor interceptor;
|
||||
|
||||
@ -26,6 +26,7 @@ public class AbstractMessage {
|
||||
public static final int CONFIG_MESSAGE = 80;
|
||||
public static final int CONNECT_MESSAGE = 90;
|
||||
public static final int DELAY_TEST_MESSAGE = 91;
|
||||
public static final int STORAGE_SPACE_QUERY_MESSAGE = 92;
|
||||
|
||||
public int messageType;
|
||||
public int messageId;
|
||||
|
||||
@ -56,6 +56,7 @@ public class MessageCodec extends ByteToMessageCodec<AbstractMessage> {
|
||||
case AbstractMessage.CONFIG_MESSAGE -> objectMapper.readValue(bytes, ConfigMessage.class);
|
||||
case AbstractMessage.CONNECT_MESSAGE -> objectMapper.readValue(bytes, ConnectMessage.class);
|
||||
case AbstractMessage.DELAY_TEST_MESSAGE -> objectMapper.readValue(bytes, DelayTestMessage.class);
|
||||
case AbstractMessage.STORAGE_SPACE_QUERY_MESSAGE -> objectMapper.readValue(bytes, StorageSpaceQueryMessage.class);
|
||||
default -> throw new IllegalStateException("Unexpected value: " + type);
|
||||
};
|
||||
|
||||
|
||||
@ -0,0 +1,7 @@
|
||||
package com.lion.snss.message;
|
||||
|
||||
public class StorageSpaceQueryMessage extends AbstractMessage{
|
||||
{
|
||||
messageType = AbstractMessage.STORAGE_SPACE_QUERY_MESSAGE;
|
||||
}
|
||||
}
|
||||
@ -450,6 +450,9 @@ public class CommunicateToMainService {
|
||||
DelayTestMessage delayTestMessage = (DelayTestMessage) abstractMessage;
|
||||
ctx.channel().writeAndFlush(delayTestToIp(delayTestMessage));
|
||||
}
|
||||
case AbstractMessage.STORAGE_SPACE_QUERY_MESSAGE -> {
|
||||
ctx.channel().writeAndFlush(storageSpaceQuery(abstractMessage.getMessageId()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1041,7 +1044,7 @@ public class CommunicateToMainService {
|
||||
try(TarArchiveInputStream tarInput = new TarArchiveInputStream(new BufferedInputStream(new FileInputStream(storagePath + task.getRelativePath() + task.getSourcePath()))))
|
||||
{
|
||||
TarArchiveEntry entry;
|
||||
while ((entry = tarInput.getNextTarEntry()) != null) {
|
||||
while ((entry = tarInput.getNextEntry()) != null) {
|
||||
if (entry.isDirectory()) {
|
||||
// 如果是目录,创建相应的目录结构
|
||||
File dir = new File(storagePath + task.getRelativePath() + task.getTargetPath(), entry.getName());
|
||||
@ -1274,5 +1277,16 @@ public class CommunicateToMainService {
|
||||
data[5] = sum / 5;
|
||||
return response.put("data", Arrays.toString(data)).success();
|
||||
}
|
||||
|
||||
private ResponseMessage storageSpaceQuery(int messageId){
|
||||
ResponseMessage responseMessage = new ResponseMessage(messageId);
|
||||
File file = new File(storagePath);
|
||||
System.out.println("查询本节点存储空间:");
|
||||
responseMessage.put("availableSpace", file.getFreeSpace());
|
||||
responseMessage.put("totalSpace", file.getTotalSpace());
|
||||
System.out.println(responseMessage.getData());
|
||||
responseMessage.success();
|
||||
return responseMessage;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user