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 27

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 265

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 151

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 127

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 53

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 147

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 155

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 69

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.ContainerMixin

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 116

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 181

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 174

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.

Can be applied to non-Base instances (e.g. using Base.prototype.extend.call(alien, {a: "hello"})).

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

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 130

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 177

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 144

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.