001    package jmaster.jumploader.model.api.common;
002    
003    /**
004     * IAttributeSet
005     * 
006     * @author timur
007     */
008    
009    public interface IAttributeSet {
010            //---------------------------------------------------------------
011            //      constants
012            //---------------------------------------------------------------
013            
014            //---------------------------------------------------------------
015            //      business methods
016            //---------------------------------------------------------------
017            /**
018             * attribute count retrieval
019             */
020            public int getAttributeCount();
021            /**
022             * attribute retrieval by index
023             */
024            public IAttribute getAttributeAt( int index );
025            /**
026             * attribute retrieval by name
027             */
028            public IAttribute getAttributeByName( String name );
029            /**
030             * attribute create
031             */
032            public IAttribute createAttribute( String name, Object value );
033            /**
034             * set attribute
035             */
036            public IAttribute setAttribute( String name, Object value );
037            /**
038             * string attribute create
039             */
040            public IAttribute createStringAttribute( String name, String value );
041            /**
042             * set string attribute
043             */
044            public IAttribute setStringAttribute( String name, String value );
045            /**
046             * attribute remove
047             */
048            public void removeAttribute( IAttribute attribute );
049            /**
050             * clear
051             */
052            public void clear();
053    }