-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathOGXmlJsonParser.m
33 lines (24 loc) · 915 Bytes
/
OGXmlJsonParser.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
//
// OGXmlJsonParser.m
// ReactListView
//
// Created by Onur Güngören on 12.07.15.
// Copyright (c) 2015 Facebook. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "RCTBridgeModule.h"
#import "XMLDictionary.h"
@interface OGXmlJsonParser : NSObject <RCTBridgeModule>
@end
@implementation OGXmlJsonParser
RCT_EXPORT_MODULE();
RCT_EXPORT_METHOD(transformXml:(NSString *)xmlString callback:(RCTResponseSenderBlock)callback) {
// parse XML string to NSDictionary
NSDictionary *dictionary = [[XMLDictionaryParser sharedInstance] dictionaryWithString:xmlString];
// convert NSDictionary to NSData
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dictionary options:NSJSONWritingPrettyPrinted error:nil];
// Return NSData as NSString
NSString *jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
callback(@[jsonString]);
}
@end