Skip to main content
Pentaho Documentation

ComplexChangeset

pentaho.type.changes.ComplexChangeset

The class ComplexChangeset describes a set of changes to the values of properties in a complex value.

AMD Module

require(["pentaho/type/changes/ComplexChangeset"], function(ComplexChangeset) { /* code goes here */ });

Extends

Constructor

Name Description
new ComplexChangeset(transaction, owner)

Creates a new instance.

Members

Name Description
base : function
 
Protected

If a method has been overridden, then the base method provides access to the overridden method.

hasChanges : boolean

Gets a value that indicates if this changeset contains any changes, whether they are primitive or in contained changesets.

isReadOnly : boolean

Gets a value that indicates if the changeset is in a read-only state and can no longer be modified.

owner : pentaho.type.Complex

Gets the complex value where the changes take place.

ownerVersion : number

Gets the version of the owner at the time when the changeset was created.

propertyNames : Array.<string>

Gets an array with all of the property names contained in this changeset.

transaction : pentaho.type.changes.Transaction

Gets the owning transaction.

type : string

Gets the type of change.

Methods

Name Description
_apply(target)
 
Protected

Applies any local primitive changes.

_assertWritable()
 
Protected

Throws an error if the changeset is read-only.

_clearChanges()
 
Protected

Actually removes all changes in the changeset.

clearChanges()

Removes all changes from this changeset.

extend(source, keyArgs) : Object

Extend an object with the properties of another.

getChange(name) : pentaho.type.changes.Change

Gets the change object associated with the specified property.

getOld(name) : pentaho.type.Value

Gets the original value of a property.

hasChange(name) : boolean

Determines if the given property has changed.

Constructor Details

new ComplexChangeset(transaction, owner)

Creates a new instance.

Source: javascript/web/pentaho/type/changes/ComplexChangeset.js, line 30

Parameters:
Name Default Value Summary
transaction : pentaho.type.changes.Transaction

The owning transaction.

owner : pentaho.type.Complex

The complex value where the changes take place.

Members Details

base: function
 
Protected

If a method has been overridden, then the base method provides access to the overridden method.

Can also be called from within a constructor function.

Source: javascript/web/pentaho/lang/Base.js, line 299

Inherited From: pentaho.lang.Base#base

hasChanges: boolean

Gets a value that indicates if this changeset contains any changes, whether they are primitive or in contained changesets.

Source: javascript/web/pentaho/type/changes/Changeset.js, line 161

Overrides: pentaho.type.changes.Changeset#hasChanges

isReadOnly: boolean

Gets a value that indicates if the changeset is in a read-only state and can no longer be modified.

Source: javascript/web/pentaho/type/changes/Changeset.js, line 136

Inherited From: pentaho.type.changes.Changeset#isReadOnly

owner: pentaho.type.Complex

Gets the complex value where the changes take place.

Source: javascript/web/pentaho/type/changes/ComplexChangeset.js, line 63

Overrides: pentaho.type.changes.Changeset#owner

ownerVersion: number

Gets the version of the owner at the time when the changeset was created.

Source: javascript/web/pentaho/type/changes/Changeset.js, line 157

Inherited From: pentaho.type.changes.Changeset#ownerVersion

propertyNames: Array.<string>

Gets an array with all of the property names contained in this changeset.

Source: javascript/web/pentaho/type/changes/ComplexChangeset.js, line 179

transaction: pentaho.type.changes.Transaction

Gets the owning transaction.

Source: javascript/web/pentaho/type/changes/Changeset.js, line 51

Inherited From: pentaho.type.changes.Changeset#transaction

type: string

Gets the type of change.

Source: javascript/web/pentaho/type/changes/ComplexChangeset.js, line 79

Default Value: "complex"

Overrides: pentaho.type.changes.Changeset#type

Methods Details

_apply(target)
 
Protected

Applies any local primitive changes.

Source: javascript/web/pentaho/type/changes/Change.js, line 50

Overrides: pentaho.type.changes.Changeset#_apply

Parameters:
Name Default Value Summary
target : pentaho.type.mixins.Container

The container to which changes are applied.

_assertWritable()
 
Protected

Throws an error if the changeset is read-only.

Source: javascript/web/pentaho/type/changes/Changeset.js, line 125

Inherited From: pentaho.type.changes.Changeset#_assertWritable

Throws:
Name Description
pentaho.lang.OperationInvalidError

When the changeset has been marked read-only.

_clearChanges()
 
Protected

Actually removes all changes in the changeset.

Source: javascript/web/pentaho/type/changes/Changeset.js, line 191

Overrides: pentaho.type.changes.Changeset#_clearChanges

See also:  pentaho.type.changes.Changeset#clearChanges

clearChanges()

Removes all changes from this changeset.

Primitive changes are removed, while contained changesets are cleared.

This method validates that the changeset is in a valid state and then delegates actual work to the _clearChanges method.

Source: javascript/web/pentaho/type/changes/Changeset.js, line 184

Inherited From: pentaho.type.changes.Changeset#clearChanges

Throws:
Name Description
pentaho.lang.OperationInvalidError

When the changeset or any of its contained changesets have been marked read-only.

See also:  pentaho.type.changes.Changeset#_clearChanges

extend(source, keyArgs) : Object

Extend an object with the properties of another.

Methods that are overridden are accessible through this.base.

This object is extended, but its class doesn't change.

Source: javascript/web/pentaho/lang/Base.js, line 1037

Inherited From: pentaho.lang.Base#extend

Parameters:
Name Default Value Summary
source : Object

The instance specification.

keyArgs : Object
 
Optional

The keyword arguments.

Parameters:
Name Default Value Summary
exclude : Object
 
Optional

A map of property names to exclude from source.

Returns:
Name Description
Object

This object.

getChange(name) : pentaho.type.changes.Change

Gets the change object associated with the specified property.

Source: javascript/web/pentaho/type/changes/ComplexChangeset.js, line 154

Parameters:
Name Default Value Summary
name : nonEmptyString | pentaho.type.Property.Type

The property name or type object.

Returns:
Name Description
pentaho.type.changes.Change

An object describing the changes to be performed in the given property, or null if the property has not changed.

Throws:
Name Description
pentaho.lang.ArgumentInvalidError

When a property with name name is not defined.

getOld(name) : pentaho.type.Value

Gets the original value of a property.

Source: javascript/web/pentaho/type/changes/ComplexChangeset.js, line 215

Parameters:
Name Default Value Summary
name : nonEmptyString | pentaho.type.Property.Type

The property name or type object.

Returns:
Name Description
pentaho.type.Value

The original value of the property (before the change).

Throws:
Name Description
pentaho.lang.ArgumentInvalidError

When a property with name name is not defined.

hasChange(name) : boolean

Determines if the given property has changed.

Source: javascript/web/pentaho/type/changes/ComplexChangeset.js, line 168

Parameters:
Name Default Value Summary
name : nonEmptyString | pentaho.type.Property.Type

The property name or type object.

Returns:
Name Description
boolean

true if the property has changed; false, otherwise.

Throws:
Name Description
pentaho.lang.ArgumentInvalidError

When a property with name name is not defined.