# ObjectManager Class

Extends BaseObject
Defined in: `js/ObjectManager.js:15`
Module: core
Parent Module: StructureJS

The ObjectManager class is an abstract class that provides enabling and disabling functionality for most StructureJS classes.

## Index

Show: Inherited Protected Private Deprecated

### Properties

- isEnabled
- sjsId

### Methods

- ObjectManager constructor
- destroy
- disable
- enable
- getQualifiedClassName

## Properties

### `isEnabled` Boolean public

Defined in `js/ObjectManager.js:31`

The isEnabled property is used to keep track of the enabled state of the object.

Default: false

### `sjsId` Int public

Inherited from BaseObject: `js/BaseObject.js:27`

The sjsId (StructureJS ID) is a unique identifier automatically assigned to most StructureJS objects upon instantiation.

Default: null

There are no properties that match your current filter settings. You can change your filter settings in the index section on this page. index

## Constructor

### `ObjectManager` ()

Defined in `js/ObjectManager.js:15`

## Methods

### `destroy` () Void public

Inherited from BaseObject: `js/BaseObject.js:55`

The purpose of the destroy method is to make an object ready for garbage collection. This should be thought of as a one way function. Once destroy is called no further methods should be called on the object or properties accessed. It is the responsibility of those who implement this function to stop all running Timers, all running Sounds, and take any other steps necessary to make an object eligible for garbage collection.

By default the destroy method will null out all properties of the class automatically. You should call destroy on other objects before calling the super.

#### Returns:

Void:

#### Example:

    destroy() {
         this.disable();

         this._childInstance.destroy();

         super.destroy();
    }

### `disable` () public chainable

Defined in `js/ObjectManager.js:64`

The disable method is responsible for disabling event listeners and/or children of the containing objects.

#### Example:

     disable() {
         if (this.isEnabled === false) { return this; }

         this._childInstance.removeEventListener(BaseEvent.CHANGE, this.handlerMethod, this);
         this._childInstance.disable();

         return super.disable();
     }

### `enable` () public chainable

Defined in `js/ObjectManager.js:41`

The enable method is responsible for enabling event listeners and/or children of the containing objects.

#### Example:

    enable() {
         if (this.isEnabled === true) { return this; }

         this._childInstance.addEventListener(BaseEvent.CHANGE, this.handlerMethod, this);
         this._childInstance.enable();

         return super.enable();
    }

### `getQualifiedClassName` () String public

Inherited from BaseObject: `js/BaseObject.js:40`

Returns the fully qualified class name of an object.

#### Returns:

String:

Returns the class name.

#### Example:

    let someClass = new SomeClass();
    someClass.getQualifiedClassName();

    // SomeClass

There are no methods that match your current filter settings. You can change your filter settings in the index section on this page. index