Archived
0

Serializers refactoring

This commit is contained in:
Forwolk
2018-08-02 09:22:38 +03:00
parent ad4a088949
commit f55c9bfb33
8 changed files with 13 additions and 43 deletions

View File

@@ -3,14 +3,14 @@ package mc.world.generated_world;
import mc.core.block.Block;
import mc.core.block.BlockFactory;
import mc.core.block.BlockType;
import mc.core.serialization.BlockDeserializer;
import mc.core.serialization.BlockSerializer;
import mc.core.serialization.Deserializer;
import mc.core.serialization.Serializer;
import mc.core.world.Chunk;
/**
* Prototype
*/
public class BlockSerializerDeserializer implements BlockSerializer, BlockDeserializer {
public class BlockSerializerDeserializer implements Serializer<Block>, Deserializer<Block> {
private BlockFactory blockFactory;
private Chunk chunk;

View File

@@ -1,16 +1,15 @@
package mc.world.generated_world;
import mc.core.block.Block;
import mc.core.block.BlockFactory;
import mc.core.serialization.BlockDeserializer;
import mc.core.serialization.BlockSerializer;
import mc.core.serialization.ChunkSerializer;
import mc.core.serialization.ChunkDeserializer;
import mc.core.serialization.Deserializer;
import mc.core.serialization.Serializer;
import mc.core.world.Chunk;
public class ChunkSerializerDeserializer implements ChunkSerializer, ChunkDeserializer {
public class ChunkSerializerDeserializer implements Serializer<Chunk>, Deserializer<Chunk> {
private BlockSerializer blockSerializer;
private BlockDeserializer blockDeserializer;
private Serializer<Block> blockSerializer;
private Deserializer<Block> blockDeserializer;
@Override
public Chunk deserialize(byte[] bytes) {
@@ -19,7 +18,7 @@ public class ChunkSerializerDeserializer implements ChunkSerializer, ChunkDeseri
@Override
public byte[] serialize(Chunk chunk) {
BlockSerializer blockSerializer = new BlockSerializerDeserializer(new BlockFactory(), chunk);
Serializer<Block> blockSerializer = new BlockSerializerDeserializer(new BlockFactory(), chunk);
int blocks = chunk.getModifiedBlocks().length;
byte[] bytes = new byte[6 + 3 * blocks];

View File

@@ -1,23 +1,18 @@
package mc.world.generated_world;
import lombok.extern.slf4j.Slf4j;
import mc.core.serialization.ChunkDeserializer;
import mc.core.serialization.ChunkSerializer;
import mc.core.serialization.Deserializer;
import mc.core.serialization.Serializer;
import mc.core.world.*;
import mc.world.generated_world.region.RegionImpl;
import org.springframework.beans.factory.annotation.Autowired;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.text.MessageFormat;
import java.util.Optional;
import java.util.UUID;
import static mc.world.generated_world.WorldConstants.*;
@@ -30,9 +25,9 @@ public class InMemoryCacheChunkLoader implements ChunkLoader {
private WorldGenerator worldGenerator;
@Autowired
private ChunkDeserializer chunkDeserializer;
private Deserializer<Chunk> chunkDeserializer;
@Autowired
private ChunkSerializer chunkSerializer;
private Serializer<Chunk> chunkSerializer;
@Autowired
private Serializer<Region> regionSerializer;
@Autowired