新增查询真实可用空间
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,
|
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,
|
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,
|
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 {
|
public class WebComponentConfiguration implements WebMvcConfigurer {
|
||||||
|
|
||||||
Interceptor interceptor;
|
Interceptor interceptor;
|
||||||
|
|||||||
@ -26,6 +26,7 @@ public class AbstractMessage {
|
|||||||
public static final int CONFIG_MESSAGE = 80;
|
public static final int CONFIG_MESSAGE = 80;
|
||||||
public static final int CONNECT_MESSAGE = 90;
|
public static final int CONNECT_MESSAGE = 90;
|
||||||
public static final int DELAY_TEST_MESSAGE = 91;
|
public static final int DELAY_TEST_MESSAGE = 91;
|
||||||
|
public static final int STORAGE_SPACE_QUERY_MESSAGE = 92;
|
||||||
|
|
||||||
public int messageType;
|
public int messageType;
|
||||||
public int messageId;
|
public int messageId;
|
||||||
|
|||||||
@ -56,6 +56,7 @@ public class MessageCodec extends ByteToMessageCodec<AbstractMessage> {
|
|||||||
case AbstractMessage.CONFIG_MESSAGE -> objectMapper.readValue(bytes, ConfigMessage.class);
|
case AbstractMessage.CONFIG_MESSAGE -> objectMapper.readValue(bytes, ConfigMessage.class);
|
||||||
case AbstractMessage.CONNECT_MESSAGE -> objectMapper.readValue(bytes, ConnectMessage.class);
|
case AbstractMessage.CONNECT_MESSAGE -> objectMapper.readValue(bytes, ConnectMessage.class);
|
||||||
case AbstractMessage.DELAY_TEST_MESSAGE -> objectMapper.readValue(bytes, DelayTestMessage.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);
|
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;
|
DelayTestMessage delayTestMessage = (DelayTestMessage) abstractMessage;
|
||||||
ctx.channel().writeAndFlush(delayTestToIp(delayTestMessage));
|
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()))))
|
try(TarArchiveInputStream tarInput = new TarArchiveInputStream(new BufferedInputStream(new FileInputStream(storagePath + task.getRelativePath() + task.getSourcePath()))))
|
||||||
{
|
{
|
||||||
TarArchiveEntry entry;
|
TarArchiveEntry entry;
|
||||||
while ((entry = tarInput.getNextTarEntry()) != null) {
|
while ((entry = tarInput.getNextEntry()) != null) {
|
||||||
if (entry.isDirectory()) {
|
if (entry.isDirectory()) {
|
||||||
// 如果是目录,创建相应的目录结构
|
// 如果是目录,创建相应的目录结构
|
||||||
File dir = new File(storagePath + task.getRelativePath() + task.getTargetPath(), entry.getName());
|
File dir = new File(storagePath + task.getRelativePath() + task.getTargetPath(), entry.getName());
|
||||||
@ -1274,5 +1277,16 @@ public class CommunicateToMainService {
|
|||||||
data[5] = sum / 5;
|
data[5] = sum / 5;
|
||||||
return response.put("data", Arrays.toString(data)).success();
|
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