Class TemporaryMemoryDeployment

java.lang.Object
com.developer.nefarious.zjoule.plugin.login.memory.TemporaryMemoryDeployment
All Implemented Interfaces:
ITemporaryMemoryObject, IMemoryObject<Deployment>

public class TemporaryMemoryDeployment extends Object implements IMemoryObject<Deployment>, ITemporaryMemoryObject
Manages temporary storage and retrieval of deployment information during the login process.

The TemporaryMemoryDeployment class provides methods to save, load, and persist temporary deployment data using Eclipse preferences. It implements IMemoryObject<Deployment> and ITemporaryMemoryObject.

  • Field Details

    • KEY

      public static final String KEY
      Key used for storing and retrieving the temporary deployment in Eclipse preferences.
      See Also:
  • Method Details

    • getInstance

      public static TemporaryMemoryDeployment getInstance()
      Retrieves the singleton instance of TemporaryMemoryDeployment.
      Returns:
      the singleton instance.
      Throws:
      IllegalStateException - if the instance has not been initialized.
    • initialize

      public static void initialize(IObjectSerializer objectSerializer, IEclipseMemory eclipseMemory)
      Initializes the TemporaryMemoryDeployment singleton with the specified dependencies.
      Parameters:
      objectSerializer - the serializer for handling object serialization and deserialization.
      eclipseMemory - the manager for Eclipse preferences storage.
    • resetInstance

      public static void resetInstance()
      Resets the singleton instance. Useful for testing or reinitialization.
    • isEmpty

      public Boolean isEmpty()
      Checks if the stored data is empty or invalid.
      Specified by:
      isEmpty in interface IMemoryObject<Deployment>
      Returns:
      true if the stored data is empty or invalid; false otherwise.
    • load

      public Deployment load()
      Loads the data from memory.
      Specified by:
      load in interface IMemoryObject<Deployment>
      Returns:
      the stored object of type T, or null if no data is found or loading fails.
    • persist

      public void persist()
      Persists the temporary memory object to permanent storage.
      Specified by:
      persist in interface ITemporaryMemoryObject
    • save

      public void save(Deployment deployment)
      Saves the given data to memory.
      Specified by:
      save in interface IMemoryObject<Deployment>
      Parameters:
      deployment - the object of type T to save.