Diffusion Apple API  6.10.3
Unified Client Library for iOS, tvOS and OS X / macOS
 All Classes Files Functions Variables Enumerations Enumerator Properties Pages
Instance Methods | List of all members
PTDiffusionPartialJSONUpdateConstraint Class Reference

Introduction

A constraint requiring the current value of a JSON topic to match the partially described value.

The Swift code:

let constraint = try PTDiffusionUpdateConstraint
    .jsonValue()
    .withStringValue(idValue, atPointer: "/id")
    .without("/cancellation")

creates a constraint for a JSON object with a specific ID value and no value for a "cancellation" property.

Missing keys are matched differently to keys that are present with null values.

Since
6.3
Inheritance diagram for PTDiffusionPartialJSONUpdateConstraint:
PTDiffusionUpdateConstraint

Instance Methods

(nullable instancetype) - withNullAt:error:
 
(nullable instancetype) - without:error:
 
(nullable instancetype) - withBinaryValue:atPointer:comparisonOperator:error:
 
(nullable instancetype) - withDoubleValue:atPointer:error:
 
(nullable instancetype) - withDoubleValue:atPointer:comparisonOperator:error:
 
(nullable instancetype) - withDoubleFloatNumberValue:atPointer:error:
 
(nullable instancetype) - withDoubleFloatNumberValue:atPointer:comparisonOperator:error:
 
(nullable instancetype) - withLongLongValue:atPointer:error:
 
(nullable instancetype) - withLongLongValue:atPointer:comparisonOperator:error:
 
(nullable instancetype) - withInt64NumberValue:atPointer:error:
 
(nullable instancetype) - withInt64NumberValue:atPointer:comparisonOperator:error:
 
(nullable instancetype) - withStringValue:atPointer:error:
 
(nullable instancetype) - withStringValue:atPointer:comparisonOperator:error:
 
(nullable instancetype) - withBooleanValue:atPointer:comparisonOperator:error:
 
- Instance Methods inherited from PTDiffusionUpdateConstraint
(nullable instancetype) - andConstraint:error:
 
(nullable instancetype) - orConstraint:error:
 

Additional Inherited Members

- Class Methods inherited from PTDiffusionUpdateConstraint
(instancetype) + lockedWithLock:
 
(instancetype) + noValue
 
(instancetype) + noTopic
 
(PTDiffusionPartialJSONUpdateConstraint *) + jsonValue
 

Method Documentation

- (nullable instancetype) withBinaryValue: (nonnull NSData *)  value
atPointer: (nonnull NSString *)  pointer
comparisonOperator: (nonnull PTDiffusionUpdateConstraintOperator *)  comparisonOperator
error: (NSError *__autoreleasing *const)  error 

Compares a location within the JSON topic value to a specified value.

If there is no value found at the specified pointer position, the constraint will be unsatisfied.

Only the operator IS) can be used with binary values.

Parameters
valueThe value to be compared against the topic value.
pointerA JSON Pointer) syntax reference locating the value in the JSON object. comparisonOperator The comparison operator. See PTDiffusionUpdateConstraintOperator.
errorLocation to store a reason in case of failure. May be nil.
Returns
The new constraint, or nil on failure.
Since
6.10

Provided by category PTDiffusionPartialJSONUpdateConstraint(PTDiffusionBinary).

- (nullable instancetype) withBooleanValue: (bool)  value
atPointer: (nonnull NSString *)  pointer
comparisonOperator: (nonnull PTDiffusionUpdateConstraintOperator *)  comparisonOperator
error: (NSError *__autoreleasing *const)  error 

Compares a location within the JSON topic value to a boolean specified value.

If there is no value found at the specified pointer position, the constraint will be unsatisfied.

If the operator is EQ, the topic value at the given pointer will be compared to the boolean value. Other operators are not permitted with a boolean value.

Parameters
valueThe value to be compared against the topic value.
pointerA JSON Pointer) syntax reference locating the value in the JSON object. comparisonOperator The comparison operator. See PTDiffusionUpdateConstraintOperator.
errorLocation to store a reason in case of failure. May be nil.
Returns
The new constraint, or nil on failure.
Since
6.10

Provided by category PTDiffusionPartialJSONUpdateConstraint(PTDiffusionPrimitive).

- (nullable instancetype) withDoubleFloatNumberValue: (nonnull NSNumber *)  number
atPointer: (nonnull NSString *)  pointer
comparisonOperator: (nonnull PTDiffusionUpdateConstraintOperator *)  comparisonOperator
error: (NSError *__autoreleasing *const)  error 

Compares a location within the JSON topic value to a double-precision floating point (Eight-byte IEEE 754) specified number.

If there is no value found at the specified pointer position, the constraint will be unsatisfied.

The value will be compared with the number value at the topic location. This will work with JSON string or number values only. JSON strings can only be compared if they contain a value that can be parsed as a number. If a string value at the location cannot be parsed as a number, the constraint will be unsatisfied.

Any of the operators (other than IS) can be used with such number comparisons.

Decimal numbers can be compared with integral numbers so 1 is equal to 1.0, "1", or "1.0".

If a null value is supplied and the operator is EQ or NE, the topic value at the given pointer will be compared to JSON null. Other operators (other than IS) are not permitted with a null value.

Parameters
valueThe value to be compared against the topic value.
pointerA JSON Pointer) syntax reference locating the value in the JSON object. comparisonOperator The comparison operator. See PTDiffusionUpdateConstraintOperator.
errorLocation to store a reason in case of failure. May be nil.
Returns
The new constraint, or nil on failure.
Since
6.10

Provided by category PTDiffusionPartialJSONUpdateConstraint(PTDiffusionPrimitive).

- (nullable instancetype) withDoubleFloatNumberValue: (NSNumber *)  number
atPointer: (NSString *)  pointer
error: (NSError **)  error 

Require a double-precision floating point (Eight-byte IEEE 754) number value at a specific position in the JSON object.

Parameters
numberThe value expected at the location referenced by pointer.
pointerA JSON Pointer syntax reference locating the value in the JSON object.
errorLocation to store a reason in case of failure. May be nil.
Returns
Primitive instance initialized with the given number value at the given specific position in the JSON object.
Exceptions
NSInvalidArgumentExceptionIf number or pointer is nil.
Note
To match a JSON null at the referenced location use withNullAt:error:
Since
6.3
Deprecated:
since 6.10. Use instead.

Provided by category PTDiffusionPartialJSONUpdateConstraint(PTDiffusionPrimitive).

- (nullable instancetype) withDoubleValue: (double)  value
atPointer: (nonnull NSString *)  pointer
comparisonOperator: (nonnull PTDiffusionUpdateConstraintOperator *)  comparisonOperator
error: (NSError *__autoreleasing *const)  error 

Compares a location within the JSON topic value to a double-precision floating point (Eight-byte IEEE 754) specified number.

If there is no value found at the specified pointer position, the constraint will be unsatisfied.

The value will be compared with the number value at the topic location. This will work with JSON string or number values only. JSON strings can only be compared if they contain a value that can be parsed as a number. If a string value at the location cannot be parsed as a number, the constraint will be unsatisfied.

Any of the operators (other than IS) can be used with such number comparisons.

Decimal numbers can be compared with integral numbers so 1 is equal to 1.0, "1", or "1.0".

Parameters
valueThe value to be compared against the topic value.
pointerA JSON Pointer) syntax reference locating the value in the JSON object. comparisonOperator The comparison operator. See PTDiffusionUpdateConstraintOperator.
errorLocation to store a reason in case of failure. May be nil.
Returns
The new constraint, or nil on failure.
Since
6.10

Provided by category PTDiffusionPartialJSONUpdateConstraint(PTDiffusionPrimitive).

- (nullable instancetype) withDoubleValue: (double)  value
atPointer: (NSString *)  pointer
error: (NSError **)  error 

Require a double-precision floating point (Eight-byte IEEE 754) value at a specific position in the JSON object.

Parameters
valueThe value expected at the location referenced by pointer.
pointerA JSON Pointer syntax reference locating the value in the JSON object.
errorLocation to store a reason in case of failure. May be nil.
Returns
Primitive instance initialized with the given double value at the given specific position in the JSON object.
Exceptions
NSInvalidArgumentExceptionIf pointer is nil.
Since
6.3
Deprecated:
since 6.10. Use instead.

Provided by category PTDiffusionPartialJSONUpdateConstraint(PTDiffusionPrimitive).

- (nullable instancetype) withInt64NumberValue: (nonnull NSNumber *)  number
atPointer: (nonnull NSString *)  pointer
comparisonOperator: (nonnull PTDiffusionUpdateConstraintOperator *)  comparisonOperator
error: (NSError *__autoreleasing *const)  error 

Compares a location within the JSON topic value to a 64-bit integer specified value.

If there is no value found at the specified pointer position, the constraint will be unsatisfied.

The value will be compared with the number value at the topic location. This will work with JSON string or number values only. JSON strings can only be compared if they contain a value that can be parsed as a number. If a string value at the location cannot be parsed as a number, the constraint will be unsatisfied.

Any of the operators (other than IS) can be used with such number comparisons.

Decimal numbers can be compared with integral numbers so 1 is equal to 1.0, "1", or "1.0".

If a null value is supplied and the operator is EQ or NE, the topic value at the given pointer will be compared to JSON null. Other operators (other than IS) are not permitted with a null value.

Parameters
valueThe value to be compared against the topic value.
pointerA JSON Pointer) syntax reference locating the value in the JSON object. comparisonOperator The comparison operator. See PTDiffusionUpdateConstraintOperator.
errorLocation to store a reason in case of failure. May be nil.
Returns
The new constraint, or nil on failure.
Since
6.10

Provided by category PTDiffusionPartialJSONUpdateConstraint(PTDiffusionPrimitive).

- (nullable instancetype) withInt64NumberValue: (NSNumber *)  number
atPointer: (NSString *)  pointer
error: (NSError **)  error 

Require a 64-bit integer number value at a specific position in the JSON object.

Parameters
numberThe value expected at the location referenced by pointer.
pointerA JSON Pointer syntax reference locating the value in the JSON object.
errorLocation to store a reason in case of failure. May be nil.
Returns
Primitive instance initialized with the given 64-bit number value at the given specific position in the JSON object.
Exceptions
NSInvalidArgumentExceptionIf number or pointer is nil.
Note
To match a JSON null at the referenced location use withNullAt:error:
Since
6.3
Deprecated:
since 6.10. Use instead.

Provided by category PTDiffusionPartialJSONUpdateConstraint(PTDiffusionPrimitive).

- (nullable instancetype) withLongLongValue: (long long)  value
atPointer: (nonnull NSString *)  pointer
comparisonOperator: (nonnull PTDiffusionUpdateConstraintOperator *)  comparisonOperator
error: (NSError *__autoreleasing *const)  error 

Compares a location within the JSON topic value to a 64-bit integer specified value.

If there is no value found at the specified pointer position, the constraint will be unsatisfied.

The value will be compared with the number value at the topic location. This will work with JSON string or number values only. JSON strings can only be compared if they contain a value that can be parsed as a number. If a string value at the location cannot be parsed as a number, the constraint will be unsatisfied.

Any of the operators (other than IS) can be used with such number comparisons.

Decimal numbers can be compared with integral numbers so 1 is equal to 1.0, "1", or "1.0".

Parameters
valueThe value to be compared against the topic value.
pointerA JSON Pointer) syntax reference locating the value in the JSON object. comparisonOperator The comparison operator. See PTDiffusionUpdateConstraintOperator.
errorLocation to store a reason in case of failure. May be nil.
Returns
The new constraint, or nil on failure.
Since
6.10

Provided by category PTDiffusionPartialJSONUpdateConstraint(PTDiffusionPrimitive).

- (nullable instancetype) withLongLongValue: (long long)  value
atPointer: (NSString *)  pointer
error: (NSError **)  error 

Require a 64-bit integer value at a specific position in the JSON object.

Parameters
valueThe value expected at the location referenced by pointer.
pointerA JSON Pointer syntax reference locating the value in the JSON object.
errorLocation to store a reason in case of failure. May be nil.
Returns
Primitive instance initialized with the given long value at the given specific position in the JSON object.
Exceptions
NSInvalidArgumentExceptionIf pointer is nil.
Since
6.3
Deprecated:
since 6.10. Use instead.

Provided by category PTDiffusionPartialJSONUpdateConstraint(PTDiffusionPrimitive).

- (nullable instancetype) withNullAt: (NSString *)  pointer
error: (NSError **)  error 

Require a null value at a specific position in the JSON object.

Parameters
pointerA JSON Pointer syntax reference locating the null value in the JSON object.
errorLocation to store a reason in case of failure. May be nil.
Returns
A new constraint or nil if there was an error.
Exceptions
NSInvalidArgumentExceptionIf pointer is nil.
Since
6.3
- (nullable instancetype) without: (NSString *)  pointer
error: (NSError **)  error 

Require a specific position in the JSON object to be absent. This does not match positions that have null values.

Parameters
pointerA JSON Pointer syntax reference that should have no value in the JSON object.
errorLocation to store a reason in case of failure. May be nil.
Returns
A new constraint or nil if there was an error.
Exceptions
NSInvalidArgumentExceptionIf the pointer argument is nil.
Since
6.3
- (nullable instancetype) withStringValue: (nonnull NSString *)  string
atPointer: (nonnull NSString *)  pointer
comparisonOperator: (nonnull PTDiffusionUpdateConstraintOperator *)  comparisonOperator
error: (NSError *__autoreleasing *const)  error 

Compares a location within the JSON topic value to a string specified value.

If there is no value found at the specified pointer position, the constraint will be unsatisfied.

If the operator is EQ or NE, the string representation of the topic value at the given pointer will be compared to the supplied value.

If the value at the pointer position is not a string or number the constraint will be unsatisfied. Other operators (other than IS) are not permitted with String values.

If a null value is supplied and the operator is EQ or NE, the topic value at the given pointer will be compared to JSON null. Other operators (other than IS) are not permitted with a null value.

Parameters
valueThe value to be compared against the topic value.
pointerA JSON Pointer) syntax reference locating the value in the JSON object. comparisonOperator The comparison operator. See PTDiffusionUpdateConstraintOperator.
errorLocation to store a reason in case of failure. May be nil.
Returns
The new constraint, or nil on failure.
Since
6.10

Provided by category PTDiffusionPartialJSONUpdateConstraint(PTDiffusionPrimitive).

- (nullable instancetype) withStringValue: (NSString *)  string
atPointer: (NSString *)  pointer
error: (NSError **)  error 

Require a string value at a specific position in the JSON object.

Parameters
stringThe value expected at the location referenced by pointer.
pointerA JSON Pointer syntax reference locating the value in the JSON object.
errorLocation to store a reason in case of failure. May be nil.
Returns
Primitive instance initialized with the given string value at the given specific position in the JSON object.
Exceptions
NSInvalidArgumentExceptionIf string or pointer is nil.
Note
To match a JSON null at the referenced location use withNullAt:error:
Since
6.3
Deprecated:
since 6.10. Use instead.

Provided by category PTDiffusionPartialJSONUpdateConstraint(PTDiffusionPrimitive).