public final class NamedOperation extends Object implements Operation
new NamedOperation(StandardOperation.GET_PROPERTY, "color")
will be a named operation for getting the property named "color" on the
object it is applied to, and
new NamedOperation(StandardOperation.GET_ELEMENT, 3) will be a named
operation for getting the element at index 3 from the collection it is
applied to. In these cases, the expected signature of the call site for the
operation will change to no longer include the name parameter. Specifically,
the documentation for all StandardOperation members describes how
they are affected by being incorporated into a named operation.| Constructor and Description |
|---|
NamedOperation(Operation baseOperation,
Object name)
Creates a new named operation.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object obj)
Compares this named operation to another object.
|
Operation |
getBaseOperation()
Returns the base operation of this named operation.
|
static Operation |
getBaseOperation(Operation op)
If the passed operation is a named operation, returns its
getBaseOperation(), otherwise returns the operation as is. |
Object |
getName()
Returns the name of this named operation.
|
static Object |
getName(Operation op)
If the passed operation is a named operation, returns its
getName(), otherwise returns null. |
int |
hashCode()
Returns the hash code of this named operation.
|
String |
toString()
Returns the string representation of this named operation.
|
public NamedOperation(Operation baseOperation, Object name)
baseOperation - the base operation that is associated with a name.name - the name associated with the base operation. Note that the
name is not necessarily a string, but can be an arbitrary object. As the
name is used for addressing, it can be an Integer when meant
to be used as an index into an array or list etc.NullPointerException - if either baseOperation or
name is null.IllegalArgumentException - if baseOperation is itself a
NamedOperation.public Operation getBaseOperation()
public Object getName()
public boolean equals(Object obj)
equals in class Objectobj - the reference object with which to compare.true if this object is the same as the obj
argument; false otherwise.Object.hashCode(),
HashMappublic int hashCode()
baseOperation.hashCode() + 31 * name.hashCode().hashCode in class ObjectObject.equals(java.lang.Object),
System.identityHashCode(java.lang.Object)public String toString()
baseOperation.toString() + ":" + name.toString().public static Operation getBaseOperation(Operation op)
getBaseOperation(), otherwise returns the operation as is.op - the operationpublic static Object getName(Operation op)
getName(), otherwise returns null. Note that a named operation
object can never have a null name, therefore returning null is indicative
that the passed operation is not, in fact, a named operation.op - the operation
Copyright © 2015, 2016, Oracle and/or its affiliates. All rights reserved.
DRAFT 9-internal+0-2016-04-14-195246.buildd.src