Use the diamond notation
diff --git a/core/src/main/java/org/apache/ftpserver/command/CommandFactoryFactory.java b/core/src/main/java/org/apache/ftpserver/command/CommandFactoryFactory.java
index 0ac2d24..ebe7f3f 100644
--- a/core/src/main/java/org/apache/ftpserver/command/CommandFactoryFactory.java
+++ b/core/src/main/java/org/apache/ftpserver/command/CommandFactoryFactory.java
@@ -82,7 +82,7 @@
  */
 public class CommandFactoryFactory {
 
-    private static final HashMap<String, Command> DEFAULT_COMMAND_MAP = new HashMap<String, Command>();
+    private static final HashMap<String, Command> DEFAULT_COMMAND_MAP = new HashMap<>();
 
     static {
         // first populate the default command list
@@ -140,7 +140,7 @@
         DEFAULT_COMMAND_MAP.put("USER", new USER());
     }
 
-    private Map<String, Command> commandMap = new HashMap<String, Command>();
+    private Map<String, Command> commandMap = new HashMap<>();
 
     private boolean useDefaultCommands = true;
 
@@ -150,7 +150,7 @@
      */
     public CommandFactory createCommandFactory() {
         
-        Map<String, Command> mergedCommands = new HashMap<String, Command>();
+        Map<String, Command> mergedCommands = new HashMap<>();
         if(useDefaultCommands) {
             mergedCommands.putAll(DEFAULT_COMMAND_MAP);
         }
diff --git a/core/src/main/java/org/apache/ftpserver/command/impl/DefaultCommandFactory.java b/core/src/main/java/org/apache/ftpserver/command/impl/DefaultCommandFactory.java
index 8b0fd47..b387e48 100644
--- a/core/src/main/java/org/apache/ftpserver/command/impl/DefaultCommandFactory.java
+++ b/core/src/main/java/org/apache/ftpserver/command/impl/DefaultCommandFactory.java
@@ -39,7 +39,7 @@
 public class DefaultCommandFactory implements CommandFactory {
 
     public DefaultCommandFactory() {
-        this(new HashMap<String, Command>());
+        this(new HashMap<>());
     }
 
     /**
diff --git a/core/src/main/java/org/apache/ftpserver/command/impl/OPTS.java b/core/src/main/java/org/apache/ftpserver/command/impl/OPTS.java
index 9868f42..a6a08c5 100644
--- a/core/src/main/java/org/apache/ftpserver/command/impl/OPTS.java
+++ b/core/src/main/java/org/apache/ftpserver/command/impl/OPTS.java
@@ -47,7 +47,7 @@
 
     private final Logger LOG = LoggerFactory.getLogger(OPTS.class);
 
-    private static final HashMap<String, Command> COMMAND_MAP = new HashMap<String, Command>(
+    private static final HashMap<String, Command> COMMAND_MAP = new HashMap<>(
             16);
 
     /**
diff --git a/core/src/main/java/org/apache/ftpserver/command/impl/OPTS_MLST.java b/core/src/main/java/org/apache/ftpserver/command/impl/OPTS_MLST.java
index 196d619..f08bd68 100644
--- a/core/src/main/java/org/apache/ftpserver/command/impl/OPTS_MLST.java
+++ b/core/src/main/java/org/apache/ftpserver/command/impl/OPTS_MLST.java
@@ -94,7 +94,7 @@
             return new String[0];
         }
 
-        List<String> selectedTypes = new ArrayList<String>();
+        List<String> selectedTypes = new ArrayList<>();
         // check all the types
         for (int i = 0; i < types.length; ++i) {
             for (int j = 0; j < AVAILABLE_TYPES.length; ++j) {
diff --git a/core/src/main/java/org/apache/ftpserver/command/impl/listing/DirectoryLister.java b/core/src/main/java/org/apache/ftpserver/command/impl/listing/DirectoryLister.java
index 34b10c2..a87b2d9 100644
--- a/core/src/main/java/org/apache/ftpserver/command/impl/listing/DirectoryLister.java
+++ b/core/src/main/java/org/apache/ftpserver/command/impl/listing/DirectoryLister.java
@@ -96,7 +96,7 @@
         try {
             FtpFile virtualFile = fileSystemView.getFile(file);
             if (virtualFile.isFile()) {
-                List<FtpFile> auxFiles = new ArrayList<FtpFile>();
+                List<FtpFile> auxFiles = new ArrayList<>();
                 auxFiles.add(virtualFile);
                 files = auxFiles;
             } else {
diff --git a/core/src/main/java/org/apache/ftpserver/config/spring/SpringUtil.java b/core/src/main/java/org/apache/ftpserver/config/spring/SpringUtil.java
index 7ba5780..3f75303 100644
--- a/core/src/main/java/org/apache/ftpserver/config/spring/SpringUtil.java
+++ b/core/src/main/java/org/apache/ftpserver/config/spring/SpringUtil.java
@@ -49,7 +49,7 @@
      * @return All children
      */
     public static List<Element> getChildElements(final Element elm) {
-        List<Element> elements = new ArrayList<Element>();
+        List<Element> elements = new ArrayList<>();
         NodeList childs = elm.getChildNodes();
         for (int i = 0; i < childs.getLength(); i++) {
             Node child = childs.item(i);
diff --git a/core/src/main/java/org/apache/ftpserver/ftpletcontainer/impl/DefaultFtpletContainer.java b/core/src/main/java/org/apache/ftpserver/ftpletcontainer/impl/DefaultFtpletContainer.java
index a1051c2..a404500 100644
--- a/core/src/main/java/org/apache/ftpserver/ftpletcontainer/impl/DefaultFtpletContainer.java
+++ b/core/src/main/java/org/apache/ftpserver/ftpletcontainer/impl/DefaultFtpletContainer.java
@@ -52,7 +52,7 @@
     private final Map<String, Ftplet> ftplets ;
 
     public DefaultFtpletContainer() {
-        this(new ConcurrentHashMap<String, Ftplet>());
+        this(new ConcurrentHashMap<>());
     }
     
     public DefaultFtpletContainer(Map<String, Ftplet> ftplets) {
diff --git a/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpServer.java b/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpServer.java
index 680bd19..e029d49 100644
--- a/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpServer.java
+++ b/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpServer.java
@@ -72,7 +72,7 @@
             throw new IllegalStateException("FtpServer has been stopped. Restart is not supported");
         }
 
-        List<Listener> startedListeners = new ArrayList<Listener>();
+        List<Listener> startedListeners = new ArrayList<>();
         
         try {
             Map<String, Listener> listeners = serverContext.getListeners();
diff --git a/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpServerContext.java b/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpServerContext.java
index 731b0f5..db59db5 100644
--- a/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpServerContext.java
+++ b/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpServerContext.java
@@ -77,10 +77,10 @@
 
     private ConnectionConfig connectionConfig = new ConnectionConfigFactory().createConnectionConfig();
 
-    private Map<String, Listener> listeners = new HashMap<String, Listener>();
+    private Map<String, Listener> listeners = new HashMap<>();
 
-    private static final List<Authority> ADMIN_AUTHORITIES = new ArrayList<Authority>();
-    private static final List<Authority> ANON_AUTHORITIES = new ArrayList<Authority>();
+    private static final List<Authority> ADMIN_AUTHORITIES = new ArrayList<>();
+    private static final List<Authority> ANON_AUTHORITIES = new ArrayList<>();
     
     /**
      * The thread pool executor to be used by the server using this context
diff --git a/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpStatistics.java b/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpStatistics.java
index e8228e5..f9808ce 100644
--- a/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpStatistics.java
+++ b/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpStatistics.java
@@ -77,7 +77,7 @@
     private AtomicLong bytesDownload = new AtomicLong(0L);
 
     private static class UserLogins {
-        private Map<InetAddress, AtomicInteger> perAddress = new ConcurrentHashMap<InetAddress, AtomicInteger>();
+        private Map<InetAddress, AtomicInteger> perAddress = new ConcurrentHashMap<>();
 
         public UserLogins(InetAddress address) {
             // init with the first connection
@@ -100,7 +100,7 @@
     /**
      *The user login information.
      */
-    private Map<String, UserLogins> userLoginTable = new ConcurrentHashMap<String, UserLogins>();
+    private Map<String, UserLogins> userLoginTable = new ConcurrentHashMap<>();
 
     public static final String LOGIN_NUMBER = "login_number";
 
diff --git a/core/src/main/java/org/apache/ftpserver/impl/PassivePorts.java b/core/src/main/java/org/apache/ftpserver/impl/PassivePorts.java
index d812061..b643a12 100644
--- a/core/src/main/java/org/apache/ftpserver/impl/PassivePorts.java
+++ b/core/src/main/java/org/apache/ftpserver/impl/PassivePorts.java
@@ -72,7 +72,7 @@
      *             integer or too large for a port number)
      */
     private static Set<Integer> parse(final String portsString) {
-        Set<Integer> passivePortsList = new HashSet<Integer>();
+        Set<Integer> passivePortsList = new HashSet<>();
 
         boolean inRange = false;
         Integer lastPort = Integer.valueOf(1);
@@ -154,12 +154,12 @@
         if (passivePorts == null) {
             throw new NullPointerException("passivePorts can not be null");
         } else if(passivePorts.isEmpty()) {
-            passivePorts = new HashSet<Integer>();
+            passivePorts = new HashSet<>();
             passivePorts.add(0);
         }
 
-        this.freeList = new ArrayList<Integer>(passivePorts);
-        this.usedList = new HashSet<Integer>(passivePorts.size());
+        this.freeList = new ArrayList<>(passivePorts);
+        this.usedList = new HashSet<>(passivePorts.size());
 
         this.checkIfBound = checkIfBound;
     }
@@ -200,7 +200,7 @@
 
     public synchronized int reserveNextPort() {
         // create a copy of the free ports, so that we can keep track of the tested ports
-        List<Integer> freeCopy = new ArrayList<Integer>(freeList);
+        List<Integer> freeCopy = new ArrayList<>(freeList);
         
         // Loop until we have found a port, or exhausted all available ports
         while (freeCopy.size() > 0) {
diff --git a/core/src/main/java/org/apache/ftpserver/ipfilter/RemoteIpFilter.java b/core/src/main/java/org/apache/ftpserver/ipfilter/RemoteIpFilter.java
index 53d9cae..5212d07 100644
--- a/core/src/main/java/org/apache/ftpserver/ipfilter/RemoteIpFilter.java
+++ b/core/src/main/java/org/apache/ftpserver/ipfilter/RemoteIpFilter.java
@@ -64,7 +64,7 @@
      *            the filter type
      */
     public RemoteIpFilter(IpFilterType type) {
-        this(type, new HashSet<Subnet>(0));
+        this(type, new HashSet<>(0));
     }
 
     /**
diff --git a/core/src/main/java/org/apache/ftpserver/listener/nio/NioListener.java b/core/src/main/java/org/apache/ftpserver/listener/nio/NioListener.java
index cfa5d45..034da60 100644
--- a/core/src/main/java/org/apache/ftpserver/listener/nio/NioListener.java
+++ b/core/src/main/java/org/apache/ftpserver/listener/nio/NioListener.java
@@ -247,7 +247,7 @@
     public synchronized Set<FtpIoSession> getActiveSessions() {
     Map<Long, IoSession> sessions = acceptor.getManagedSessions();
 
-    Set<FtpIoSession> ftpSessions = new HashSet<FtpIoSession>();
+    Set<FtpIoSession> ftpSessions = new HashSet<>();
     for (IoSession session : sessions.values()) {
         ftpSessions.add(new FtpIoSession(session, context));
     }
diff --git a/core/src/main/java/org/apache/ftpserver/main/AddUser.java b/core/src/main/java/org/apache/ftpserver/main/AddUser.java
index 8dec68c..d80ba08 100644
--- a/core/src/main/java/org/apache/ftpserver/main/AddUser.java
+++ b/core/src/main/java/org/apache/ftpserver/main/AddUser.java
@@ -94,7 +94,7 @@
 
             user.setMaxIdleTime(askForInt(in, "Max idle time in seconds (0 for none):"));
             
-            List<Authority> authorities = new ArrayList<Authority>();
+            List<Authority> authorities = new ArrayList<>();
             
             if(askForBoolean(in, "Write permission (Y/N):")) {
                 authorities.add(new WritePermission());
diff --git a/core/src/main/java/org/apache/ftpserver/message/impl/DefaultMessageResource.java b/core/src/main/java/org/apache/ftpserver/message/impl/DefaultMessageResource.java
index 67caaf4..bb31857 100644
--- a/core/src/main/java/org/apache/ftpserver/message/impl/DefaultMessageResource.java
+++ b/core/src/main/java/org/apache/ftpserver/message/impl/DefaultMessageResource.java
@@ -73,7 +73,7 @@
         }
 
         // populate different properties
-        messages = new HashMap<String, PropertiesPair>();
+        messages = new HashMap<>();
         if (languages != null) {
             for (String language : languages) {
                 PropertiesPair pair = createPropertiesPair(language, customMessageDirectory);
@@ -221,7 +221,7 @@
             }
         }
         
-        Map<String, String> result = new HashMap<String, String>();
+        Map<String, String> result = new HashMap<>();
         for(Object key : messages.keySet()) {
             result.put(key.toString(), messages.getProperty(key.toString()));
         }
diff --git a/core/src/main/java/org/apache/ftpserver/usermanager/UserFactory.java b/core/src/main/java/org/apache/ftpserver/usermanager/UserFactory.java
index 79dc08a..6766bc1 100644
--- a/core/src/main/java/org/apache/ftpserver/usermanager/UserFactory.java
+++ b/core/src/main/java/org/apache/ftpserver/usermanager/UserFactory.java
@@ -43,7 +43,7 @@
 
     private boolean isEnabled = true;
 
-    private List<Authority> authorities = new ArrayList<Authority>();
+    private List<Authority> authorities = new ArrayList<>();
 
     /**
      * Creates a user based on the configuration set on the factory
diff --git a/core/src/main/java/org/apache/ftpserver/usermanager/impl/BaseUser.java b/core/src/main/java/org/apache/ftpserver/usermanager/impl/BaseUser.java
index 95a6699..f745436 100644
--- a/core/src/main/java/org/apache/ftpserver/usermanager/impl/BaseUser.java
+++ b/core/src/main/java/org/apache/ftpserver/usermanager/impl/BaseUser.java
@@ -57,7 +57,7 @@
 
     private boolean isEnabled = true;
 
-    private List<? extends Authority> authorities = new ArrayList<Authority>();
+    private List<? extends Authority> authorities = new ArrayList<>();
 
     /**
      * Default constructor.
@@ -209,7 +209,7 @@
      * {@inheritDoc}
      */
     public List<Authority> getAuthorities(Class<? extends Authority> clazz) {
-        List<Authority> selected = new ArrayList<Authority>();
+        List<Authority> selected = new ArrayList<>();
 
         for (Authority authority : authorities) {
             if (authority.getClass().equals(clazz)) {
diff --git a/core/src/main/java/org/apache/ftpserver/usermanager/impl/DbUserManager.java b/core/src/main/java/org/apache/ftpserver/usermanager/impl/DbUserManager.java
index 7379945..d0f6c47 100644
--- a/core/src/main/java/org/apache/ftpserver/usermanager/impl/DbUserManager.java
+++ b/core/src/main/java/org/apache/ftpserver/usermanager/impl/DbUserManager.java
@@ -283,7 +283,7 @@
         try {
 
             // create the sql query
-            HashMap<String, Object> map = new HashMap<String, Object>();
+            HashMap<String, Object> map = new HashMap<>();
             map.put(ATTR_LOGIN, escapeString(login));
             String sql = StringUtils.replaceString(isAdminStmt, map);
             LOG.info(sql);
@@ -317,7 +317,7 @@
      */
     public void delete(String name) throws FtpException {
         // create sql query
-        HashMap<String, Object> map = new HashMap<String, Object>();
+        HashMap<String, Object> map = new HashMap<>();
         map.put(ATTR_LOGIN, escapeString(name));
         String sql = StringUtils.replaceString(deleteUserStmt, map);
         LOG.info(sql);
@@ -348,7 +348,7 @@
         try {
 
             // create sql query
-            HashMap<String, Object> map = new HashMap<String, Object>();
+            HashMap<String, Object> map = new HashMap<>();
             map.put(ATTR_LOGIN, escapeString(user.getName()));
 
             String password = null;
@@ -472,7 +472,7 @@
 
     private BaseUser selectUserByName(String name) throws SQLException {
         // create sql query
-        HashMap<String, Object> map = new HashMap<String, Object>();
+        HashMap<String, Object> map = new HashMap<>();
         map.put(ATTR_LOGIN, escapeString(name));
         String sql = StringUtils.replaceString(selectUserStmt, map);
         LOG.info(sql);
@@ -494,7 +494,7 @@
                 thisUser.setEnabled(rs.getBoolean(ATTR_ENABLE));
                 thisUser.setMaxIdleTime(rs.getInt(ATTR_MAX_IDLE_TIME));
 
-                List<Authority> authorities = new ArrayList<Authority>();
+                List<Authority> authorities = new ArrayList<>();
                 if (rs.getBoolean(ATTR_WRITE_PERM)) {
                     authorities.add(new WritePermission());
                 }
@@ -551,7 +551,7 @@
         try {
 
             // create the sql
-            HashMap<String, Object> map = new HashMap<String, Object>();
+            HashMap<String, Object> map = new HashMap<>();
             map.put(ATTR_LOGIN, escapeString(name));
             String sql = StringUtils.replaceString(selectUserStmt, map);
             LOG.info(sql);
@@ -587,7 +587,7 @@
             rs = stmt.executeQuery(sql);
 
             // populate list
-            ArrayList<String> names = new ArrayList<String>();
+            ArrayList<String> names = new ArrayList<>();
             while (rs.next()) {
                 names.add(rs.getString(ATTR_LOGIN));
             }
@@ -625,7 +625,7 @@
             try {
 
                 // create the sql query
-                HashMap<String, Object> map = new HashMap<String, Object>();
+                HashMap<String, Object> map = new HashMap<>();
                 map.put(ATTR_LOGIN, escapeString(user));
                 String sql = StringUtils.replaceString(authenticateStmt, map);
                 LOG.info(sql);
diff --git a/core/src/main/java/org/apache/ftpserver/usermanager/impl/PropertiesUserManager.java b/core/src/main/java/org/apache/ftpserver/usermanager/impl/PropertiesUserManager.java
index 8faf5f3..d101669 100644
--- a/core/src/main/java/org/apache/ftpserver/usermanager/impl/PropertiesUserManager.java
+++ b/core/src/main/java/org/apache/ftpserver/usermanager/impl/PropertiesUserManager.java
@@ -337,7 +337,7 @@
         // remove entries from properties
         String thisPrefix = PREFIX + usrName + '.';
         Enumeration<?> propNames = userDataProp.propertyNames();
-        ArrayList<String> remKeys = new ArrayList<String>();
+        ArrayList<String> remKeys = new ArrayList<>();
         while (propNames.hasMoreElements()) {
             String thisKey = propNames.nextElement().toString();
             if (thisKey.startsWith(thisPrefix)) {
@@ -390,7 +390,7 @@
     public String[] getAllUserNames() {
         // get all user names
         String suffix = '.' + ATTR_HOME;
-        ArrayList<String> ulst = new ArrayList<String>();
+        ArrayList<String> ulst = new ArrayList<>();
         Enumeration<?> allKeys = userDataProp.propertyNames();
         int prefixlen = PREFIX.length();
         int suffixlen = suffix.length();
@@ -423,7 +423,7 @@
         user.setHomeDirectory(userDataProp
                 .getProperty(baseKey + ATTR_HOME, "/"));
 
-        List<Authority> authorities = new ArrayList<Authority>();
+        List<Authority> authorities = new ArrayList<>();
 
         if (userDataProp.getBoolean(baseKey + ATTR_WRITE_PERM, false)) {
             authorities.add(new WritePermission());
diff --git a/core/src/test/java/org/apache/ftpserver/clienttests/FtpMd5Test.java b/core/src/test/java/org/apache/ftpserver/clienttests/FtpMd5Test.java
index 8fcfb87..b121eb8 100644
--- a/core/src/test/java/org/apache/ftpserver/clienttests/FtpMd5Test.java
+++ b/core/src/test/java/org/apache/ftpserver/clienttests/FtpMd5Test.java
@@ -194,7 +194,7 @@
 
         String[] tokens = s.split(",");
 
-        Map<String, String> result = new HashMap<String, String>();
+        Map<String, String> result = new HashMap<>();
         for (int i = 0; i < tokens.length; i++) {
             String token = tokens[i].trim();
             int hashStart = token.lastIndexOf(' ');
diff --git a/core/src/test/java/org/apache/ftpserver/clienttests/InetAddressBlacklistTest.java b/core/src/test/java/org/apache/ftpserver/clienttests/InetAddressBlacklistTest.java
index ebcc32c..7dcb3df 100644
--- a/core/src/test/java/org/apache/ftpserver/clienttests/InetAddressBlacklistTest.java
+++ b/core/src/test/java/org/apache/ftpserver/clienttests/InetAddressBlacklistTest.java
@@ -39,7 +39,7 @@
 
         ListenerFactory factory = new ListenerFactory(server.getListener("default"));
 
-        List<InetAddress> blockedAddresses = new ArrayList<InetAddress>();
+        List<InetAddress> blockedAddresses = new ArrayList<>();
         blockedAddresses.add(InetAddress.getByName("localhost"));
 
         factory.setBlockedAddresses(blockedAddresses);
diff --git a/core/src/test/java/org/apache/ftpserver/clienttests/SubnetBlacklistTest.java b/core/src/test/java/org/apache/ftpserver/clienttests/SubnetBlacklistTest.java
index 8483465..1dde59c 100644
--- a/core/src/test/java/org/apache/ftpserver/clienttests/SubnetBlacklistTest.java
+++ b/core/src/test/java/org/apache/ftpserver/clienttests/SubnetBlacklistTest.java
@@ -40,7 +40,7 @@
 
         ListenerFactory factory = new ListenerFactory(server.getListener("default"));
 
-        List<Subnet> blockedSubnets = new ArrayList<Subnet>();
+        List<Subnet> blockedSubnets = new ArrayList<>();
         blockedSubnets.add(new Subnet(InetAddress.getByName("localhost"), 32));
 
         factory.setBlockedSubnets(blockedSubnets);
diff --git a/core/src/test/java/org/apache/ftpserver/filesystem/nativefs/impl/NativeFtpFileTest.java b/core/src/test/java/org/apache/ftpserver/filesystem/nativefs/impl/NativeFtpFileTest.java
index 6e603d9..434c2f6 100644
--- a/core/src/test/java/org/apache/ftpserver/filesystem/nativefs/impl/NativeFtpFileTest.java
+++ b/core/src/test/java/org/apache/ftpserver/filesystem/nativefs/impl/NativeFtpFileTest.java
@@ -47,7 +47,7 @@
 
     private static final File TEST_FILE3 = new File(ROOT_DIR, "file3");
 
-    private static final Map<String, File> FILE_MAPPINGS = new HashMap<String, File>();
+    private static final Map<String, File> FILE_MAPPINGS = new HashMap<>();
 
     static {
         FILE_MAPPINGS.put("/", ROOT_DIR);
diff --git a/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetContainerTestTemplate.java b/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetContainerTestTemplate.java
index 927efb8..30fb1d9 100644
--- a/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetContainerTestTemplate.java
+++ b/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetContainerTestTemplate.java
@@ -45,7 +45,7 @@
  */
 public abstract class FtpLetContainerTestTemplate extends TestCase {
 
-    private final List<String> calls = new ArrayList<String>();
+    private final List<String> calls = new ArrayList<>();
 
     @Override
     protected void setUp() throws Exception {
@@ -77,7 +77,7 @@
         MockFtplet ftplet1 = new MockFtplet();
         MockFtplet ftplet2 = new MockFtplet();
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
         
@@ -90,7 +90,7 @@
     public void testFtpletLifecyclePreContainerInit() throws FtpException {
         MockFtplet ftplet = new MockFtplet();
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet);
 
         FtpletContainer container = createFtpletContainer(ftplets);
@@ -127,7 +127,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -158,7 +158,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -189,7 +189,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -221,7 +221,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -253,7 +253,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -285,7 +285,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -317,7 +317,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -349,7 +349,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -381,7 +381,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -413,7 +413,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -445,7 +445,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -477,7 +477,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -509,7 +509,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -541,7 +541,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -573,7 +573,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -605,7 +605,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -637,7 +637,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -669,7 +669,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -701,7 +701,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -733,7 +733,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -768,7 +768,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet1", ftplet1);
         ftplets.put("ftplet2", ftplet2);
 
@@ -802,7 +802,7 @@
             }
         };
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("ftplet2", ftplet2);
         ftplets.put("ftplet1", ftplet1);
 
diff --git a/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetOnConnectTest.java b/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetOnConnectTest.java
index e73bcdb..cb7e003 100644
--- a/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetOnConnectTest.java
+++ b/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetOnConnectTest.java
@@ -69,7 +69,7 @@
     protected FtpServerFactory createServer() throws Exception {
         FtpServerFactory server = super.createServer();
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("f1", new MockFtplet());
         server.setFtplets(ftplets);
         
diff --git a/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetReturnDefaultTest.java b/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetReturnDefaultTest.java
index 3c9f3cb..f9f5dc4 100644
--- a/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetReturnDefaultTest.java
+++ b/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetReturnDefaultTest.java
@@ -77,7 +77,7 @@
     protected FtpServerFactory createServer() throws Exception {
         FtpServerFactory server = super.createServer();
 
-        Map<String, Ftplet> ftplets = new HashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new HashMap<>();
         ftplets.put("f1", new MockFtplet());
         
         server.setFtplets(ftplets);
@@ -86,7 +86,7 @@
     }
 
     public void testLogin() throws Exception {
-        final LinkedBlockingQueue<User> loggedInUser = new LinkedBlockingQueue<User>();
+        final LinkedBlockingQueue<User> loggedInUser = new LinkedBlockingQueue<>();
         
         MockFtplet.callback = new MockFtpletCallback() {
             public FtpletResult onLogin(FtpSession session, FtpRequest request)
diff --git a/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetReturnDisconnectTest.java b/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetReturnDisconnectTest.java
index 50e09b8..13aa62f 100644
--- a/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetReturnDisconnectTest.java
+++ b/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetReturnDisconnectTest.java
@@ -75,7 +75,7 @@
     protected FtpServerFactory createServer() throws Exception {
         FtpServerFactory server = super.createServer();
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("f1", new MockFtplet());
         server.setFtplets(ftplets);
         
diff --git a/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetReturnSkipTest.java b/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetReturnSkipTest.java
index de3a3ca..9b0f914 100644
--- a/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetReturnSkipTest.java
+++ b/core/src/test/java/org/apache/ftpserver/ftpletcontainer/FtpLetReturnSkipTest.java
@@ -76,7 +76,7 @@
     protected FtpServerFactory createServer() throws Exception {
         FtpServerFactory server = super.createServer();
 
-        Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
+        Map<String, Ftplet> ftplets = new LinkedHashMap<>();
         ftplets.put("f1", new MockFtplet());
         server.setFtplets(ftplets);
 
diff --git a/core/src/test/java/org/apache/ftpserver/impl/PassivePortsTest.java b/core/src/test/java/org/apache/ftpserver/impl/PassivePortsTest.java
index 8b75d70..4f514be 100644
--- a/core/src/test/java/org/apache/ftpserver/impl/PassivePortsTest.java
+++ b/core/src/test/java/org/apache/ftpserver/impl/PassivePortsTest.java
@@ -97,7 +97,7 @@
     }
     
     private List<Integer> valid(int... ints) {
-        List<Integer> valid = new ArrayList<Integer>();
+        List<Integer> valid = new ArrayList<>();
         for(int i : ints) {
             valid.add(i);
         }
diff --git a/core/src/test/java/org/apache/ftpserver/test/TestUtil.java b/core/src/test/java/org/apache/ftpserver/test/TestUtil.java
index 92483c3..9723c08 100644
--- a/core/src/test/java/org/apache/ftpserver/test/TestUtil.java
+++ b/core/src/test/java/org/apache/ftpserver/test/TestUtil.java
@@ -127,7 +127,7 @@
         Enumeration<NetworkInterface> nifs = NetworkInterface
                 .getNetworkInterfaces();
 
-        List<String> hostIps = new ArrayList<String>();
+        List<String> hostIps = new ArrayList<>();
         while (nifs.hasMoreElements()) {
             NetworkInterface nif = nifs.nextElement();
             Enumeration<InetAddress> ips = nif.getInetAddresses();
diff --git a/core/src/test/java/org/apache/ftpserver/usermanager/impl/BaseUserTest.java b/core/src/test/java/org/apache/ftpserver/usermanager/impl/BaseUserTest.java
index c095877..84ba289 100644
--- a/core/src/test/java/org/apache/ftpserver/usermanager/impl/BaseUserTest.java
+++ b/core/src/test/java/org/apache/ftpserver/usermanager/impl/BaseUserTest.java
@@ -70,7 +70,7 @@
     private BaseUser user = new BaseUser();
 
     public void testAllow() {
-        List<Authority> authorities = new ArrayList<Authority>();
+        List<Authority> authorities = new ArrayList<>();
         authorities.add(ALWAYS_ALLOW_AUTHORITY);
 
         user.setAuthorities(authorities);
@@ -79,7 +79,7 @@
     }
 
     public void testDisallow() {
-        List<Authority> authorities = new ArrayList<Authority>();
+        List<Authority> authorities = new ArrayList<>();
         authorities.add(NEVER_ALLOW_AUTHORITY);
 
         user.setAuthorities(authorities);
@@ -88,7 +88,7 @@
     }
 
     public void testMultipleDisallowLast() {
-        List<Authority> authorities = new ArrayList<Authority>();
+        List<Authority> authorities = new ArrayList<>();
         authorities.add(ALWAYS_ALLOW_AUTHORITY);
         authorities.add(NEVER_ALLOW_AUTHORITY);
         
@@ -98,7 +98,7 @@
     }
 
     public void testMultipleAllowLast() {
-        List<Authority> authorities = new ArrayList<Authority>();
+        List<Authority> authorities = new ArrayList<>();
         authorities.add(NEVER_ALLOW_AUTHORITY);
         authorities.add(ALWAYS_ALLOW_AUTHORITY);
 
@@ -108,7 +108,7 @@
     }
 
     public void testNonCanAuthorize() {
-        List<Authority> authorities = new ArrayList<Authority>();
+        List<Authority> authorities = new ArrayList<>();
         authorities.add(CANT_AUTHORITY);
 
         user.setAuthorities(authorities);
diff --git a/core/src/test/java/org/apache/ftpserver/usermanager/impl/UserManagerTestTemplate.java b/core/src/test/java/org/apache/ftpserver/usermanager/impl/UserManagerTestTemplate.java
index e029740..3e3392a 100644
--- a/core/src/test/java/org/apache/ftpserver/usermanager/impl/UserManagerTestTemplate.java
+++ b/core/src/test/java/org/apache/ftpserver/usermanager/impl/UserManagerTestTemplate.java
@@ -234,7 +234,7 @@
         user.setEnabled(false);
         user.setMaxIdleTime(2);
 
-        List<Authority> authorities = new ArrayList<Authority>();
+        List<Authority> authorities = new ArrayList<>();
         authorities.add(new WritePermission());
         authorities.add(new ConcurrentLoginPermission(3, 4));
         authorities.add(new TransferRatePermission(1, 5));
@@ -300,7 +300,7 @@
         user.setEnabled(false);
         user.setMaxIdleTime(2);
 
-        List<Authority> authorities = new ArrayList<Authority>();
+        List<Authority> authorities = new ArrayList<>();
         authorities.add(new WritePermission());
         authorities.add(new ConcurrentLoginPermission(3, 4));
         authorities.add(new TransferRatePermission(1, 5));
diff --git a/core/src/test/java/org/apache/ftpserver/usermanager/impl/VolatilePropertiesUserManagerTest.java b/core/src/test/java/org/apache/ftpserver/usermanager/impl/VolatilePropertiesUserManagerTest.java
index 5d45abd..5e53421 100644
--- a/core/src/test/java/org/apache/ftpserver/usermanager/impl/VolatilePropertiesUserManagerTest.java
+++ b/core/src/test/java/org/apache/ftpserver/usermanager/impl/VolatilePropertiesUserManagerTest.java
@@ -64,7 +64,7 @@
         user2.setEnabled(false);
         user2.setMaxIdleTime(2);
         
-        List<Authority> authorities = new ArrayList<Authority>();
+        List<Authority> authorities = new ArrayList<>();
         authorities.add(new WritePermission());
         authorities.add(new TransferRatePermission(1, 5));
         authorities.add(new ConcurrentLoginPermission(3, 4));