<commit_before>/*
 * Copyright(c) 2010-2013 Heliosphere Ltd.
 * ---------------------------------------------------------------------------
 * This file is part of the Drake project which is licensed under the Apache
 * license version 2 and use is subject to license terms. You should have
 * received a copy of the license with the project artifact binaries and/or
 * sources.
 * 
 * License can be consulted at http://www.apache.org/licenses/LICENSE-2.0
 * ---------------------------------------------------------------------------
 */
package com.heliosphere.athena.base.command.protocol;

import com.heliosphere.athena.base.command.internal.protocol.ICommandCodeType;
import com.heliosphere.athena.base.exception.InvalidArgumentException;
import com.heliosphere.athena.base.resource.bundle.BundleAthenaBase;
import com.heliosphere.athena.base.resource.bundle.ResourceBundleManager;

/**
 * Enumeration defining a set of basic command code types.
 * <p>
 * <b>Note:</b><br>
 * You should not use this protocol directly (except for testing purpose) but you should define your(s) according to your needs.
 * <hr>
 * @author <a href="mailto:<EMAIL>"><NAME></a>
 * @version 1.0.0
 */
public enum DefaultCommandCodeType implements ICommandCodeType
{
	/**
	 * Special default command.
	 */
	DISPLAY_TERMINAL,

	/**
	 * AFK command.
	 */
	AFK,

	/**
	 * WHO command.
	 */
	WHO,

	/**
	 * Command: {@code register user}.
	 */
	REGISTER_USER,

	/**
	 * Quit command used to terminate the client application abruptly.
	 */
	QUIT;

	/**
	 * Creates an command code enumerated value from a given string value.
	 * <p>
	 * <b>Example:</b><p> 
	 * <code>CommandCodeType.fromString("Quit");</code>
	 * <hr>
	 * @param value String representing the enumerated value.<commit_msg>Added the help' command to the protocol.<commit_after>/*
 * Copyright(c) 2010-2013 Heliosphere Ltd.
 * ---------------------------------------------------------------------------
 * This file is part of the Drake project which is licensed under the Apache
 * license version 2 and use is subject to license terms. You should have
 * received a copy of the license with the project artifact binaries and/or
 * sources.
 * 
 * License can be consulted at http://www.apache.org/licenses/LICENSE-2.0
 * ---------------------------------------------------------------------------
 */
package com.heliosphere.athena.base.command.protocol;

import com.heliosphere.athena.base.command.internal.protocol.ICommandCodeType;
import com.heliosphere.athena.base.exception.InvalidArgumentException;
import com.heliosphere.athena.base.resource.bundle.BundleAthenaBase;
import com.heliosphere.athena.base.resource.bundle.ResourceBundleManager;

/**
 * Enumeration defining a set of basic command code types.
 * <p>
 * <b>Note:</b><br>
 * You should not use this protocol directly (except for testing purpose) but you should define your(s) according to your needs.
 * <hr>
 * @author <a href="mailto:<EMAIL>"><NAME></a>
 * @version 1.0.0
 */
public enum DefaultCommandCodeType implements ICommandCodeType
{
	/**
	 * Special default command.
	 */
	DISPLAY_TERMINAL,

	/**
	 * AFK command.
	 */
	AFK,

	/**
	 * Help command.
	 */
	HELP,

	/**
	 * Who command.
	 */
	WHO,

	/**
	 * Command: {@code register user}.
	 */
	REGISTER_USER,

	/**
	 * Quit command used to terminate the client application abruptly.
	 */
	QUIT;

	/**
	 * Creates an command code enumerated value from a given string value.
	 * <p>
	 * <b>Example:</b><p> 
	 * <code>CommandCodeType.fromString("Quit");</code>
	 * <hr>
	 * @param value String representing the enumerated value.
{'fraction_non_alphanumeric': 0.19349457881567975, 'fraction_numerical': 0.00778426466499861, 'mean_word_length': 2.612449799196787, 'pattern_counts': {'":': 0, '<': 35, '<?xml version=': 0, '>': 35, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1700144', 'n_tokens_mistral': 1094, 'n_tokens_neox': 997, 'n_words': 308}