File: FakeRCTBlobManager.m

package info (click to toggle)
onnxruntime 1.23.2%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 340,744 kB
  • sloc: cpp: 3,222,135; python: 188,267; ansic: 114,318; asm: 37,927; cs: 36,849; java: 10,962; javascript: 6,811; pascal: 4,126; sh: 2,996; xml: 705; objc: 281; makefile: 67
file content (47 lines) | stat: -rw-r--r-- 1,129 bytes parent folder | download | duplicates (4)
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.

#import <Foundation/Foundation.h>
#import "FakeRCTBlobManager.h"

@implementation FakeRCTBlobManager

- (instancetype)init {
  if (self = [super init]) {
    _blobs = [NSMutableDictionary new];
  }
  return self;
}

- (NSString*)store:(NSData*)data {
  NSString* blobId = [[NSUUID UUID] UUIDString];
  _blobs[blobId] = data;
  return blobId;
}

- (NSData*)resolve:(NSString*)blobId offset:(long)offset size:(long)size {
  NSData* data = _blobs[blobId];
  if (data == nil) {
    return nil;
  }
  return [data subdataWithRange:NSMakeRange(offset, size)];
}

- (NSDictionary*)testCreateData:(NSData*)buffer {
  NSString* blobId = [self store:buffer];
  return @{
    @"blobId" : blobId,
    @"offset" : @0,
    @"size" : @(buffer.length),
  };
}

- (NSString*)testGetData:(NSDictionary*)data {
  NSString* blobId = [data objectForKey:@"blobId"];
  long size = [[data objectForKey:@"size"] longValue];
  long offset = [[data objectForKey:@"offset"] longValue];
  [self resolve:blobId offset:offset size:size];
  return blobId;
}

@end