<?php

namespace patest\EnumType;

use \WsdlToPhp\PackageBase\AbstractStructEnumBase;

/**
 * This class stands for LayerApplyAction EnumType
 * Meta information extracted from the WSDL
 * - nillable: true
 * - type: tns:LayerApplyAction
 * @subpackage Enumerations
 */
class LayerApplyAction extends AbstractStructEnumBase
{
    /**
     * Constant for value 'ReplaceAll'
     * @return string 'ReplaceAll'
     */
    const VALUE_REPLACE_ALL = 'ReplaceAll';
    /**
     * Constant for value 'ApplySelected'
     * @return string 'ApplySelected'
     */
    const VALUE_APPLY_SELECTED = 'ApplySelected';
    /**
     * Constant for value 'RemoveSelected'
     * @return string 'RemoveSelected'
     */
    const VALUE_REMOVE_SELECTED = 'RemoveSelected';
    /**
     * Constant for value 'ReplaceAllocations'
     * @return string 'ReplaceAllocations'
     */
    const VALUE_REPLACE_ALLOCATIONS = 'ReplaceAllocations';
    /**
     * Constant for value 'ReplaceLocks'
     * @return string 'ReplaceLocks'
     */
    const VALUE_REPLACE_LOCKS = 'ReplaceLocks';
    /**
     * Return allowed values
     * @uses self::VALUE_REPLACE_ALL
     * @uses self::VALUE_APPLY_SELECTED
     * @uses self::VALUE_REMOVE_SELECTED
     * @uses self::VALUE_REPLACE_ALLOCATIONS
     * @uses self::VALUE_REPLACE_LOCKS
     * @return string[]
     */
    public static function getValidValues()
    {
        return array(
            self::VALUE_REPLACE_ALL,
            self::VALUE_APPLY_SELECTED,
            self::VALUE_REMOVE_SELECTED,
            self::VALUE_REPLACE_ALLOCATIONS,
            self::VALUE_REPLACE_LOCKS,
        );
    }
}
