Ext.data.amf.Encoder

Hierarchy

Ext.Base
Ext.data.amf.Encoder

Files

This class serializes data in the Action Message Format (AMF) format. It can write simple and complex objects, to be used in conjunction with an AMF-compliant server. To encode a byte array, first construct an Encoder, optionally setting the format:

var encoder = Ext.create('Ext.data.amf.Encoder', {
  format: 3
});

Then use the writer methods to output data:

encoder.writeObject(1);

And access the data through the bytes property: encoder.getBytes();

You can also reset the class to start a new byte array:

encoder.clear();

Current limitations: AMF3 format (format:3) - writeObject will write out XML object, not legacy XMLDocument objects. A writeXmlDocument method is provided for explicitly writing XMLDocument objects. - Each object is written out explicitly, not using the reference tables supported by the AMF format. This means the function does NOT support circular reference objects. - Array objects: only the numbered indices and data will be written out. Associative values will be ignored. - Objects that aren't Arrays, Dates, Strings, Document (XML) or primitive values will be written out as anonymous objects with dynamic data. - There's no JavaScript equivalent to the ByteArray type in ActionScript, hence data will never be searialized as ByteArrays by the writeObject function. A writeByteArray method is provided for writing out ByteArray objects.

AMF0 format (format:0) - Each object is written out explicitly, not using the reference tables supported by the AMF format. This means the function does NOT support circular reference objects. - Array objects: the function always writes an associative array (following the behavior of flex). - Objects that aren't Arrays, Dates, Strings, Document (XML) or primitive values will be written out as anonymous objects.

For more information on working with AMF data please refer to the AMF Guide.

Defined By

Config options

Ext.data.amf.Encoder
view source
: Numberprivate
...

Defaults to: 3

Properties

Defined By

Instance properties

Ext.data.amf.Encoder
view source
: Arrayreadonly
The constructed byte array. ...

The constructed byte array.

Defaults to: []

Get the reference to the current class from which this object was instantiated. ...

Get the reference to the current class from which this object was instantiated. Unlike statics, this.self is scope-dependent and it's meant to be used for dynamic inheritance. See statics for a detailed comparison

Ext.define('My.Cat', {
    statics: {
        speciesName: 'Cat' // My.Cat.speciesName = 'Cat'
    },

    constructor: function() {
        alert(this.self.speciesName); // dependent on 'this'
    },

    clone: function() {
        return new this.self();
    }
});


Ext.define('My.SnowLeopard', {
    extend: 'My.Cat',
    statics: {
        speciesName: 'Snow Leopard'         // My.SnowLeopard.speciesName = 'Snow Leopard'
    }
});

var cat = new My.Cat();                     // alerts 'Cat'
var snowLeopard = new My.SnowLeopard();     // alerts 'Snow Leopard'

var clone = snowLeopard.clone();
alert(Ext.getClassName(clone));             // alerts 'My.SnowLeopard'
Defined By

Static properties

...

Defaults to: []

Methods

Defined By

Instance methods

Ext.data.amf.Encoder
view source
new( config ) : Ext.data.amf.Encoder
Creates new Encoder. ...

Creates new Encoder.

Parameters

  • config : Object

    Configuration options

Returns

Fires

    Ext.data.amf.Encoder
    view source
    ( protocol_version )
    Sets the functions that will correctly serialize for the relevant protocol version. ...

    Sets the functions that will correctly serialize for the relevant protocol version.

    Parameters

    • protocol_version : Number

      the protocol version to support

    Call the original method that was previously overridden with override, This method is deprecated as callParent does ...

    Call the original method that was previously overridden with override,

    This method is deprecated as callParent does the same thing.

    Ext.define('My.Cat', {
        constructor: function() {
            alert("I'm a cat!");
        }
    });
    
    My.Cat.override({
        constructor: function() {
            alert("I'm going to be a cat!");
    
            var instance = this.callOverridden();
    
            alert("Meeeeoooowwww");
    
            return instance;
        }
    });
    
    var kitty = new My.Cat(); // alerts "I'm going to be a cat!"
                              // alerts "I'm a cat!"
                              // alerts "Meeeeoooowwww"
    

    Parameters

    • args : Array/Arguments

      The arguments, either an array or the arguments object from the current method, for example: this.callOverridden(arguments)

    Returns

    • Object

      Returns the result of calling the overridden method

    Call the "parent" method of the current method. ...

    Call the "parent" method of the current method. That is the method previously overridden by derivation or by an override (see Ext.define).

     Ext.define('My.Base', {
         constructor: function (x) {
             this.x = x;
         },
    
         statics: {
             method: function (x) {
                 return x;
             }
         }
     });
    
     Ext.define('My.Derived', {
         extend: 'My.Base',
    
         constructor: function () {
             this.callParent([21]);
         }
     });
    
     var obj = new My.Derived();
    
     alert(obj.x);  // alerts 21
    

    This can be used with an override as follows:

     Ext.define('My.DerivedOverride', {
         override: 'My.Derived',
    
         constructor: function (x) {
             this.callParent([x*2]); // calls original My.Derived constructor
         }
     });
    
     var obj = new My.Derived();
    
     alert(obj.x);  // now alerts 42
    

    This also works with static methods.

     Ext.define('My.Derived2', {
         extend: 'My.Base',
    
         statics: {
             method: function (x) {
                 return this.callParent([x*2]); // calls My.Base.method
             }
         }
     });
    
     alert(My.Base.method(10));     // alerts 10
     alert(My.Derived2.method(10)); // alerts 20
    

    Lastly, it also works with overridden static methods.

     Ext.define('My.Derived2Override', {
         override: 'My.Derived2',
    
         statics: {
             method: function (x) {
                 return this.callParent([x*2]); // calls My.Derived2.method
             }
         }
     });
    
     alert(My.Derived2.method(10)); // now alerts 40
    

    To override a method and replace it and also call the superclass method, use callSuper. This is often done to patch a method to fix a bug.

    Parameters

    • args : Array/Arguments

      The arguments, either an array or the arguments object from the current method, for example: this.callParent(arguments)

    Returns

    • Object

      Returns the result of calling the parent method

    This method is used by an override to call the superclass method but bypass any overridden method. ...

    This method is used by an override to call the superclass method but bypass any overridden method. This is often done to "patch" a method that contains a bug but for whatever reason cannot be fixed directly.

    Consider:

     Ext.define('Ext.some.Class', {
         method: function () {
             console.log('Good');
         }
     });
    
     Ext.define('Ext.some.DerivedClass', {
         method: function () {
             console.log('Bad');
    
             // ... logic but with a bug ...
    
             this.callParent();
         }
     });
    

    To patch the bug in DerivedClass.method, the typical solution is to create an override:

     Ext.define('App.paches.DerivedClass', {
         override: 'Ext.some.DerivedClass',
    
         method: function () {
             console.log('Fixed');
    
             // ... logic but with bug fixed ...
    
             this.callSuper();
         }
     });
    

    The patch method cannot use callParent to call the superclass method since that would call the overridden method containing the bug. In other words, the above patch would only produce "Fixed" then "Good" in the console log, whereas, using callParent would produce "Fixed" then "Bad" then "Good".

    Parameters

    • args : Array/Arguments

      The arguments, either an array or the arguments object from the current method, for example: this.callSuper(arguments)

    Returns

    • Object

      Returns the result of calling the superclass method

    Ext.data.amf.Encoder
    view source
    ( )
    Reset all class states and starts a new empty array for encoding data. ...

    Reset all class states and starts a new empty array for encoding data. The method generates a new array for encoding, so it's safe to keep a reference to the old one.

    Fires

      Ext.data.amf.Encoder
      view source
      ( xml ) : Stringprivate
      Converts an XML Document object to a string. ...

      Converts an XML Document object to a string.

      Parameters

      • xml : Object

        XML document (type Document typically) to convert

      Returns

      • String

        A string representing the document

      Ext.data.amf.Encoder
      view source
      ( item )private
      Encodes a U29 int, returning a byte array with the encoded number. ...

      Encodes a U29 int, returning a byte array with the encoded number.

      Parameters

      • item : Object
        • unsigned int value
      Ext.data.amf.Encoder
      view source
      ( utf8Data ) : Arrayprivate
      Encode the length of a UTF-8 string in AMF3 format. ...

      Encode the length of a UTF-8 string in AMF3 format.

      Parameters

      • utf8Data : Array

        byte array with the encoded data

      Returns

      • Array

        byte array encoding of length

      Fires

        Ext.data.amf.Encoder
        view source
        ( num ) : Arrayprivate
        Encodes an IEEE-754 double-precision number. ...

        Encodes an IEEE-754 double-precision number.

        Parameters

        • num : Number

          the number to encode

        Returns

        • Array

          byte array containing the encoded number

        Ext.data.amf.Encoder
        view source
        ( c ) : Array
        Convert a UTF 16 char to a UTF 8 char ...

        Convert a UTF 16 char to a UTF 8 char

        Parameters

        • c : Number

          char 16-bit code to convert

        Returns

        • Array

          byte array with the UTF 8 values

        Ext.data.amf.Encoder
        view source
        ( str ) : Arrayprivate
        Accepts a string and returns a byte array encoded in UTF-8 ...

        Accepts a string and returns a byte array encoded in UTF-8

        Parameters

        Returns

        • Array

          byte array with string encoded in UTF-8 format

        Fires

          Ext.data.amf.Encoder
          view source
          ( value, byte_count ) : Array
          Encode 16- or 32-bit integers into big-endian (network order) bytes ...

          Encode 16- or 32-bit integers into big-endian (network order) bytes

          Parameters

          • value : Number

            the number to encode.

          • byte_count : Number

            2 or 4 byte encoding

          Returns

          • Array

            byte array with encoded number

          ...

          Parameters

          Ext.data.amf.Encoder
          view source
          ( ) : Number
          Returns the value of format. ...

          Returns the value of format.

          Returns

          Returns the initial configuration passed to constructor. ...

          Returns the initial configuration passed to constructor.

          Parameters

          • name : String (optional)

            When supplied, value for particular configuration option is returned, otherwise the full config object is returned.

          Returns

          ...

          Parameters

          ( instanceConfig ) : Objectchainableprotected
          Initialize configuration for this class. ...

          Initialize configuration for this class. a typical example:

          Ext.define('My.awesome.Class', {
              // The default config
              config: {
                  name: 'Awesome',
                  isAwesome: true
              },
          
              constructor: function(config) {
                  this.initConfig(config);
              }
          });
          
          var awesome = new My.awesome.Class({
              name: 'Super Awesome'
          });
          
          alert(awesome.getName()); // 'Super Awesome'
          

          Parameters

          Returns

          • Object

            mixins The mixin prototypes as key - value pairs

          Fires

            Ext.data.amf.Encoder
            view source
            ( item ) : Boolean
            Tries to determine if an object is an XML document ...

            Tries to determine if an object is an XML document

            Parameters

            Returns

            • Boolean

              true if it's an XML document, false otherwise

            ( names, callback, scope )private
            ...

            Parameters

            ( config, applyIfNotSet ) : Ext.Basechainableprivate
            ...

            Parameters

            Returns

            Ext.data.amf.Encoder
            view source
            ( format )
            Sets the value of format. ...

            Sets the value of format.

            Parameters

            Get the reference to the class from which this object was instantiated. ...

            Get the reference to the class from which this object was instantiated. Note that unlike self, this.statics() is scope-independent and it always returns the class from which it was called, regardless of what this points to during run-time

            Ext.define('My.Cat', {
                statics: {
                    totalCreated: 0,
                    speciesName: 'Cat' // My.Cat.speciesName = 'Cat'
                },
            
                constructor: function() {
                    var statics = this.statics();
            
                    alert(statics.speciesName);     // always equals to 'Cat' no matter what 'this' refers to
                                                    // equivalent to: My.Cat.speciesName
            
                    alert(this.self.speciesName);   // dependent on 'this'
            
                    statics.totalCreated++;
                },
            
                clone: function() {
                    var cloned = new this.self();                    // dependent on 'this'
            
                    cloned.groupName = this.statics().speciesName;   // equivalent to: My.Cat.speciesName
            
                    return cloned;
                }
            });
            
            
            Ext.define('My.SnowLeopard', {
                extend: 'My.Cat',
            
                statics: {
                    speciesName: 'Snow Leopard'     // My.SnowLeopard.speciesName = 'Snow Leopard'
                },
            
                constructor: function() {
                    this.callParent();
                }
            });
            
            var cat = new My.Cat();                 // alerts 'Cat', then alerts 'Cat'
            
            var snowLeopard = new My.SnowLeopard(); // alerts 'Cat', then alerts 'Snow Leopard'
            
            var clone = snowLeopard.clone();
            alert(Ext.getClassName(clone));         // alerts 'My.SnowLeopard'
            alert(clone.groupName);                 // alerts 'Cat'
            
            alert(My.Cat.totalCreated);             // alerts 3
            

            Returns

            Ext.data.amf.Encoder
            view source
            ( arr )private
            Writes an associative array in AMF0 format. ...

            Writes an associative array in AMF0 format.

            Parameters

            • arr : Array

              the array to serialize.

            Fires

              Ext.data.amf.Encoder
              view source
              ( item )private
              Writes the appropriate AMF0 boolean value to the byte array. ...

              Writes the appropriate AMF0 boolean value to the byte array.

              Parameters

              Fires

                Ext.data.amf.Encoder
                view source
                ( date )private
                Writes a date in AMF0 format. ...

                Writes a date in AMF0 format.

                Parameters

                • date : Date

                  the date object

                Fires

                  Ext.data.amf.Encoder
                  view source
                  ( obj )private
                  Write an object to the byte array in AMF0 format. ...

                  Write an object to the byte array in AMF0 format. Since we don't have the class information form Flex, the object is written as an anonymous object.

                  Parameters

                  • obj : Array

                    the object to serialize.

                  Fires

                    Ext.data.amf.Encoder
                    view source
                    ( )private
                    Writes the AMF0 null value to the byte array. ...

                    Writes the AMF0 null value to the byte array.

                    Fires

                      Ext.data.amf.Encoder
                      view source
                      ( item )private
                      Writes a numberic value to the byte array in AMF0 format ...

                      Writes a numberic value to the byte array in AMF0 format

                      Parameters

                      • item : Object

                        A native numeric value, Number instance or one of Infinity, -Infinity or NaN

                      Fires

                        Ext.data.amf.Encoder
                        view source
                        ( key, value )
                        Writes a key-value pair in AMF0 format. ...

                        Writes a key-value pair in AMF0 format.

                        Parameters

                        • key : String

                          the name of the property

                        • value : Object

                          to write in AMF0 format

                        Fires

                          Ext.data.amf.Encoder
                          view source
                          ( str )
                          Writes a short UTF8 string preceded with a 16-bit length. ...

                          Writes a short UTF8 string preceded with a 16-bit length.

                          Parameters

                          • str : String

                            the string to write

                          Fires

                            Ext.data.amf.Encoder
                            view source
                            ( arr )
                            Writes a strict-array in AMF0 format. ...

                            Writes a strict-array in AMF0 format. Unordered parts are ignored (e.g. a["hello"] will not be encoded). This function is included for completeness and will never be called by writeObject.

                            Parameters

                            • arr : Array

                              the array to serialize.

                            Fires

                              Ext.data.amf.Encoder
                              view source
                              ( item )private
                              Write an AMF0 UTF-8 string to the byte array ...

                              Write an AMF0 UTF-8 string to the byte array

                              Parameters

                              • item : String

                                The string to write

                              Fires

                                Ext.data.amf.Encoder
                                view source
                                ( )private
                                Writes the AMF0 undefined value to the byte array. ...

                                Writes the AMF0 undefined value to the byte array.

                                Fires

                                  Ext.data.amf.Encoder
                                  view source
                                  ( xml )private
                                  Writes an XMLDocument in AMF0 format. ...

                                  Writes an XMLDocument in AMF0 format.

                                  Parameters

                                  • xml : Object

                                    XML document (type Document typically) to write

                                  Fires

                                    Ext.data.amf.Encoder
                                    view source
                                    ( arr )private
                                    Writes an array in AMF3 format. ...

                                    Writes an array in AMF3 format. Only the ordered part of the array use handled. Unordered parts are ignored (e.g. a["hello"] will not be encoded).

                                    Parameters

                                    • arr : Array

                                      the array to serialize.

                                    Fires

                                      Ext.data.amf.Encoder
                                      view source
                                      ( item )private
                                      Writes the appropriate AMF3 boolean value to the byte array. ...

                                      Writes the appropriate AMF3 boolean value to the byte array.

                                      Parameters

                                      Fires

                                        Ext.data.amf.Encoder
                                        view source
                                        ( arr )
                                        Write a byte array in AMF3 format. ...

                                        Write a byte array in AMF3 format. This function is never called directly by writeObject since there's no way to distinguish a regular array from a byte array.

                                        Parameters

                                        • arr : Array

                                          the object to serialize.

                                        Fires

                                          Ext.data.amf.Encoder
                                          view source
                                          ( date )private
                                          Writes a date in AMF3 format. ...

                                          Writes a date in AMF3 format.

                                          Parameters

                                          • date : Date

                                            the date object

                                          Fires

                                            Ext.data.amf.Encoder
                                            view source
                                            ( obj )private
                                            Write an object to the byte array in AMF3 format. ...

                                            Write an object to the byte array in AMF3 format. Since we don't have the class information form Flex, the object is written as an anonymous object.

                                            Parameters

                                            • obj : Array

                                              the object to serialize.

                                            Fires

                                              Ext.data.amf.Encoder
                                              view source
                                              ( )private
                                              Writes the AMF3 null value to the byte array. ...

                                              Writes the AMF3 null value to the byte array.

                                              Fires

                                                Ext.data.amf.Encoder
                                                view source
                                                ( item )private
                                                Writes a numberic value to the byte array in AMF3 format ...

                                                Writes a numberic value to the byte array in AMF3 format

                                                Parameters

                                                • item : Object

                                                  A native numeric value, Number instance or one of Infinity, -Infinity or NaN

                                                Fires

                                                  Ext.data.amf.Encoder
                                                  view source
                                                  ( item )private
                                                  Write an AMF3 UTF-8 string to the byte array ...

                                                  Write an AMF3 UTF-8 string to the byte array

                                                  Parameters

                                                  • item : String

                                                    The string to write

                                                  Fires

                                                    Ext.data.amf.Encoder
                                                    view source
                                                    ( )private
                                                    Writes the AMF3 undefined value to the byte array. ...

                                                    Writes the AMF3 undefined value to the byte array.

                                                    Fires

                                                      Ext.data.amf.Encoder
                                                      view source
                                                      ( xml )private
                                                      Writes an XML object (ActionScript 3 new XML object) in AMF3 format. ...

                                                      Writes an XML object (ActionScript 3 new XML object) in AMF3 format.

                                                      Parameters

                                                      • xml : Object

                                                        XML document (type Document typically) to write

                                                      Fires

                                                        Ext.data.amf.Encoder
                                                        view source
                                                        ( xml )
                                                        Writes an Legacy XMLDocument (ActionScript Legacy XML object) in AMF3 format. ...

                                                        Writes an Legacy XMLDocument (ActionScript Legacy XML object) in AMF3 format. Must be called explicitly. The writeObject method will call writeXml and not writeXmlDocument.

                                                        Parameters

                                                        • xml : Object

                                                          XML document (type Document typically) to write

                                                        Fires

                                                          Ext.data.amf.Encoder
                                                          view source
                                                          ( xml, amfType )private
                                                          Writes an XML document in AMF3 format. ...

                                                          Writes an XML document in AMF3 format.

                                                          Parameters

                                                          • xml : Object

                                                            XML document (type Document typically)

                                                          • amfType : number

                                                            Either 0x07 or 0x0B - the AMF3 object type to use

                                                          Fires

                                                            Ext.data.amf.Encoder
                                                            view source
                                                            ( headerName, mustUnderstand, value )private
                                                            Write an AMF header to the byte array. ...

                                                            Write an AMF header to the byte array. AMF headers are always encoded in AMF0.

                                                            Parameters

                                                            • headerName : String

                                                              the header name

                                                            • mustUnderstand : Boolean

                                                              true if the receiver must understand this header or else reject it, false otherwise

                                                            • value : Object

                                                              the value to serialize. Must be an object that can be serialized by AMF

                                                            Fires

                                                              Ext.data.amf.Encoder
                                                              view source
                                                              ( targetUri, responseUri, body )private
                                                              Writes an AMF message to the byte array. ...

                                                              Writes an AMF message to the byte array. AMF messages are always encoded in AMF0.

                                                              Parameters

                                                              • targetUri : String

                                                                the class / method to call

                                                              • responseUri : String

                                                                the response should call here

                                                              • body : Array

                                                                the parameters to pass to the called method, wrapped in an array

                                                              Fires

                                                                Ext.data.amf.Encoder
                                                                view source
                                                                ( headers, messages )
                                                                Writes an AMF packet to the byte array ...

                                                                Writes an AMF packet to the byte array

                                                                Parameters

                                                                • headers : Array

                                                                  the headers to serialize. Each item in the array should be an object with three fields: name, mustUnderstand, value

                                                                • messages : Array

                                                                  the messages to serialize. Each item in the array should be an object with three fields: targetUri, responseUri, body

                                                                Fires

                                                                  Ext.data.amf.Encoder
                                                                  view source
                                                                  ( b )private
                                                                  Writes a byte to the byte array ...

                                                                  Writes a byte to the byte array

                                                                  Parameters

                                                                  • b : number

                                                                    Byte to write to the array

                                                                  Fires

                                                                    Ext.data.amf.Encoder
                                                                    view source
                                                                    ( b )private
                                                                    Writes a byte array to the byte array ...

                                                                    Writes a byte array to the byte array

                                                                    Parameters

                                                                    • b : number

                                                                      Byte array to append to the array

                                                                    Fires

                                                                      Ext.data.amf.Encoder
                                                                      view source
                                                                      ( item )
                                                                      Write the appropriate data items to the byte array. ...

                                                                      Write the appropriate data items to the byte array. Supported types: - undefined - null - boolean - integer (if AMF3 - limited by 29-bit int, otherwise passed as double) - double - UTF-8 string - XML Document (identified by being instaneof Document. Can be generated with: new DOMParser()).parseFromString(xml, "text/xml");

                                                                      Parameters

                                                                      • item : Object

                                                                        A primitive or object to write to the stream

                                                                      Fires

                                                                        Defined By

                                                                        Static methods

                                                                        ( config, fullMerge )privatestatic
                                                                        ...

                                                                        Parameters

                                                                        ( members )chainableprivatestatic
                                                                        ...

                                                                        Parameters

                                                                        ( name, member )chainableprivatestatic
                                                                        ...

                                                                        Parameters

                                                                        ( members )chainablestatic
                                                                        Add methods / properties to the prototype of this class. ...

                                                                        Add methods / properties to the prototype of this class.

                                                                        Ext.define('My.awesome.Cat', {
                                                                            constructor: function() {
                                                                                // ...
                                                                            }
                                                                        });
                                                                        
                                                                         My.awesome.Cat.addMembers({
                                                                             meow: function() {
                                                                                alert('Meowww...');
                                                                             }
                                                                         });
                                                                        
                                                                         var kitty = new My.awesome.Cat();
                                                                         kitty.meow();
                                                                        

                                                                        Parameters

                                                                        ( members ) : Ext.Basechainablestatic
                                                                        Add / override static properties of this class. ...

                                                                        Add / override static properties of this class.

                                                                        Ext.define('My.cool.Class', {
                                                                            // this.se
                                                                        });
                                                                        
                                                                        My.cool.Class.addStatics({
                                                                            someProperty: 'someValue',      // My.cool.Class.someProperty = 'someValue'
                                                                            method1: function() {  },    // My.cool.Class.method1 = function() { ... };
                                                                            method2: function() {  }     // My.cool.Class.method2 = function() { ... };
                                                                        });
                                                                        

                                                                        Parameters

                                                                        Returns

                                                                        ( xtype )chainableprivatestatic
                                                                        ...

                                                                        Parameters

                                                                        ( fromClass, members ) : Ext.Basechainableprivatestatic
                                                                        Borrow another class' members to the prototype of this class. ...

                                                                        Borrow another class' members to the prototype of this class.

                                                                        Ext.define('Bank', {
                                                                            money: '$$$',
                                                                            printMoney: function() {
                                                                                alert('$$$$$$$');
                                                                            }
                                                                        });
                                                                        
                                                                        Ext.define('Thief', {
                                                                            // ...
                                                                        });
                                                                        
                                                                        Thief.borrow(Bank, ['money', 'printMoney']);
                                                                        
                                                                        var steve = new Thief();
                                                                        
                                                                        alert(steve.money); // alerts '$$$'
                                                                        steve.printMoney(); // alerts '$$$$$$$'
                                                                        

                                                                        Parameters

                                                                        • fromClass : Ext.Base

                                                                          The class to borrow members from

                                                                        • members : Array/String

                                                                          The names of the members to borrow

                                                                        Returns

                                                                        ( args )protectedstatic
                                                                        ...

                                                                        Parameters

                                                                        Create a new instance of this Class. ...

                                                                        Create a new instance of this Class.

                                                                        Ext.define('My.cool.Class', {
                                                                            // ...
                                                                        });
                                                                        
                                                                        My.cool.Class.create({
                                                                            someConfig: true
                                                                        });
                                                                        

                                                                        All parameters are passed to the constructor of the class.

                                                                        Returns

                                                                        ( alias, origin )static
                                                                        Create aliases for existing prototype methods. ...

                                                                        Create aliases for existing prototype methods. Example:

                                                                        Ext.define('My.cool.Class', {
                                                                            method1: function() {  },
                                                                            method2: function() {  }
                                                                        });
                                                                        
                                                                        var test = new My.cool.Class();
                                                                        
                                                                        My.cool.Class.createAlias({
                                                                            method3: 'method1',
                                                                            method4: 'method2'
                                                                        });
                                                                        
                                                                        test.method3(); // test.method1()
                                                                        
                                                                        My.cool.Class.createAlias('method5', 'method3');
                                                                        
                                                                        test.method5(); // test.method3() -> test.method1()
                                                                        

                                                                        Parameters

                                                                        ( parent )privatestatic
                                                                        ...

                                                                        Parameters

                                                                        Get the current class' name in string format. ...

                                                                        Get the current class' name in string format.

                                                                        Ext.define('My.cool.Class', {
                                                                            constructor: function() {
                                                                                alert(this.self.getName()); // alerts 'My.cool.Class'
                                                                            }
                                                                        });
                                                                        
                                                                        My.cool.Class.getName(); // 'My.cool.Class'
                                                                        

                                                                        Returns

                                                                        ...
                                                                        ( name, mixinClass )privatestatic
                                                                        Used internally by the mixins pre-processor ...

                                                                        Used internally by the mixins pre-processor

                                                                        Parameters

                                                                        ( fn, scope )chainableprivatestatic
                                                                        ...

                                                                        Parameters

                                                                        ( members ) : Ext.Basechainabledeprecatedstatic
                                                                        Override members of this class. ...

                                                                        Override members of this class. Overridden methods can be invoked via callParent.

                                                                        Ext.define('My.Cat', {
                                                                            constructor: function() {
                                                                                alert("I'm a cat!");
                                                                            }
                                                                        });
                                                                        
                                                                        My.Cat.override({
                                                                            constructor: function() {
                                                                                alert("I'm going to be a cat!");
                                                                        
                                                                                var instance = this.callParent(arguments);
                                                                        
                                                                                alert("Meeeeoooowwww");
                                                                        
                                                                                return instance;
                                                                            }
                                                                        });
                                                                        
                                                                        var kitty = new My.Cat(); // alerts "I'm going to be a cat!"
                                                                                                  // alerts "I'm a cat!"
                                                                                                  // alerts "Meeeeoooowwww"
                                                                        

                                                                        As of 2.1, direct use of this method is deprecated. Use Ext.define instead:

                                                                        Ext.define('My.CatOverride', {
                                                                            override: 'My.Cat',
                                                                        
                                                                            constructor: function() {
                                                                                alert("I'm going to be a cat!");
                                                                        
                                                                                var instance = this.callParent(arguments);
                                                                        
                                                                                alert("Meeeeoooowwww");
                                                                        
                                                                                return instance;
                                                                            }
                                                                        });
                                                                        

                                                                        The above accomplishes the same result but can be managed by the Ext.Loader which can properly order the override and its target class and the build process can determine whether the override is needed based on the required state of the target class (My.Cat).

                                                                        This method has been deprecated since 2.1.0

                                                                        Please use Ext.define instead

                                                                        Parameters

                                                                        • members : Object

                                                                          The properties to add to this class. This should be specified as an object literal containing one or more properties.

                                                                        Returns