[LIB-13] Locale resource settings
[chesshog-scanner.git] / src / main / java / org / hedgecode / chess / scanner / ChessHogScanner.java
index 91a05c8..87037de 100644 (file)
@@ -25,6 +25,7 @@ import java.util.Set;
 
 import org.hedgecode.chess.scanner.entity.PGNGame;
 import org.hedgecode.chess.scanner.portal.Chess24Scanner;
+import org.hedgecode.chess.scanner.portal.Chess2700Scanner;
 import org.hedgecode.chess.scanner.portal.ChessBombScanner;
 import org.hedgecode.chess.scanner.portal.ChessComScanner;
 import org.hedgecode.chess.scanner.portal.ChessGamesScanner;
@@ -46,6 +47,7 @@ public final class ChessHogScanner {
             put( ScannerType.CHESSBOMB,  new ChessBombScanner()  );
             put( ScannerType.CHESS24,    new Chess24Scanner()    );
             put( ScannerType.CHESSCOM,   new ChessComScanner()   );
+            put( ScannerType.CHESS2700,  new Chess2700Scanner()  );
         }
     };
 
@@ -66,21 +68,21 @@ public final class ChessHogScanner {
      *
      * @param url URL string for scan.
      * @return PGN game.
-     * @throws ChessHogScannerException Incorrect URL or unknown chess portal.
+     * @throws ScannerException Incorrect URL or unknown chess portal.
      */
-    public static PGNGame scan(String url) throws ChessHogScannerException {
+    public static PGNGame scan(String url) throws ScannerException {
         String hostName;
         try {
             hostName = new URL(url).getHost();
         } catch (MalformedURLException cause) {
-            throw new ChessHogScannerException(
-                    String.format("Incorrect  URL: %s", url), cause
+            throw new ScannerException(
+                    "scanner.incorrect.url", cause, url
             );
         }
         ScannerType type = ScannerType.byHost(hostName);
         if (type == null) {
-            throw new ChessHogScannerException(
-                    String.format("Host %s is not among the known for the scanner", hostName)
+            throw new ScannerException(
+                    "scanner.host.unknown", hostName
             );
         }
         return scanner(type).scanUrl(url);
@@ -100,7 +102,7 @@ public final class ChessHogScanner {
                 initiableScanner.init();
             }
             initScanners.add(type);
-        } catch (ChessHogScannerException e) {
+        } catch (ScannerException e) {
             throw new RuntimeException(e);
         }
     }
@@ -114,7 +116,7 @@ public final class ChessHogScanner {
     }
 
     private ChessHogScanner() {
-        if (!ChessHogScannerProperties.is("scanner.lazy.init")) {
+        if (!ScannerProperties.is("scanner.lazy.init")) {
             init();
         }
     }