CrackAttributes Method
Class: FTP_SERVICE
Description:Converting file's attributes to human's format
Internal method for converting file's attributes to human's format.
Object.CrackAttributes
Parameter
lcBuffer
Type Character
Direction Input
Example
See source code of method FTP_SERVICE::CrackFile()
See also
Expand/Collapse source code of procedure CrackAttributes Source Code
      LPARAMETERS INP lcBuffer
      LOCAL lcAttributes, lnValue
      lcAttributes = ''
                      
      lnValue = (ASC(SUBSTR(m.lcBuffer, 1, 1)) * BYTE_1) + ;
                (ASC(SUBSTR(m.lcBuffer, 2, 1)) * BYTE_2) + ;
                (ASC(SUBSTR(m.lcBuffer, 3, 1)) * BYTE_3) + ;
                (ASC(SUBSTR(m.lcBuffer, 4, 1)) * BYTE_4) 
                      
      DO CASE
         CASE BITTEST(m.lnValue, BIT_ATTRIBUTE_READONLY) 
              lcAttributes = m.lcAttributes + 'R'

         CASE BITTEST(m.lnValue, BIT_ATTRIBUTE_HIDDEN) 
              lcAttributes = m.lcAttributes + 'H'

         CASE BITTEST(m.lnValue, BIT_ATTRIBUTE_SYSTEM) 
              lcAttributes = m.lcAttributes + 'S'

         CASE BITTEST(m.lnValue, BIT_ATTRIBUTE_DIRECTORY) 
              lcAttributes = m.lcAttributes + 'D'

         CASE BITTEST(m.lnValue, BIT_ATTRIBUTE_ARCHIVE) 
              lcAttributes = m.lcAttributes + 'A'

         CASE BITTEST(m.lnValue, BIT_ATTRIBUTE_NORMAL) 
              lcAttributes = m.lcAttributes + 'N'

         CASE BITTEST(m.lnValue, BIT_ATTRIBUTE_TEMPORARY) 
              lcAttributes = m.lcAttributes + 'T'

         CASE BITTEST(m.lnValue, BIT_ATTRIBUTE_COMPRESSED) 
              lcAttributes = m.lcAttributes + 'C'
   
         CASE BITTEST(m.lnValue, BIT_ATTRIBUTE_OFFLINE) 
              lcAttributes = m.lcAttributes + 'O'
      ENDCASE

      RETURN m.lcAttributes