From 1c8bc7132d980c1ff2dbd6b9af579c3b2fd8c63e Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Sun, 3 Apr 2016 19:22:48 -0400 Subject: General code refactoring and maintenance --- .../src/main/java/bjc/utils/data/lazy/ILazy.java | 35 ++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 BJC-Utils2/src/main/java/bjc/utils/data/lazy/ILazy.java (limited to 'BJC-Utils2/src/main/java/bjc/utils/data/lazy/ILazy.java') diff --git a/BJC-Utils2/src/main/java/bjc/utils/data/lazy/ILazy.java b/BJC-Utils2/src/main/java/bjc/utils/data/lazy/ILazy.java new file mode 100644 index 0000000..a4fab67 --- /dev/null +++ b/BJC-Utils2/src/main/java/bjc/utils/data/lazy/ILazy.java @@ -0,0 +1,35 @@ +package bjc.utils.data.lazy; + +/** + * Interface for some maintenance operations on lazy objects + * + * @author ben + * + */ +public interface ILazy { + /** + * Check if this object has been materialized + * + * @return Whether or not this object has been materialized + */ + public boolean isMaterialized(); + + /** + * Check if there are pending actions that need to be applied + * + * @return Whether or not there are pending actions + */ + public boolean hasPendingActions(); + + /** + * Make this object materialize itelf + */ + public void materialize(); + + /** + * Make this object apply any pending objects + * + * As a requirement, will materialize the object if it is not materialized + */ + public void applyPendingActions(); +} -- cgit v1.2.3