/*
 * The contents of this file are subject to the terms 
 * of the Common Development and Distribution License 
 * (the License).  You may not use this file except in
 * compliance with the License.
 * 
 * You can obtain a copy of the license at 
 * https://glassfish.dev.java.net/public/CDDLv1.0.html or
 * glassfish/bootstrap/legal/CDDLv1.0.txt.
 * See the License for the specific language governing 
 * permissions and limitations under the License.
 * 
 * When distributing Covered Code, include this CDDL 
 * Header Notice in each file and include the License file 
 * at glassfish/bootstrap/legal/CDDLv1.0.txt.  
 * If applicable, add the following below the CDDL Header, 
 * with the fields enclosed by brackets [] replaced by
 * you own identifying information: 
 * "Portions Copyrighted [year] [name of copyright owner]"
 * 
 * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
 */

package com.sun.enterprise.admin.common;

/**
	A class representing the <code> status </code> of an entity.
	@author  Kedar Mhaswade
	@version  1.0
*/

public class EntityStatus extends Status
{
    /* javac 1.3 generated serialVersionUID */
    public static final long serialVersionUID	=  120287380119583589L;

    public static final String kEnabledStr  = "enabled";
    public static final String kDisabledStr = "disabled";

    /**
        Creates new EntityStatus that represents an <code>ENABLED </code> entity.
    */
    public EntityStatus()
    {
        super(Status.kEntityEnabledCode, kEnabledStr);
    }

    /**
     */
    public EntityStatus(int code, String str)
    {
        super(code, str);
    }

    public void setDisabled()
    {
        if (!isDisabled())
        {
            mStatusCode     = Status.kEntityDisabledCode;
            mStatusString   = kDisabledStr;
        }
    }

    /**
     * 
     */
    public void setEnabled()
    {
        if (!isEnabled())
        {
            mStatusCode     = Status.kEntityEnabledCode;
            mStatusString   = kEnabledStr;
        }
    }

    /**
            Returns whether the entity is enabled.

            @return true if the entity is enabled, false otherwise
    */
    public boolean isEnabled ()
    {
        return (mStatusCode == Status.kEntityEnabledCode);
    }

    /**
            Returns whether the entity is disabled.

            @return true if the entity is disabled, false otherwise
    */
    public boolean isDisabled ()
    {
        return (mStatusCode == Status.kEntityDisabledCode);
    }
}