Adds EntityAndAttribute.create(...) Itâs nicer to use than the constructor because you donât need to specify generics and donât get warned about it. However, not everyone is used to such static methods so leaving the constructor as well for ease of discovery.
Deprecates the old supplier() method, which should really have been called create(). Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/83aa2d62 Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/83aa2d62 Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/83aa2d62 Branch: refs/heads/master Commit: 83aa2d62da59401672940fc5542c9721f1b11ffb Parents: 0ecf677 Author: Aled Sage <[email protected]> Authored: Fri Feb 6 15:07:40 2015 +0000 Committer: Aled Sage <[email protected]> Committed: Fri Feb 6 15:07:40 2015 +0000 ---------------------------------------------------------------------- .../java/brooklyn/entity/basic/EntityAndAttribute.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/83aa2d62/core/src/main/java/brooklyn/entity/basic/EntityAndAttribute.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/brooklyn/entity/basic/EntityAndAttribute.java b/core/src/main/java/brooklyn/entity/basic/EntityAndAttribute.java index 71dd822..a7d5a5a 100644 --- a/core/src/main/java/brooklyn/entity/basic/EntityAndAttribute.java +++ b/core/src/main/java/brooklyn/entity/basic/EntityAndAttribute.java @@ -26,7 +26,7 @@ import com.google.common.base.Objects; import com.google.common.base.Supplier; /** - * A tuple containing an {@link Entity} and an {@link Attribute}, which is assumed to be present on the entity. + * A tuple containing an {@link Entity} and an {@link AttributeSensor}, which is assumed to be present on the entity. * <p> * Allows retrieval of the attribute {@link #getValue() value} or can be used instead where a {@link Supplier} for * the attribute value is required. @@ -36,10 +36,17 @@ public class EntityAndAttribute<T> implements Supplier<T> { private final Entity entity; private final AttributeSensor<T> attribute; - public static <T> EntityAndAttribute<T> supplier(Entity entity, AttributeSensor<T> attribute) { + public static <T> EntityAndAttribute<T> create(Entity entity, AttributeSensor<T> attribute) { return new EntityAndAttribute<T>(entity, attribute); } + /** + * @deprecated since 0.7.0; use {@link #create(Entity, AttributeSensor)}; this does not relate to {@link Supplier} + */ + public static <T> EntityAndAttribute<T> supplier(Entity entity, AttributeSensor<T> attribute) { + return create(entity, attribute); + } + public EntityAndAttribute(Entity entity, AttributeSensor<T> attribute) { this.entity = checkNotNull(entity, "entity"); this.attribute = checkNotNull(attribute, "attribute");
