Package org.astrogrid.samp

# Class Metadata

java.lang.Object
java.util.AbstractMap
org.astrogrid.samp.SampMap
org.astrogrid.samp.Metadata

All Implemented Interfaces:
  `Map`

public class Metadata extends SampMap
Represents the application metadata associated with a SAMP client.

Since:
  14 Jul 2008
Author:
  Mark Taylor

## Nested Class Summary

## Nested classes/interfaces inherited from class java.util.AbstractMap

`AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>`

## Nested classes/interfaces inherited from interface java.util.Map

`Map.Entry<K,V>`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`DESCHTML_KEY`
Key for description of the application in HTML.
`static final String`
`DESCTEXT_KEY`
Key for short description of the application in plain text.
`static final String`
`DOCURL_KEY`
Key for the URL of a documentation web page.
`static final String`
`ICONURL_KEY`
Key for the URL of an icon in png, gif or jpeg format.
`static final String`
`NAME_KEY`
Key for application name.

### Fields inherited from class org.astrogrid.samp.SampMap

`EMPTY`

## Constructor Summary

Constructors
Constructor
Description
`Metadata()`
Constructs an empty Metadata map.
`Metadata(Map map)`
Constructs a Metadata map based on a given map.

## Method Summary

Modifier and Type
Method
Description
`static Metadata`
`asMetadata(Map map)`
Returns a given map as a Metadata object.
`void`
`check()`
Checks that this object is ready for use with the SAMP toolkit.
`String`
`getDescriptionHtml()`
Returns an HTML description of the application.
`String`
`getDescriptionText()`
Returns a short description of the application.
`URL`
`getDocumentationUrl()`
Returns a URL for a documentation web page.
`URL`
`getIconUrl()`
Returns a URL for a gif, png or jpeg icon identifying the application.
`String`
`getName()`
Returns the value for the application's name.
`void`
`setDescriptionHtml(String html)`
Sets an HTML description of the application.
`void`
`setDescriptionText(String txt)`
Sets a short description of the application.
`void`
`setDocumentationUrl(String url)`
Sets a URL for a documentation web page.
`void`
`setIconUrl(String url)`
Sets a URL for a gif, png or jpeg icon identifying the application.
`void`
`setName(String name)`
Sets the value for the application's name.

### Methods inherited from class org.astrogrid.samp.SampMap

`checkHasKeys, entrySet, getList, getMap, getString, getUrl, put`

### Methods inherited from class java.util.AbstractMap

`clear, clone, containsKey, containsValue, equals, get, hashCode, isEmpty, keySet, putAll, remove, size, toString, values`

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface java.util.Map

`compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll`

## Field Details

### NAME_KEY

public static final String NAME_KEY
Key for application name.

See Also:
  - Constant Field Values

### DESCTEXT_KEY

public static final String DESCTEXT_KEY
Key for short description of the application in plain text.

See Also:
  - Constant Field Values

### DESCHTML_KEY

public static final String DESCHTML_KEY
Key for description of the application in HTML.

See Also:
  - Constant Field Values

### ICONURL_KEY

public static final String ICONURL_KEY
Key for the URL of an icon in png, gif or jpeg format.

See Also:
  - Constant Field Values

### DOCURL_KEY

public static final String DOCURL_KEY
Key for the URL of a documentation web page.

See Also:
  - Constant Field Values

## Constructor Details

### Metadata

public Metadata()
Constructs an empty Metadata map.

### Metadata

public Metadata(Map map)
Constructs a Metadata map based on a given map.

Parameters:
  `map` - map containing initial values for this object

## Method Details

### setName

public void setName(String name)
Sets the value for the application's name.

Parameters:
  `name` - value for `NAME_KEY` key

### getName

public String getName()
Returns the value for the application's name.

Returns:
  value for `NAME_KEY` key

### setDescriptionText

public void setDescriptionText(String txt)
Sets a short description of the application.

Parameters:
  `txt` - value for `DESCTEXT_KEY` key

### getDescriptionText

public String getDescriptionText()
Returns a short description of the application.

Returns:
  value for `DESCTEXT_KEY` key

### setDescriptionHtml

public void setDescriptionHtml(String html)
Sets an HTML description of the application.

Parameters:
  `html` - value for `DESCHTML_KEY` key

### getDescriptionHtml

public String getDescriptionHtml()
Returns an HTML description of the application.

Returns:
  value for `DESCHTML_KEY` key

### setIconUrl

public void setIconUrl(String url)
Sets a URL for a gif, png or jpeg icon identifying the application.

Parameters:
  `url` - value for `ICONURL_KEY` key

### getIconUrl

public URL getIconUrl()
Returns a URL for a gif, png or jpeg icon identifying the application.

Returns:
  value for `ICONURL_KEY` key

### setDocumentationUrl

public void setDocumentationUrl(String url)
Sets a URL for a documentation web page.

Parameters:
  `url` - value for `DOCURL_KEY` key

### getDocumentationUrl

public URL getDocumentationUrl()
Returns a URL for a documentation web page.

Returns:
  value for `DOCURL_KEY` key

### check

public void check()
Description copied from class: `SampMap`
Checks that this object is ready for use with the SAMP toolkit. As well as calling `SampUtils.checkMap(java.util.Map)` (ensuring that all keys are Strings, and all values Strings, Lists or Maps), subclass-specific invariants may be checked. In the case that there's something wrong, an informative `DataException` will be thrown.

Overrides:
  `check` in class `SampMap`

### asMetadata

public static Metadata asMetadata(Map map)
Returns a given map as a Metadata object.

Parameters:
  `map` - map
Returns:
  metadata