_secretDESKey = null;
    private static Key secretDESKey() {        _secretDESKey = null;        if(_secretDESKey == null){            InputStream is = null;            if(_secretKeyPath != null) {                try {                    is = new FileInputStream(new File(_secretKeyPath));                } catch (FileNotFoundException e) {                    log.warn("Couldn't recover Secret key file, generating new");                    try {                        KeyGenerator gen = KeyGenerator.getInstance("DES");                        gen.init(new SecureRandom());                        _secretDESKey = gen.generateKey();                        ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(new File(_secretKeyPath)));                        out.writeObject(_secretDESKey);                        out.close();                        is = new FileInputStream(new File(_secretKeyPath));                    } catch (java.security.NoSuchAlgorithmException ex) {                        throw new NSForwardException(ex, "Couldn't find the DES algorithm; perhaps you do not have the SunJCE security provider installed properly?");                    } catch (Exception ex) {                        throw NSForwardException._runtimeExceptionForThrowable(ex);                    }                }            } else {                String fn = "SecretKey.ser";                is = ERXFileUtilities.inputStreamForResourceNamed(fn, _secretKeyPathFramework, null);            }            if(is != null) {                log.debug("About to try to recover key");                                try {                    ObjectInputStream in = new ObjectInputStream(is);                    _secretDESKey = (Key)in.readObject();                    in.close();                } catch(Exception e) {                    throw NSForwardException._runtimeExceptionForThrowable(e);                }            } else {                throw new RuntimeException("No secret key found. You should add a 'Secret.ser' file into your app's resources or use setSecretKeyPath(String aPath)");            }        }        return _secretDESKey;    }