From cdc97a557534278e97150057144f0de02b4b0879 Mon Sep 17 00:00:00 2001
From: Chris Kearney <chris@kearneymail.com>
Date: Sun, 7 Aug 2016 11:42:04 -0700
Subject: [PATCH] java 8 changes

---
 .../creeper/command/MovementCommand.java      |  1 -
 .../creeper/command/admin/BuildCommand.java   | 10 ++--
 .../creeper/managers/GameManager.java         |  9 ++--
 .../com/comandante/creeper/npc/NpcMover.java  |  4 +-
 .../comandante/creeper/world/BasicRoom.java   |  2 +-
 .../comandante/creeper/world/MapsManager.java |  2 +-
 .../com/comandante/creeper/world/Room.java    | 52 +++++++++----------
 .../creeper/world/WorldExporter.java          | 23 +++-----
 8 files changed, 46 insertions(+), 57 deletions(-)

diff --git a/src/main/java/com/comandante/creeper/command/MovementCommand.java b/src/main/java/com/comandante/creeper/command/MovementCommand.java
index b0538473..69b4f74f 100644
--- a/src/main/java/com/comandante/creeper/command/MovementCommand.java
+++ b/src/main/java/com/comandante/creeper/command/MovementCommand.java
@@ -12,7 +12,6 @@ import org.jboss.netty.channel.ChannelHandlerContext;
 import org.jboss.netty.channel.MessageEvent;
 
 import java.util.Arrays;
-import java.util.Iterator;
 import java.util.List;
 
 public class MovementCommand extends Command {
diff --git a/src/main/java/com/comandante/creeper/command/admin/BuildCommand.java b/src/main/java/com/comandante/creeper/command/admin/BuildCommand.java
index 5e58bb83..2975c85c 100644
--- a/src/main/java/com/comandante/creeper/command/admin/BuildCommand.java
+++ b/src/main/java/com/comandante/creeper/command/admin/BuildCommand.java
@@ -5,17 +5,13 @@ import com.comandante.creeper.managers.GameManager;
 import com.comandante.creeper.player.PlayerMovement;
 import com.comandante.creeper.player.PlayerRole;
 import com.comandante.creeper.world.*;
-import com.google.common.base.Optional;
 import com.google.common.collect.Iterators;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
 import org.jboss.netty.channel.ChannelHandlerContext;
 import org.jboss.netty.channel.MessageEvent;
 
-import java.util.Arrays;
-import java.util.List;
-import java.util.Set;
-import java.util.UUID;
+import java.util.*;
 
 public class BuildCommand extends Command {
 
@@ -76,7 +72,7 @@ public class BuildCommand extends Command {
                         BasicRoom basicRoom = newBasic()
                                 .setRoomId(newRoomId)
                                 .setFloorId(newFloorId)
-                                .setDownId(java.util.Optional.of(currentRoom.getRoomId()))
+                                .setDownId(Optional.of(currentRoom.getRoomId()))
                                 .createBasicRoom();
                         currentRoom.setUpId(Optional.of(newRoomId));
                         entityManager.addEntity(basicRoom);
@@ -99,7 +95,7 @@ public class BuildCommand extends Command {
                         BasicRoom basicRoom = newBasic()
                                 .setRoomId(newRoomId)
                                 .setFloorId(newFloorId)
-                                .setUpId(java.util.Optional.of(currentRoom.getRoomId()))
+                                .setUpId(Optional.of(currentRoom.getRoomId()))
                                 .createBasicRoom();
                         currentRoom.setDownId(Optional.of(newRoomId));
                         entityManager.addEntity(basicRoom);
diff --git a/src/main/java/com/comandante/creeper/managers/GameManager.java b/src/main/java/com/comandante/creeper/managers/GameManager.java
index 374a2ba6..c62a9f05 100755
--- a/src/main/java/com/comandante/creeper/managers/GameManager.java
+++ b/src/main/java/com/comandante/creeper/managers/GameManager.java
@@ -13,7 +13,10 @@ import com.comandante.creeper.merchant.Merchant;
 import com.comandante.creeper.npc.Npc;
 import com.comandante.creeper.npc.NpcMover;
 import com.comandante.creeper.player.*;
-import com.comandante.creeper.server.*;
+import com.comandante.creeper.server.ChannelCommunicationUtils;
+import com.comandante.creeper.server.Color;
+import com.comandante.creeper.server.GossipCache;
+import com.comandante.creeper.server.MultiLineInputManager;
 import com.comandante.creeper.spawner.NpcSpawner;
 import com.comandante.creeper.spells.Effect;
 import com.comandante.creeper.spells.EffectsManager;
@@ -427,7 +430,7 @@ public class GameManager {
     }
 
     public String renderEffectsString(List<Effect> effects) {
-        org.nocrala.tools.texttablefmt.Table t = new org.nocrala.tools.texttablefmt.Table(2, BorderStyle.CLASSIC_COMPATIBLE,
+        Table t = new Table(2, BorderStyle.CLASSIC_COMPATIBLE,
                 ShownBorders.NONE);
 
         t.setColumnWidth(0, 16, 20);
@@ -444,7 +447,7 @@ public class GameManager {
     }
 
     public String renderCoolDownString(Set<CoolDown> coolDowns) {
-        org.nocrala.tools.texttablefmt.Table t = new org.nocrala.tools.texttablefmt.Table(2, BorderStyle.CLASSIC_COMPATIBLE,
+        Table t = new Table(2, BorderStyle.CLASSIC_COMPATIBLE,
                 ShownBorders.NONE);
 
         t.setColumnWidth(0, 16, 20);
diff --git a/src/main/java/com/comandante/creeper/npc/NpcMover.java b/src/main/java/com/comandante/creeper/npc/NpcMover.java
index 8619ecbd..0032bafe 100644
--- a/src/main/java/com/comandante/creeper/npc/NpcMover.java
+++ b/src/main/java/com/comandante/creeper/npc/NpcMover.java
@@ -120,7 +120,7 @@ public class NpcMover {
     }
 
     public Set<Integer> getPossibleExits(Room room) {
-        List<Optional<Integer>> opts = Lists.newArrayList();
+        List<java.util.Optional<Integer>> opts = Lists.newArrayList();
         opts.add(room.getDownId());
         opts.add(room.getUpId());
         opts.add(room.getNorthId());
@@ -129,7 +129,7 @@ public class NpcMover {
         opts.add(room.getWestId());
 
         Set<Integer> exits = Sets.newHashSet();
-        for (Optional<Integer> opt : opts) {
+        for (java.util.Optional<Integer> opt : opts) {
             if (opt.isPresent()) {
                 exits.add(opt.get());
             }
diff --git a/src/main/java/com/comandante/creeper/world/BasicRoom.java b/src/main/java/com/comandante/creeper/world/BasicRoom.java
index c51ad18e..16136730 100644
--- a/src/main/java/com/comandante/creeper/world/BasicRoom.java
+++ b/src/main/java/com/comandante/creeper/world/BasicRoom.java
@@ -1,10 +1,10 @@
 package com.comandante.creeper.world;
 
 import com.comandante.creeper.managers.GameManager;
-import com.google.common.base.Optional;
 
 import java.util.List;
 import java.util.Map;
+import java.util.Optional;
 import java.util.Set;
 
 public class BasicRoom extends Room {
diff --git a/src/main/java/com/comandante/creeper/world/MapsManager.java b/src/main/java/com/comandante/creeper/world/MapsManager.java
index 3b381de5..74adcf72 100644
--- a/src/main/java/com/comandante/creeper/world/MapsManager.java
+++ b/src/main/java/com/comandante/creeper/world/MapsManager.java
@@ -24,7 +24,7 @@ public class MapsManager {
     private final CreeperConfiguration creeperConfiguration;
     private final ExecutorService mapGeneratorService = Executors.newFixedThreadPool(1);
     private static final Logger log = Logger.getLogger(GameManager.class);
-    private final com.codahale.metrics.Timer ticktime = Main.metrics.timer(name(MapsManager.class, "generate_all_maps_time"));
+    private final Timer ticktime = Main.metrics.timer(name(MapsManager.class, "generate_all_maps_time"));
 
     public MapsManager(CreeperConfiguration creeperConfiguration, RoomManager roomManager) {
         this.roomManager = roomManager;
diff --git a/src/main/java/com/comandante/creeper/world/Room.java b/src/main/java/com/comandante/creeper/world/Room.java
index 0a65d6f0..ad8b25af 100644
--- a/src/main/java/com/comandante/creeper/world/Room.java
+++ b/src/main/java/com/comandante/creeper/world/Room.java
@@ -12,8 +12,6 @@ import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.google.common.collect.Sets;
 
-import java.lang.reflect.GenericArrayType;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -32,12 +30,12 @@ public abstract class Room extends CreeperEntity {
 
     private String roomTitle;
     private final Integer floorId;
-    private Optional<Integer> northId;
-    private Optional<Integer> westId;
-    private Optional<Integer> eastId;
-    private Optional<Integer> southId;
-    private Optional<Integer> downId;
-    private Optional<Integer> upId;
+    private java.util.Optional<Integer> northId;
+    private java.util.Optional<Integer> westId;
+    private java.util.Optional<Integer> eastId;
+    private java.util.Optional<Integer> southId;
+    private java.util.Optional<Integer> downId;
+    private java.util.Optional<Integer> upId;
     private List<RemoteExit> enterExits = Lists.newArrayList();
     private String roomDescription;
     private final Set<String> presentPlayerIds = Sets.<String>newConcurrentHashSet();
@@ -55,12 +53,12 @@ public abstract class Room extends CreeperEntity {
     public Room(Integer roomId,
                 String roomTitle,
                 Integer floorId,
-                Optional<Integer> northId,
-                Optional<Integer> southId,
-                Optional<Integer> eastId,
-                Optional<Integer> westId,
-                Optional<Integer> upId,
-                Optional<Integer> downId,
+                java.util.Optional<Integer> northId,
+                java.util.Optional<Integer> southId,
+                java.util.Optional<Integer> eastId,
+                java.util.Optional<Integer> westId,
+                java.util.Optional<Integer> upId,
+                java.util.Optional<Integer> downId,
                 List<RemoteExit> enterExits,
                 String roomDescription, Set<String> roomTags,
                 Set<Area> areas,
@@ -103,27 +101,27 @@ public abstract class Room extends CreeperEntity {
         return roomTags;
     }
 
-    public void setNorthId(Optional<Integer> northId) {
+    public void setNorthId(java.util.Optional<Integer> northId) {
         this.northId = northId;
     }
 
-    public void setWestId(Optional<Integer> westId) {
+    public void setWestId(java.util.Optional<Integer> westId) {
         this.westId = westId;
     }
 
-    public void setEastId(Optional<Integer> eastId) {
+    public void setEastId(java.util.Optional<Integer> eastId) {
         this.eastId = eastId;
     }
 
-    public void setSouthId(Optional<Integer> southId) {
+    public void setSouthId(java.util.Optional<Integer> southId) {
         this.southId = southId;
     }
 
-    public void setDownId(Optional<Integer> downId) {
+    public void setDownId(java.util.Optional<Integer> downId) {
         this.downId = downId;
     }
 
-    public void setUpId(Optional<Integer> upId) {
+    public void setUpId(java.util.Optional<Integer> upId) {
         this.upId = upId;
     }
 
@@ -179,7 +177,7 @@ public abstract class Room extends CreeperEntity {
         return npcIds;
     }
 
-    protected java.util.Set<String> getPresentPlayerIds() {
+    protected Set<String> getPresentPlayerIds() {
         // terrible null pointers will result if you call this shit directly.
         // People sign off and cause problems
         return presentPlayerIds;
@@ -201,27 +199,27 @@ public abstract class Room extends CreeperEntity {
         return roomId;
     }
 
-    public Optional<Integer> getNorthId() {
+    public java.util.Optional<Integer> getNorthId() {
         return northId;
     }
 
-    public Optional<Integer> getWestId() {
+    public java.util.Optional<Integer> getWestId() {
         return westId;
     }
 
-    public Optional<Integer> getEastId() {
+    public java.util.Optional<Integer> getEastId() {
         return eastId;
     }
 
-    public Optional<Integer> getSouthId() {
+    public java.util.Optional<Integer> getSouthId() {
         return southId;
     }
 
-    public Optional<Integer> getUpId() {
+    public java.util.Optional<Integer> getUpId() {
         return upId;
     }
 
-    public Optional<Integer> getDownId() {
+    public java.util.Optional<Integer> getDownId() {
         return downId;
     }
 
diff --git a/src/main/java/com/comandante/creeper/world/WorldExporter.java b/src/main/java/com/comandante/creeper/world/WorldExporter.java
index 0205f2f3..38594480 100644
--- a/src/main/java/com/comandante/creeper/world/WorldExporter.java
+++ b/src/main/java/com/comandante/creeper/world/WorldExporter.java
@@ -3,8 +3,6 @@ package com.comandante.creeper.world;
 import com.comandante.creeper.entity.EntityManager;
 import com.comandante.creeper.managers.GameManager;
 import com.comandante.creeper.managers.SentryManager;
-import com.google.common.base.Function;
-import com.google.common.collect.Iterators;
 import com.google.common.collect.Sets;
 import com.google.common.io.Files;
 import com.google.gson.GsonBuilder;
@@ -14,6 +12,7 @@ import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.nio.charset.Charset;
 import java.util.*;
+import java.util.function.Function;
 
 public class WorldExporter {
 
@@ -58,11 +57,10 @@ public class WorldExporter {
         floorModel.setRawMatrixCsv(mapMatrix.getCsv());
         floorModel.setRoomModels((new HashSet<RoomModel>()));
         floorModel.setName(floorManager.getName(floorId));
-        Iterator<RoomModel> roomModels = Iterators.transform(rooms.iterator(), buildRoomModelsFromRooms());
-        while (roomModels.hasNext()) {
-            RoomModel next = roomModels.next();
-            floorModel.getRoomModels().add(next);
-        }
+        rooms.stream()
+                .map(buildRoomModelsFromRooms())
+                .forEach(roomModel -> floorModel.getRoomModels()
+                        .add(roomModel));
         return floorModel;
     }
 
@@ -178,20 +176,15 @@ public class WorldExporter {
             mapsManager.addFloorMatrix(floorModel.getId(), matrixFromCsv);
             return;
         }
-        Iterator<BasicRoom> transform = Iterators.transform(floorModel.getRoomModels().iterator(), getBasicRoom(matrixFromCsv));
-        while (transform.hasNext()) {
-            BasicRoom next = transform.next();
-            entityManager.addEntity(next);
-        }
+        floorModel.getRoomModels().stream().map(getBasicRoom(matrixFromCsv)).forEach(entityManager::addEntity);
         floorManager.addFloor(floorModel.getId(), floorModel.getName());
         mapsManager.addFloorMatrix(floorModel.getId(), matrixFromCsv);
     }
 
     public void readWorldFromDisk() throws FileNotFoundException {
         WorldModel worldModel = new GsonBuilder().create().fromJson(Files.newReader(new File(("world/world.json")), Charset.defaultCharset()), WorldModel.class);
-        for (FloorModel next : worldModel.getFloorModelList()) {
-            buildFloor(next);
-        }
+        worldModel.getFloorModelList()
+                .forEach(this::buildFloor);
     }
 
     public void buildTestworld() {
-- 
GitLab