## org.red5.server.api
Interface IBasicScope

All Superinterfaces:
  AttributeStoreMBean, IAttributeStore, ICastingAttributeStore, ICoreObject, IEventDispatcher, IEventHandler, IEventListener, IEventObservable, IPersistable, Iterable<IBasicScope>

All Known Subinterfaces:
  IBroadcastScope, IGlobalScope, IScope, ISharedObject

All Known Implementing Classes:
  BasicScope, BroadcastScope, GlobalScope, Scope, SharedObjectScope, WebScope

    public interface IBasicScope

extends ICoreObject, IEventObservable, Iterable<IBasicScope>, IPersistable

Base interface for all scope objects, including SharedObjects.

Author:
  The Red5 Project (red5@osflash.org), Luke Hubbard (luke@codegent.com)

Field Summary

Fields inherited from interface org.red5.server.api.persistence.IPersistable
`TRANSIENT_PREFIX`

Method Summary
`int` `getDepth()` Get the scopes depth, how far down the scope tree is it.
`String` `getName()` Get the name of this scope.
`IScope` `getParent()` Get this scopes parent.
`String` `getPath()` Get the full absolute path.
`String` `getType()` Get the type of the scope.
`boolean` `hasParent()` Does this scope have a parent? You can think of scopes as of tree items where scope may have a parent and children (child).
`void` `lock()` Lock handling - attempts to obtain a lock
`void` `setKeepDelay(int keepDelay)` Sets the amount of time to keep the scope available after the last disconnect.
`void` `unlock()` Lock handling - attempts to unlock a lock

Methods inherited from interface org.red5.server.api.ICastingAttributeStore
`getBoolAttribute, getByteAttribute, getDoubleAttribute, getIntAttribute, getListAttribute, getLongAttribute, getMapAttribute, getSetAttribute, getShortAttribute, getStringAttribute`

Methods inherited from interface org.red5.server.api.IAttributeStore
`getAttribute, getAttribute, getAttributeNames, getAttributes, hasAttribute, removeAttribute, removeAttributes, setAttribute, setAttributes, setAttributes`

Methods inherited from interface org.red5.server.api.event.IEventDispatcher
`dispatchEvent`

Methods inherited from interface org.red5.server.api.event.IEventHandler
`handleEvent`

Methods inherited from interface org.red5.server.api.event.IEventListener
`notifyEvent`

Methods inherited from interface org.red5.server.api.event.IEventObservable
`addEventListener, getEventListeners, removeEventListener`

Methods inherited from interface java.lang.Iterable
`iterator`

Methods inherited from interface org.red5.server.api.persistence.IPersistable
`deserialize, getLastModified, getStore, isPersistent, serialize, setName, setPath, setPersistent, setStore`

Method Detail

### hasParent

    boolean hasParent()

  Does this scope have a parent? You can think of scopes as of tree items where scope may have a parent and children (child).

  Returns:
    `true` if this scope has a parent, otherwise `false`

### getParent

    IScope getParent()

  Get this scopes parent.

  Returns:
    parent scope, or `null` if this scope doesn't have a parent

### getDepth

    int getDepth()

  Get the scopes depth, how far down the scope tree is it. The lowest depth is 0x00, the depth of Global scope. Application scope depth is 0x01. Room depth is 0x02, 0x03 and so forth.

  Returns:
    the depth

### getName

    String getName()

  Get the name of this scope. Eg. `someroom`.

  Specified by:
    `getName` in interface `IPersistable`
  Returns:
    the name

### getPath

    String getPath()

  Get the full absolute path. Eg. `host/myapp/someroom`.

  Specified by:
    `getPath` in interface `IPersistable`
  Returns:
    Absolute scope path

### getType

    String getType()

  Get the type of the scope.

  Specified by:
    `getType` in interface `IPersistable`
  Returns:
    Type of scope

### setKeepDelay

    void setKeepDelay(int keepDelay)

  Sets the amount of time to keep the scope available after the last disconnect.

  Parameters:
    `keepDelay` - delay

### lock

    void lock()

  Lock handling - attempts to obtain a lock

### unlock

    void unlock()

  Lock handling - attempts to unlock a lock

Copyright © 2006-2010 The Red5 Project