Skip to content

API / geotoolkit / data / DataObject / DataObject

Class: DataObject

data.DataObject.DataObject

Define base data object

Hierarchy

Table of contents

Constructors
  • [new DataObject(options)](/solutions/geotoolkit/GeoToolkit_JS/apis/classes/geotoolkit.data.dataobject.dataobject.md#new dataobject(options))
Methods
Css Properties
Name Type Description
namestringName
typestringType
uristringUnique resource identifier

Contents

Constructors

new DataObject(options)

• new DataObject(options?)

Parameters

Name Type
Optional optionsOptions

Overrides

EventDispatcher.constructor

Methods

addChild

▸ addChild(data): DataObject

Add a child object

Parameters

Name Type Description
dataDataObject | DataObject[]the child data to be added

Returns

DataObject

this


addProperties

▸ addProperties(properties): DataObject

Add additional properties

Parameters

Name Type Description
propertiesRecord<string, any&gt;additional properties of the dataobject

Returns

DataObject

this


clearChildren

▸ clearChildren(): DataObject

Remove all child data

Returns

DataObject

this


clone

▸ clone(copyData?): DataObject

All subclasses should override copyConstructor or provide custom implementation for this method

Parameters

Name Type Description
Optional copyDatabooleanflag to copy data

Returns

DataObject

clone


copyConstructor

▸ Protected copyConstructor(src): DataObject

Copy constructor function.<br> Function used as part of the cloning mechanism.<br> Implementations should copy the given instance state to this instance.<br>

Parameters

Name Type Description
srcDataObjectSource to copy from

Returns

DataObject

this


dispose

▸ dispose(): void

Dispose data object and all children. Clear all listeners

Returns

void

Overrides

EventDispatcher.dispose


getChild

▸ getChild(i): DataObject

Return data by index

Parameters

Name Type Description
inumberindex of the data

Returns

DataObject

child


getChildren

▸ getChildren(filter?): Iterator<DataObject&gt;

Return iterator by child data objects

Parameters

Name Type Description
Optional filter(data: DataObject) => booleana filter function. Returns all child data objects if the value is null.

Returns

Iterator<DataObject&gt;


getChildrenCount

▸ getChildrenCount(): number

Return number of child data

Returns

number


getClassName

▸ getClassName(): string

Returns

string

Inherited from

EventDispatcher.getClassName


getName

▸ getName(): string

Returns data object name

Returns

string


getParent

▸ getParent(): DataObject

Gets parent data item

Returns

DataObject


getProperties

▸ getProperties(): OptionsOut

Gets all the properties pertaining to this object

Returns

OptionsOut

JSON options object


getProperty

▸ getProperty(name): any

Gets property by name

Parameters

Name Type Description
namestringproperty name

Returns

any


getType

▸ getType(): string

Returns data type

Returns

string


getUri

▸ getUri(): string

Returns unique resource identifier

Returns

string


hasEventListener

▸ hasEventListener(type, callback?): boolean

Check if a list of event listeners for this type contains this listener

Parameters

Name Type Description
typestringtype of event or property
Optional callbackFunctionto be called, if null, check if any callback is registered

Returns

boolean

Inherited from

EventDispatcher.hasEventListener


hasProperty

▸ hasProperty(name): boolean

Returns whether data object contains specific property

Parameters

Name Type Description
namestringproperty name

Returns

boolean


indexOfChild

▸ indexOfChild(data): number

Return index of child data ( index of the specified child or -1 if data is not found)

Parameters

Name Type Description
dataDataObjectdata object to check index

Returns

number


insertChild

▸ insertChild(index, item, silent?): DataObject

Insert item by index

Parameters

Name Type Description
indexnumberspecified index
itemDataObjectnode
Optional silentbooleanwill not fire any events if true

Returns

DataObject

this


isDisposed

▸ isDisposed(): boolean

Returns whether this object has been disposed

Returns

boolean

Inherited from

EventDispatcher.isDisposed


isSilent

▸ isSilent(): boolean

Return true if the event dispatcher doesn't notify any events

Returns

boolean

Inherited from

EventDispatcher.isSilent


notify

▸ notify<E&gt;(type, source, args?): DataObject

Notify listeners

Type parameters

NameType
Eextends string

Parameters

Name Type Description
typeEevent types
sourceDataObjectof the event
Optional argsEventMap[E]arguments of the event

Returns

DataObject

this

Overrides

EventDispatcher.notify


off

▸ off<E&gt;(type?, callback?): DataObject

Detach listener on event. Calling .off() with no arguments removes all attached listeners. Calling .off(type) with no callback removes all attached listeners for specific type.

Type parameters

NameType
Eextends string

Parameters

Name Type Description
Optional typeEtype of the event
Optional callback(eventType: E, sender: DataObject, args: EventMap[E]) => voidfunction to be called

Returns

DataObject

this

Overrides

EventDispatcher.off


on

▸ on<E&gt;(type, callback): DataObject

Attach listener on event that will be called whenever the specified event is delivered to the target <p> If the callback function is already in the list of event listeners for this target, the function is not added a second time. </p> <p> If a particular anonymous function is in the list of event listeners registered for a certain target, and then later in the code, an identical anonymous function is given in an "on" call, the second function will also be added to the list of event listeners for that target. </p>

Type parameters

NameType
Eextends string

Parameters

Name Type Description
typeEtype of event or property
callback(eventType: E, sender: DataObject, args: EventMap[E]) => voidto be called

Returns

DataObject

this

Overrides

EventDispatcher.on


onPropertyChanged

▸ onPropertyChanged(prop): DataObject

This method is called if property bag is changed using setProperty method

Parameters

Name Type Description
propObjectproperty
prop.namestring
prop.valueany

Returns

DataObject

this


query

▸ query(): QueryBuilder<any&gt;

Query data item and child items by different conditions

Example

// Select by function
import {DataObject} from '@int/geotoolkit/data/DataObject';

const dataobject = new DataObject({'name': 'test', 'uri': 'testuri', 'type': 'testtype'});
const item1 = new DataObject({'name': 'item1', 'uri': 'item1', 'type': 'test'});
const item2 = new DataObject({'name': 'item2', 'uri': 'item2', 'type': 'test'});
dataobject.addChild(&#91;item1, item2&#93;);
const item5 = new DataObject({'name': 'item5', 'uri': 'item5', 'type': 'test'});
item2.addChild(item5);
let founditem = null;
dataobject.query()
.where( (item: DataObject) =&gt; item.getParent() === dataobject)
.where( (item: DataObject) =&gt; item.getUri() === 'item2')
.select((item: DataObject) =&gt; {
founditem = item;
});

Example

// Select by expression
dataobject.query()
.where( 'item =&gt; uri(item) == "item5"')
.select((item: DataObject) =&gt; {
founditem = item;
});

Returns

QueryBuilder<any&gt;

query object which has methods 'where' tp specify conditions, 'select' to run query, 'selectToArray' select results to array Expressions syntax: "item => expression", where expression:

  • logical and arithmetic operators
  • embedded functions: name(item) - gets name of the data object url(item) - gets url of the data object type(item) - gets type of the data object

removeChild

▸ removeChild(data, silent?): DataObject

Remove child data object

Parameters

Name Type Description
dataDataObjectdata object to be removed
Optional silentbooleanwill not fire any events if true

Returns

DataObject

this


set

▸ set(index, item): DataObject

Sets item by index

Parameters

Name Type Description
indexnumberindex of the item
itemDataObjectnode

Returns

DataObject


setName

▸ setName(name): DataObject

Sets data object name

Parameters

Name Type Description
namestringdata object name

Returns

DataObject

this


setParent

▸ setParent(parent): DataObject

Sets parent data item

Parameters

Name Type Description
parentDataObjectparent data item

Returns

DataObject

this


setProperties

▸ setProperties(properties?): DataObject

Sets all the properties pertaining to this object

Parameters

Name Type Description
Optional propertiesOptionsJSON options object

Returns

DataObject

this


setProperty

▸ setProperty(name, value): DataObject

Sets property by name

Parameters

Name Type Description
namestringproperty name
valueanyproperty value

Returns

DataObject

this


setSilent

▸ setSilent(bool): DataObject

Set silent mode

Parameters

Name Type Description
boolbooleanflag to enable silent mode

Returns

DataObject

this

Inherited from

EventDispatcher.setSilent


setType

▸ setType(type): DataObject

Sets data object type

Parameters

Name Type Description
typestringdata type

Returns

DataObject

this


setUri

▸ setUri(uri): DataObject

Sets unique resource identifier

Parameters

Name Type Description
uristringunique identifier

Returns

DataObject

this


getClassName

▸ Static getClassName(): string

Returns

string

Inherited from

EventDispatcher.getClassName