Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.net4j/src/org/eclipse/net4j/buffer/IBufferProvider.java')
-rw-r--r--plugins/org.eclipse.net4j/src/org/eclipse/net4j/buffer/IBufferProvider.java42
1 files changed, 41 insertions, 1 deletions
diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/buffer/IBufferProvider.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/buffer/IBufferProvider.java
index 2c2c0565ec..07875eec8c 100644
--- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/buffer/IBufferProvider.java
+++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/buffer/IBufferProvider.java
@@ -10,6 +10,9 @@
*/
package org.eclipse.net4j.buffer;
+import org.eclipse.net4j.util.event.IEvent;
+import org.eclipse.net4j.util.event.INotifier;
+
/**
* Provides clients with the ability to obtain and retain {@link IBuffer}s.
*
@@ -33,7 +36,7 @@ public interface IBufferProvider
public void retainBuffer(IBuffer buffer);
/**
- * Offers additional introspection features for {@link IBufferProvider}s.
+ * Offers additional introspection features for {@link IBufferProvider buffer providers}.
*
* @author Eike Stepper
*/
@@ -49,4 +52,41 @@ public interface IBufferProvider
*/
public long getRetainedBuffers();
}
+
+ /**
+ * Offers additional notification features for {@link IBufferProvider buffer providers}.
+ *
+ * @author Eike Stepper
+ * @since 4.6
+ */
+ public interface Notification extends IBufferProvider, INotifier
+ {
+ /**
+ * An {@link IEvent event} fired from a {@link IBufferProvider buffer provider} to indicate that a buffer has been provided.
+ *
+ * @author Eike Stepper
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+ public interface BufferProvidedEvent extends IEvent
+ {
+ public IBufferProvider.Notification getSource();
+
+ public IBuffer getBuffer();
+ }
+
+ /**
+ * An {@link IEvent event} fired from a {@link IBufferProvider buffer provider} to indicate that a buffer is about to be retained.
+ *
+ * @author Eike Stepper
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+ public interface BufferRetainingEvent extends IEvent
+ {
+ public IBufferProvider.Notification getSource();
+
+ public IBuffer getBuffer();
+ }
+ }
}

Back to the top