Advertisement
Guest User

Untitled

a guest
Apr 16th, 2014
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.53 KB | None | 0 0
  1. private function onCreationComplete(event:FlexEvent):void{
  2. app = S4M(this.parentApplication);
  3. var service:HTTPService;
  4. loadSubsymbols();
  5.  
  6. // *************************************************
  7. // generateRequest
  8. // *************************************************
  9. function loadSubsymbols():void {
  10. service = new HTTPService();
  11. var action_url:String = "subsymbols.json";
  12. service.url = api_url + action_url;
  13. service.method = "GET";
  14. service.addEventListener(ResultEvent.RESULT, httpResult);
  15. service.addEventListener(FaultEvent.FAULT, httpFault);
  16. service.contentType = "application/json"
  17. service.headers = { Accept:"application/json" };
  18. service.send();
  19. }
  20. }
  21.  
  22. // *************************************************
  23. // connectionSuccess
  24. // *************************************************
  25. private function httpResult(event:ResultEvent):void {
  26. var json:String = event.result as String;
  27. var obj:Object = JSON.decode(json);
  28. var tree:Object = obj.tree;
  29. treeView.dataProvider = object2json(tree);
  30. //MonsterDebugger.trace(this, treeView.dataProvider);
  31. MonsterDebugger.trace(this, treeView.selectedItem.label);
  32. }
  33.  
  34. // *************************************************
  35. // generateJSONfromObject
  36. // *************************************************
  37. private function object2json(node:Object):Object{
  38. var name:String = node.name;
  39. var children:Array = new Array();
  40. if(isThereChildren(node)){
  41. for(var child:String in node.children){
  42. children.push(object2json(node.children[child]));
  43. }
  44. }
  45.  
  46. if(isThereSubsymbols(node)){
  47. children.push(object2json(node.subsymbols[0]));
  48. }
  49.  
  50. if(doYouHaveSomething(node)){
  51. return {label: name, children: children}
  52. }else{
  53. return {label: name}
  54. }
  55. }
  56.  
  57. private function isThereChildren(nd:Object):Boolean{
  58. return nd.children
  59. }
  60.  
  61. private function isThereSubsymbols(nd:Object):Boolean{
  62. return nd.subsymbols
  63. }
  64.  
  65. private function doYouHaveSomething(nd:Object):Boolean{
  66. return nd.children || nd.subsymbols
  67. }
  68.  
  69. // *************************************************
  70. // connectionFailure
  71. // *************************************************
  72. private function httpFault(event:FaultEvent):void {
  73. var faultstring:String = event.fault.faultString;
  74. Alert.show(faultstring);
  75. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement