X-Git-Url: https://git.hedgecode.org/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fhedgecode%2Fchess%2Fscanner%2FScannerType.java;h=3b0b4672a19acbc6a7671e8f13a46782f1ebfa08;hb=refs%2Fheads%2Fpgn;hp=f0a6495df8a4eb7d73f43be7f8a3d4f03945e461;hpb=c26e9e6ccd734c44467cb12f3d9087c1df73ceac;p=chesshog-scanner.git diff --git a/src/main/java/org/hedgecode/chess/scanner/ScannerType.java b/src/main/java/org/hedgecode/chess/scanner/ScannerType.java index f0a6495..3b0b467 100644 --- a/src/main/java/org/hedgecode/chess/scanner/ScannerType.java +++ b/src/main/java/org/hedgecode/chess/scanner/ScannerType.java @@ -16,6 +16,8 @@ package org.hedgecode.chess.scanner; +import static org.hedgecode.chess.scanner.ScannerConstants.*; + /** * ScannerType * @@ -23,22 +25,29 @@ package org.hedgecode.chess.scanner; */ public enum ScannerType { - CHESSGAMES (ChessHogScannerConstants.PORTAL_CHESSGAMES), - LICHESS (ChessHogScannerConstants.PORTAL_LICHESS), - CHESSBOMB (ChessHogScannerConstants.PORTAL_CHESSBOMB), - CHESS24 (ChessHogScannerConstants.PORTAL_CHESS24), - CHESSCOM (ChessHogScannerConstants.PORTAL_CHESSCOM); + CHESSGAMES ( TYPE_CHESSGAMES, DOMAIN_CHESSGAMES ), + LICHESS ( TYPE_LICHESS, DOMAIN_LICHESS ), + CHESSBOMB ( TYPE_CHESSBOMB, DOMAIN_CHESSBOMB ), + CHESS24 ( TYPE_CHESS24, DOMAIN_CHESS24 ), + CHESSCOM ( TYPE_CHESSCOM, DOMAIN_CHESSCOM ), + CHESS2700 ( TYPE_2700CHESS, DOMAIN_2700CHESS ); private String type; + private String domain; - ScannerType(String type) { + ScannerType(String type, String domain) { this.type = type; + this.domain = domain; } public String type() { return type; } + public String domain() { + return domain; + } + public static ScannerType byType(String type) { for (ScannerType scannerType : ScannerType.values()) { if (scannerType.type.equals(type)) @@ -47,4 +56,15 @@ public enum ScannerType { return null; } + public static ScannerType byHost(String host) { + if (host != null) { + for (ScannerType scannerType : ScannerType.values()) { + if (StringUtils.belongDomain(scannerType.domain, host)) { + return scannerType; + } + } + } + return null; + } + }