+++ /dev/null
-/*
- * Copyright (c) 2019-2020. Developed by Hedgecode.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.hedgecode.chess.scanner.entity;
-
-/**
- * PGNTag
- *
- * @author Dmitry Samoshin aka gotty
- */
-public enum PGNTag {
-
- EVENT ( "Event", true, PGNTag.QUESTION ),
- SITE ( "Site", true, PGNTag.QUESTION ),
- DATE ( "Date", true, PGNTag.QUESTION_DATE ),
- TIME ( "Time", false, PGNTag.QUESTION_TIME ),
- ROUND ( "Round", true, PGNTag.QUESTION ),
- WHITE ( "White", true, PGNTag.QUESTION ),
- BLACK ( "Black", true, PGNTag.QUESTION ),
- WHITE_TITLE ( "WhiteTitle", false, PGNTag.HYPHEN ),
- BLACK_TITLE ( "BlackTitle", false, PGNTag.HYPHEN ),
- WHITE_ELO ( "WhiteElo", false, PGNTag.HYPHEN ),
- BLACK_ELO ( "BlackElo", false, PGNTag.HYPHEN ),
- WHITE_USCF ( "WhiteUSCF", false, PGNTag.HYPHEN ),
- BLACK_USCF ( "BlackUSCF", false, PGNTag.HYPHEN ),
- WHITE_NA ( "WhiteNA", false, PGNTag.HYPHEN ),
- BLACK_NA ( "BlackNA", false, PGNTag.HYPHEN ),
- WHITE_TYPE ( "WhiteType", false, PGNTag.HYPHEN ),
- BLACK_TYPE ( "BlackType", false, PGNTag.HYPHEN ),
- EVENT_DATE ( "EventDate", false, PGNTag.QUESTION_DATE ),
- EVENT_SPONSOR ( "EventSponsor", false, PGNTag.EMPTY ),
- SECTION ( "Section", false, PGNTag.EMPTY ),
- STAGE ( "Stage", false, PGNTag.EMPTY ),
- BOARD ( "Board", false, PGNTag.EMPTY ),
- OPENING ( "Opening", false, PGNTag.EMPTY ),
- VARIATION ( "Variation", false, PGNTag.EMPTY ),
- SUBVARIATION ( "SubVariation", false, PGNTag.EMPTY ),
- ECO ( "ECO", false, PGNTag.EMPTY ),
- NIC ( "NIC", false, PGNTag.EMPTY ),
- UTC_DATE ( "UTCDate", false, PGNTag.QUESTION_DATE ),
- UTC_TIME ( "UTCTime", false, PGNTag.QUESTION_TIME ),
- TIME_CONTROL ( "TimeControl", false, PGNTag.QUESTION ),
- SETUP ( "SetUp", false, PGNTag.ZERO ),
- FEN ( "FEN", false, PGNTag.EMPTY ),
- TERMINATION ( "Termination", false, PGNTag.EMPTY ),
- ANNOTATOR ( "Annotator", false, PGNTag.EMPTY ),
- MODE ( "Mode", false, PGNTag.EMPTY ),
- PLY_COUNT ( "PlyCount", false, PGNTag.EMPTY ),
- RESULT ( "Result", true, PGNTag.NON_RESULT );
-
- public static final String EMPTY = "";
- public static final String HYPHEN = "-";
- public static final String ZERO = "0";
- public static final String QUESTION = "?";
- public static final String QUESTION_DATE = "????.??.??";
- public static final String QUESTION_TIME = "??:??:??";
- public static final String NON_RESULT = "*";
-
- public static final String TAG_FORMAT = "[%s \"%s\"]";
-
- private String tagName;
- private boolean isRequired;
- private String defaultValue;
-
- PGNTag(String name, boolean required, String defValue) {
- tagName = name;
- isRequired = required;
- defaultValue = defValue;
- }
-
- public String getName() {
- return tagName;
- }
-
- public boolean isRequired() {
- return isRequired;
- }
-
- public String defaultValue() {
- return defaultValue;
- }
-
-}