fabric.lang.arrays.internal
Class _ObjectArray._Impl<T extends Object>

java.lang.Object
  extended by fabric.lang.Object._Impl
      extended by fabric.lang.arrays.internal._ObjectArray._Impl<T>
All Implemented Interfaces:
_InternalArrayImpl, _ObjectArray<T>, Object, java.lang.Cloneable
Enclosing interface:
_ObjectArray<T extends Object>

public static class _ObjectArray._Impl<T extends Object>
extends Object._Impl
implements _ObjectArray<T>, _InternalArrayImpl


Nested Class Summary
 
Nested classes/interfaces inherited from interface fabric.lang.arrays.internal._ObjectArray
_ObjectArray._Impl<T extends Object>, _ObjectArray._Proxy<T extends Object>
 
Nested classes/interfaces inherited from interface fabric.lang.Object
Object._Static
 
Field Summary
 
Fields inherited from class fabric.lang.Object._Impl
$class, $history, $isOwned, $label, $numWaiting, $reader, $readMapEntry, $ref, $updateMapVersion, $version, $writeLockHolder, $writer
 
Constructor Summary
_ObjectArray._Impl(Store store, Label label, java.lang.Class<? extends Object._Proxy> proxyType, int length)
          Creates a new object array at the given Store with the given length.
_ObjectArray._Impl(Store store, Label label, java.lang.Class<? extends Object._Proxy> proxyType, T[] value)
          Creates a new object array at the given Store using the given backing array.
_ObjectArray._Impl(Store store, long onum, int version, long expiry, long label, java.io.ObjectInput in, java.util.Iterator<RefTypeEnum> refTypes, java.util.Iterator<java.lang.Long> intraStoreRefs)
          Used for deserializing.
 
Method Summary
 void $copyAppStateFrom(Object._Impl other)
          This copies the application state of the object.
protected  _ObjectArray._Proxy<T> $makeProxy()
          Subclasses should override this method.
 void $serialize(java.io.ObjectOutput out, java.util.List<RefTypeEnum> refTypes, java.util.List<java.lang.Long> intraStoreRefs, java.util.List<Pair<java.lang.String,java.lang.Long>> interStoreRefs)
          Serializes the non-transient fields of this object.
 void cloneValues()
           
 T get(int i)
           
 int get$length()
           
 T set(int i, T value)
           
 
Methods inherited from class fabric.lang.Object._Impl
_npe, $copyStateFrom, $forceRenumber, $getClass, $getOnum, $getProxy, $getStore, $getVersion, $readRef, $unwrap, $writeInline, $writeRef, clone, createStatistics, equals, equals, fetch, get$label, hashCode, idEquals, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface fabric.lang.Object
$forceRenumber, $getOnum, $getProxy, $getStore, $unwrap, createStatistics, equals, fetch, get$label, idEquals
 

Constructor Detail

_ObjectArray._Impl

public _ObjectArray._Impl(Store store,
                          Label label,
                          java.lang.Class<? extends Object._Proxy> proxyType,
                          int length)
Creates a new object array at the given Store with the given length.

Parameters:
store - The store on which to allocate the array.
length - The length of the array.

_ObjectArray._Impl

public _ObjectArray._Impl(Store store,
                          Label label,
                          java.lang.Class<? extends Object._Proxy> proxyType,
                          T[] value)
Creates a new object array at the given Store using the given backing array.

Parameters:
store - The store on which to allocate the array.
value - The backing array to use.

_ObjectArray._Impl

public _ObjectArray._Impl(Store store,
                          long onum,
                          int version,
                          long expiry,
                          long label,
                          java.io.ObjectInput in,
                          java.util.Iterator<RefTypeEnum> refTypes,
                          java.util.Iterator<java.lang.Long> intraStoreRefs)
                   throws java.io.IOException,
                          java.lang.ClassNotFoundException
Used for deserializing.

Throws:
java.io.IOException
java.lang.ClassNotFoundException
Method Detail

get$length

public int get$length()
Specified by:
get$length in interface _ObjectArray<T extends Object>

get

public T get(int i)
Specified by:
get in interface _ObjectArray<T extends Object>

set

public T set(int i,
             T value)
Specified by:
set in interface _ObjectArray<T extends Object>

$copyAppStateFrom

public void $copyAppStateFrom(Object._Impl other)
Description copied from class: Object._Impl
This copies the application state of the object. Subclasses should override this method and call super.copyAppStateFrom(other).

Overrides:
$copyAppStateFrom in class Object._Impl

cloneValues

public void cloneValues()
Specified by:
cloneValues in interface _InternalArrayImpl

$makeProxy

protected _ObjectArray._Proxy<T> $makeProxy()
Description copied from class: Object._Impl
Subclasses should override this method.

Overrides:
$makeProxy in class Object._Impl

$serialize

public void $serialize(java.io.ObjectOutput out,
                       java.util.List<RefTypeEnum> refTypes,
                       java.util.List<java.lang.Long> intraStoreRefs,
                       java.util.List<Pair<java.lang.String,java.lang.Long>> interStoreRefs)
                throws java.io.IOException
Description copied from class: Object._Impl
Serializes the non-transient fields of this object. Subclasses should call the super method first so that inherited fields are written before fields declared in this subclass. The order in which fields are written must be fixed and the same as the order used by the deserialization constructor.

Overrides:
$serialize in class Object._Impl
Parameters:
out - An output stream for writing serialized primitive values and inlined objects.
refTypes - A list to which RefTypeEnums will be written to indicate the type of reference being serialized (e.g., null, inlined, intraStore, interStore).
intraStoreRefs - A list to which onums denoting intra-store references will be written.
interStoreRefs - A list to which global object names (hostname/onum pairs), denoting inter-store references, will be written.
Throws:
java.io.IOException