Hi,

I am having some issues with e4x filtering when I try and use a "dynamic" element in my expressions...

Using the XML below (somewhat truncated) I am trying to match either the "id" or the "name" depending on the variable type passed in:

private function _subscriberEventNameFromIds(objId:* = 0, funcId:int = 0, is_func:Boolean = true):String {
           var objName:String;
           var funcName:String;
           //_subscriptionList contains the XML below...
           //....
           var obj:XMLList;
           var idx:String = "name";
if(objId is int) {
               idx = "id";

           }
//The following expression does not work, I cannot use idx "dynamically"..
           obj = _subscriptionList.object.(child(idx) == objId);
            //..., instead I have to do the following.
            /*
           if(objId is int) {
               idx = "id";
               obj = _subscriptionList.object.(child("id") == int(objId));
           } else {
obj = _subscriptionList.object.(child("name") == String(objId));
           }
            */
      }

   Does anyone know if /how I can do this dynamically?
Glen

   <subscribeable>
   <object>
     <id>1</id>
     <name>system_management</name>
     <notifications>
       <notification>
         <id>1</id>
         <name>status</name>
       </notification>
     </notifications>
   </object>
   <object>
     <id>17</id>
     <name>sequence_management</name>
     <notifications>
       <notification>
         <id>1</id>
         <name>status</name>
       </notification>
       <notification>
         <id>2</id>
         <name>play</name>
       </notification>
       <notification>
         <id>3</id>
         <name>stop</name>
       </notification>
     </notifications>
   </object>
 </subscribeable>
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Reply via email to