Changeset 5321 for lang/actionscript

Show
Ignore:
Timestamp:
01/23/08 02:53:57 (6 years ago)
Author:
tasuku
Message:

lang/actionscript/memcached-client: use ByteArray? on set

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/actionscript/memcached-client/trunk/MemcachedClient.as

    r4957 r5321  
    33// BSD License or meshi-ogoru license 
    44 
     5// TODO: recv_bufをByteArary化 
    56// はらへった。 
    67 
     
    2627          ExternalInterface.addCallback('connect', connect); 
    2728          ExternalInterface.addCallback('close', close); 
    28           ExternalInterface.addCallback('set', set); 
     29          ExternalInterface.addCallback('set', js_set); 
    2930          ExternalInterface.addCallback('get', get); 
    3031        } catch (e:SecurityError) { 
     
    5758      socket.close(); 
    5859    } 
    59     // set 
     60    public function js_set(key:String, value:String, 
     61                           exptime:uint = 0, flags:uint = 0):void { 
     62      var vb:ByteArray = new ByteArray(); 
     63      vb.writeUTFBytes(value); 
     64      set(key, vb, exptime, flags); 
     65    } 
    6066    // TODO: prepend invalid key/value 
    61     public function set(key:String, value:String, exptime:uint = 0, 
     67    public function set(key:String, value:ByteArray, exptime:uint = 0, 
    6268                        flags:uint = 0):void { 
    6369      send_storage_cmd('set', key, flags, exptime, value); 
    6470    } 
    65     // get 
    6671    public function get(keys:Array):void { 
    6772      send_retrieval_cmd('get', keys); 
     
    7277    public function send_storage_cmd(command_name:String, key:String, 
    7378                                     flags:uint, 
    74                                      exptime:uint, bytes:String):void { 
    75       var b:ByteArray = new ByteArray(); 
    76       b.writeUTFBytes(bytes); 
    77       var command:String = new Array(command_name, key, flags, exptime, b.length).join(' '); 
     79                                     exptime:uint, bytes:ByteArray):void { 
     80      var command:String = new Array(command_name, key, flags, exptime, bytes.length).join(' '); 
    7881      recv_info = {'command': command_name, 
    7982                   'key': key, 
     
    8285                   'bytes': bytes 
    8386                  }; 
    84       send_line(command); 
    85       send_line(bytes); 
     87      send_line_str(command); 
     88      send_line_bytes(bytes); 
    8689    } 
    8790 
     
    9194                  }; 
    9295      var command:String = command_name + ' ' + keys.join(' '); 
    93       send_line(command); 
     96      send_line_str(command); 
    9497    } 
    9598 
    96     public function send_line(data:String):void { 
     99    public function send_line_str(data:String):void { 
    97100      if (!socket || !socket.connected) return; 
    98101      socket.writeUTFBytes(data); 
     
    101104    } 
    102105 
    103     // return lines handled 
     106    public function send_line_bytes(data:ByteArray):void { 
     107      if (!socket || !socket.connected) return; 
     108      socket.writeBytes(data); 
     109      socket.writeUTFBytes('\r\n'); 
     110      socket.flush(); 
     111    } 
     112 
     113    // returns handled lines 
    104114    // TODO: error handling 
    105115    public function on_lines(lines:Array):uint {