/*
 * Copyright 2010 DTO Labs, Inc. (http://dtolabs.com)
 *
 *  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.
 */

/*
* INodeDetail.java
* 
* User: greg
* Created: Mar 31, 2008 4:51:51 PM
* $Id$
*/
package com.dtolabs.rundeck.core.common;

import java.util.Set;
import java.util.Map;


/**
 * INodeEntry describes a node found in nodes.properties
 *
 * @author Greg Schueler <a href="mailto:greg@dtosolutions.com">greg@dtosolutions.com</a>
 * @version $Revision$
 */
public interface INodeEntry extends INodeBase, INodeDesc {
    public String getOsFamily();
    public String getOsArch();
    public String getOsVersion();
    public String getOsName();
    public String getNodename();
    public String getUsername();
    public boolean containsUserName();
    public boolean containsPort();
    public String extractUserName();
    public String extractHostname();
    public String extractPort();
    public String getFrameworkProject();
    public String getDescription();

    public Set getTags();

    /**
     * Get the map of attributes for the node.
     * @return attributes
     */
    public Map<String, String> getAttributes();

}

@@ -832,33 +832,18 @@
 ode 
-found in nodes.properties
+definition
 %0A *%0A
@@ -936,31 +936,8 @@
 /a%3E%0A
- * @version $Revision$%0A
  */%0A
@@ -1003,539 +1003,1768 @@
     
-public String getOsFamily();%0A    public String getOsArch();%0A    public String getOsVersion();%0A    public String getOsName();%0A    public String getNodename();%0A    public String getUsername();%0A    public boolean containsUserName();%0A    public boolean containsPort();%0A    public String extractUserName();%0A    public String extractHostname();%0A    public String extractPort();%0A    public String getFrameworkProject();%0A    public String getDescription();%0A%0A    public Set getTags();%0A%0A    /**%0A     * Get the map of attributes for the node.
+/**%0A     * Return the OS family%0A     */%0A    public String getOsFamily();%0A%0A    /**%0A     * Return the OS architecture%0A     */%0A    public String getOsArch();%0A%0A    /**%0A     * Return the OS version%0A     */%0A    public String getOsVersion();%0A%0A    /**%0A     * Return the OS name%0A     */%0A    public String getOsName();%0A%0A    /**%0A     * Return the name of the node%0A     */%0A    public String getNodename();%0A%0A    /**%0A     * Return the username%0A     */%0A    public String getUsername();%0A%0A    /**%0A     * Return true if the hostname string includes embedded username in the %22username@hostname%22 pattern%0A     */%0A    public boolean containsUserName();%0A%0A    /**%0A     * Return true if the hostname string includes embedded port in the %22hostname:port%22 pattern%0A     */%0A    public boolean containsPort();%0A%0A    /**%0A     * Return the username extracted from the hostname%0A     */%0A    public String extractUserName();%0A%0A    /**%0A     * Return the standalone hostname value extracted from the hostname string%0A     */%0A    public String extractHostname();%0A%0A    /**%0A     * Return the port string extracted from the hostname%0A     */%0A    public String extractPort();%0A%0A    /**%0A     * Return the project name if it is set%0A     */%0A    public String getFrameworkProject();%0A%0A    /**%0A     * Return the description%0A     */%0A    public String getDescription();%0A%0A    /**%0A     * Return the set of tag strings%0A     */%0A    public Set getTags();%0A%0A    /**%0A     * Get the map of attributes for the node, which includes all of the attributes for these accessors as well:%0A     * %3Cp/%3E%0A     * osFamily, osArch, osVersion, osName, name*, username, description, tags*.%0A     * %3Cp/%3E%0A     * The Node name is returned as under the key %22name%22.%0A     * %3Cp/%3E%0A     * The tags are returned as a String under the key %22tags%22.%0A     *
 %0A   

Update javadoc for the INodeEntry interface