1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- /*
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
- */
-
- #import <Foundation/Foundation.h>
- #import "CDVAvailability.h"
-
- typedef NS_ENUM(NSUInteger, CDVCommandStatus) {
- CDVCommandStatus_NO_RESULT NS_SWIFT_NAME(noResult) = 0,
- CDVCommandStatus_OK NS_SWIFT_NAME(ok),
- CDVCommandStatus_CLASS_NOT_FOUND_EXCEPTION NS_SWIFT_NAME(classNotFoundException),
- CDVCommandStatus_ILLEGAL_ACCESS_EXCEPTION NS_SWIFT_NAME(illegalAccessException),
- CDVCommandStatus_INSTANTIATION_EXCEPTION NS_SWIFT_NAME(instantiationException),
- CDVCommandStatus_MALFORMED_URL_EXCEPTION NS_SWIFT_NAME(malformedUrlException),
- CDVCommandStatus_IO_EXCEPTION NS_SWIFT_NAME(ioException),
- CDVCommandStatus_INVALID_ACTION NS_SWIFT_NAME(invalidAction),
- CDVCommandStatus_JSON_EXCEPTION NS_SWIFT_NAME(jsonException),
- CDVCommandStatus_ERROR NS_SWIFT_NAME(error)
- };
-
- // This exists to preserve compatibility with early Swift plugins, who are
- // using CDVCommandStatus as ObjC-style constants rather than as Swift enum
- // values.
- // This declares extern'ed constants (implemented in CDVPluginResult.m)
- #define SWIFT_ENUM_COMPAT_HACK(enumVal) extern const CDVCommandStatus SWIFT_##enumVal NS_SWIFT_NAME(enumVal)
- SWIFT_ENUM_COMPAT_HACK(CDVCommandStatus_NO_RESULT);
- SWIFT_ENUM_COMPAT_HACK(CDVCommandStatus_OK);
- SWIFT_ENUM_COMPAT_HACK(CDVCommandStatus_CLASS_NOT_FOUND_EXCEPTION);
- SWIFT_ENUM_COMPAT_HACK(CDVCommandStatus_ILLEGAL_ACCESS_EXCEPTION);
- SWIFT_ENUM_COMPAT_HACK(CDVCommandStatus_INSTANTIATION_EXCEPTION);
- SWIFT_ENUM_COMPAT_HACK(CDVCommandStatus_MALFORMED_URL_EXCEPTION);
- SWIFT_ENUM_COMPAT_HACK(CDVCommandStatus_IO_EXCEPTION);
- SWIFT_ENUM_COMPAT_HACK(CDVCommandStatus_INVALID_ACTION);
- SWIFT_ENUM_COMPAT_HACK(CDVCommandStatus_JSON_EXCEPTION);
- SWIFT_ENUM_COMPAT_HACK(CDVCommandStatus_ERROR);
- #undef SWIFT_ENUM_COMPAT_HACK
-
- @interface CDVPluginResult : NSObject {}
-
- @property (nonatomic, strong, readonly) NSNumber* status;
- @property (nonatomic, strong, readonly) id message;
- @property (nonatomic, strong) NSNumber* keepCallback;
- // This property can be used to scope the lifetime of another object. For example,
- // Use it to store the associated NSData when `message` is created using initWithBytesNoCopy.
- @property (nonatomic, strong) id associatedObject;
-
- - (CDVPluginResult*)init;
- + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal;
- + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal messageAsString:(NSString*)theMessage;
- + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal messageAsArray:(NSArray*)theMessage;
- + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal messageAsInt:(int)theMessage;
- + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal messageAsNSInteger:(NSInteger)theMessage;
- + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal messageAsNSUInteger:(NSUInteger)theMessage;
- + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal messageAsDouble:(double)theMessage;
- + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal messageAsBool:(BOOL)theMessage;
- + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal messageAsDictionary:(NSDictionary*)theMessage;
- + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal messageAsArrayBuffer:(NSData*)theMessage;
- + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal messageAsMultipart:(NSArray*)theMessages;
- + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal messageToErrorObject:(int)errorCode;
-
- + (void)setVerbose:(BOOL)verbose;
- + (BOOL)isVerbose;
-
- - (void)setKeepCallbackAsBool:(BOOL)bKeepCallback;
-
- - (NSString*)argumentsAsJSON;
-
- @end
|