Package org.eclipse.mat.query.registry
Class QueryContextImpl
java.lang.Object
org.eclipse.mat.query.registry.QueryContextImpl
- All Implemented Interfaces:
IQueryContext
- Direct Known Subclasses:
ProviderContextImpl
,SnapshotQueryContext
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
available
(Class<?> type, Argument.Advice advice) Is this type of data available from the context?boolean
converts
(Class<?> type, Argument.Advice advice) Does the context have a converter for data of this type?convertToString
(Class<?> type, Argument.Advice advice, Object value) Convert the value to a string.convertToValue
(Class<?> type, Argument.Advice advice, String value) Convert the String to the value based on the type and advice.get
(Class<?> type, Argument.Advice advice) Get this type of data from the context.Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.eclipse.mat.query.IQueryContext
getContextDerivedData, getPrefix, getPrimaryFile, mapToExternalIdentifier, mapToObjectId, parse, parses
-
Constructor Details
-
QueryContextImpl
public QueryContextImpl()
-
-
Method Details
-
available
Description copied from interface:IQueryContext
Is this type of data available from the context?- Specified by:
available
in interfaceIQueryContext
- Parameters:
type
- the type the data should be converted toadvice
- advice such as from the query as to how the value should be converted.- Returns:
- true if available.
-
get
Description copied from interface:IQueryContext
Get this type of data from the context.- Specified by:
get
in interfaceIQueryContext
- Parameters:
type
- the type the data should be converted toadvice
- advice such as from the query as to how the value should be converted.- Returns:
- the object of the right type
-
converts
Description copied from interface:IQueryContext
Does the context have a converter for data of this type?- Specified by:
converts
in interfaceIQueryContext
- Parameters:
type
- The Java type of an argument to be supplied with data from this context.advice
- Further details about the argument to be supplied with data.- Returns:
- true if available and convertible
-
convertToString
public String convertToString(Class<?> type, Argument.Advice advice, Object value) throws SnapshotException Description copied from interface:IQueryContext
Convert the value to a string. For example the converter might be String.valueOf(Integer)- Specified by:
convertToString
in interfaceIQueryContext
- Parameters:
type
- The Java type of the argument.advice
- Further details about the argument.value
- The value of the argument held in the context.- Returns:
- the value converted to a String
- Throws:
SnapshotException
- If there is a problem with the conversion such as the value is not a valid object ID.
-
convertToValue
public Object convertToValue(Class<?> type, Argument.Advice advice, String value) throws SnapshotException Description copied from interface:IQueryContext
Convert the String to the value based on the type and advice.- Specified by:
convertToValue
in interfaceIQueryContext
- Parameters:
type
- The Java type of the argumentadvice
- Further details about the argument.value
- The readable string value- Returns:
- the String converted to a value suitable to be stored in the argument.
- Throws:
SnapshotException
- if there is a problem with the conversion, such as an unknown object address.
-