net.jqhome.jwps.ea.standard
Class LongnameEA

java.lang.Object
  |
  +--net.jqhome.jwps.ea.AbstractEA
        |
        +--net.jqhome.jwps.ea.StringEA
              |
              +--net.jqhome.jwps.ea.standard.LongnameEA

public class LongnameEA
extends StringEA

This is supplied by the system as a standard EA but is supposed to be managed by the user. OS/2 supports many different file systems, some of which do not have longname support. Therefore, the way this is supposed to work is the following.

– if the system permits long names, don't use this.

– otherwise, when the user requests to save a file using a name unsupported by the file system, generate a compliant name, save the user's requested name in this EA.

– if the user ever saves this in a file system that supports long names, use this EA then delete the EA.

Note that the system does indeed use this!! Whenever you open a folder on the desktop, this EA is what si displayed for the name, regardless of the underlying real name. OS/2 does not rename files automatically, so this can cause some confusion, since you can have this EA on a file (possibly left over from some operation where an application did not delete it) then rename the file from the command line. The displayed name does not change, but the real filename did.

Finally, if you do rename a file in its settings notebook, OS/2 will set the name to match the title if possible, removing this EA in the process.


Field Summary
 
Fields inherited from class net.jqhome.jwps.ea.AbstractEA
EA_NAME_ASSOCIATION_TABLE, EA_NAME_CODEPAGE, EA_NAME_COMMENTS, EA_NAME_HISTORY, EA_NAME_ICON, EA_NAME_ICON1, EA_NAME_KEYPHRASES, EA_NAME_LONGNAME, EA_NAME_SUBJECT, EA_NAME_TYPE, EA_NAME_VERSION, XML_EA_B64_ENCODING, XML_EA_CODEPAGE_TAGNAME, XML_EA_ENCODING_TYPE_TAGNAME, XML_EA_FILE_TAGNAME, XML_EA_IS_CRITICAL_TAGNAME, XML_EA_LIST_TAGNAME, XML_EA_NAME_TAGNAME, XML_EA_TAGNAME, XML_EA_TEXT_ENCODING, XML_EA_TYPE_TAGNAME, XML_EA_VALUE_TAGNAME
 
Constructor Summary
LongnameEA()
           
LongnameEA(RawEA rEA)
           
LongnameEA(java.lang.String value)
           
 
Method Summary
 boolean isCritical()
          Returns if this EA is marked as critical.
 void setCritical(boolean value)
           
 
Methods inherited from class net.jqhome.jwps.ea.StringEA
equals, fromRawEA, getRawEASize, getValue, setValue, setValue, setValue, toRawEA, toString, toXML, valueSize
 
Methods inherited from class net.jqhome.jwps.ea.AbstractEA
fileToBytes, getName, getType, isUserDefined, setName, setType
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LongnameEA

public LongnameEA()
           throws JWPException

LongnameEA

public LongnameEA(java.lang.String value)
           throws JWPException

LongnameEA

public LongnameEA(RawEA rEA)
           throws JWPException
Method Detail

isCritical

public boolean isCritical()
Description copied from class: AbstractEA
Returns if this EA is marked as critical. Note that critical here means that the applications that use this EA will not be able to function without it. Yes, you can edit or delete them as you like. All that this means is that some application needs it. The honor system is in effect to leave other applications EAs alone especially if they are critical.

Overrides:
isCritical in class AbstractEA

setCritical

public void setCritical(boolean value)
                 throws JWPException
Overrides:
setCritical in class AbstractEA
Throws:
JWPException - if an attempt is made to set the value to anything but false since this EA is not critical.