question: public Map read ( SSOToken token , String objName ) throws SMSException , SSOException { if ( objName == null || objName . length ( ) == 0 ) { throw new IllegalArgumentException ( "SMSEnhancedFlatFileObject.read: object name is null or empty." ) ; } Map attrMap = null ; mRWLock . readRequest ( ) ; try { String filepath = root . getAttributeFilename ( objName , mRootDir ) ; if ( filepath == null ) { if ( mDebug . messageEnabled ( ) ) { mDebug . message ( "SMSEnhancedFlatFileObject.read: object " + objName + " not found." ) ; } } else { attrMap = Collections . EMPTY_MAP ; File filehandle = new File ( filepath ) ; Properties props = null ; if ( filehandle . exists ( ) ) { try { props = loadProperties ( filehandle , objName ) ; } catch ( ServiceNotFoundException e ) { } } if ( props != null ) { attrMap = new CaseInsensitiveHashMap ( ) ; Enumeration keys = props . propertyNames ( ) ; while ( keys . hasMoreElements ( ) ) { String key = ( String ) keys . nextElement ( ) ; String vals = props . getProperty ( key ) ; if ( ( vals != null ) && ( vals . length ( ) > 0 ) ) { attrMap . put ( key , toValSet ( key , vals ) ) ; } } } } } finally { mRWLock . readDone ( ) ; } return attrMap ; }
target:  Reads in attributes of a configuration object.