ArcGIS Runtime SDK for iOS: AGSPortalItem.h Source File
ArcGIS Runtime SDK for iOS  100.9
AGSPortalItem.h
Go to the documentation of this file.
1 /*
2  COPYRIGHT 1995-2020 ESRI
3 
4  TRADE SECRETS: ESRI PROPRIETARY AND CONFIDENTIAL
5  Unpublished material - all rights reserved under the
6  Copyright Laws of the United States and applicable international
7  laws, treaties, and conventions.
8 
9  For additional information, contact:
10  Environmental Systems Research Institute, Inc.
11  Attn: Contracts and Legal Services Department
12  380 New York Street
13  Redlands, California, 92373
14  USA
15 
16  email: contracts@esri.com
17  */
18  //Required for Globals API doc
20 
21 #import <ArcGIS/AGSItem.h>
22 #import <ArcGIS/AGSLoadable.h>
23 #import <ArcGIS/AGSJSONSerializable.h>
24 #import <ArcGIS/AGSPortalTypes.h>
25 
26 
27 
28 @class AGSEnvelope;
29 @class AGSPortal;
31 @class AGSLoadableImage;
32 @class AGSLoadableValue;
33 @class AGSPortalGroup;
34 
45 
46 #pragma mark -
47 #pragma mark initializers
48 
49 
50 
62 -(instancetype)initWithPortal:(AGSPortal*)portal itemID:(NSString*)itemID;
63 
75 +(instancetype)portalItemWithPortal:(AGSPortal*)portal itemID:(NSString*)itemID;
76 
84 -(instancetype)initWithPortal:(AGSPortal*)portal type:(AGSPortalItemType)type;
85 
93 +(instancetype)portalItemWithPortal:(AGSPortal*)portal type:(AGSPortalItemType)type;
94 
100 +(nullable AGSPortalItem *)fromJSON:(id)JSONObject withPortal:(AGSPortal*)portal error:(NSError**)error;
101 
111 -(nullable instancetype)initWithURL:(NSURL*)URL;
112 
122 +(nullable instancetype)portalItemWithURL:(NSURL*)URL;
123 
124 #pragma mark -
125 #pragma mark properties
126 
130 @property (nonatomic, strong, readonly) AGSPortal *portal;
131 
135 @property (nullable, nonatomic, strong, readonly) NSURL *serviceURL;
136 
140 @property (nonatomic, copy, readonly) NSString *folderID;
141 
145 @property (nonatomic, copy, readwrite) NSString *owner;
146 
150 @property (nonatomic, assign, readwrite) AGSPortalItemType type;
151 
155 @property (nonatomic, copy, readonly) NSString *typeName;
156 
160 @property (nullable, nonatomic, strong, readonly) NSLocale *locale;
161 
165 @property (nonatomic, assign, readonly) long long size;
166 
170 @property (nonatomic, assign, readonly) NSInteger commentCount;
171 
175 @property (nonatomic, assign, readonly) NSInteger ratingCount;
176 
180 @property (nonatomic, assign, readonly) CGFloat averageRating;
181 
186 @property (nonatomic, assign, readonly) NSInteger viewCount;
187 
194 @property (nonatomic, assign, readonly) AGSPortalAccess access;
195 
199 @property (nullable, nonatomic, copy, readonly) NSArray<AGSPortalItemComment*> *comments;
200 
204 @property (nonatomic, assign, readonly) BOOL commentsEnabled;
205 
212 @property (nullable, nonatomic, strong, readonly) AGSLoadableValue *userRating;
213 
218 @property (nullable, nonatomic, copy, readonly) NSArray<AGSPortalGroup*> *adminGroups;
219 
224 @property (nullable, nonatomic, copy, readonly) NSArray<AGSPortalGroup*> *memberGroups;
225 
231 @property (nullable, nonatomic, copy, readonly) NSArray<AGSPortalGroup*> *otherGroups;
232 
233 #pragma mark -
234 #pragma mark methods
235 
241 -(id<AGSCancelable>)fetchCommentsWithCompletion:(nullable void(^)(NSArray<AGSPortalItemComment*> * __nullable comments, NSError * __nullable error))completion;
242 
248 -(id<AGSCancelable>)fetchGroupsWithCompletion:(nullable void(^)(NSArray<AGSPortalGroup*> * __nullable adminGroups, NSArray<AGSPortalGroup*> * __nullable memberGroups, NSArray<AGSPortalGroup*> * __nullable otherGroups, NSError * __nullable error))completion;
249 
260 -(id<AGSCancelable>)addRating:(CGFloat)rating completion:(nullable void(^)(NSError * __nullable error))completion;
261 
268 -(id<AGSCancelable>)addComment:(NSString*)comment completion:(nullable void(^)(AGSPortalItemComment * __nullable resultComment, NSError * __nullable error))completion;
269 
278 -(id<AGSCancelable>)updateDataWithJSON:(id)json completion:(nullable void(^)(NSError * __nullable error))completion;
279 
288 -(id<AGSCancelable>)updateData:(NSData*)data completion:(nullable void(^)(NSError * __nullable error))completion;
289 
304 -(id<AGSCancelable>)shareWithEveryone:(BOOL)everyone org:(BOOL)org completion:(nullable void(^)(NSError * __nullable error))completion;
305 
316 -(id<AGSCancelable>)shareWithGroups:(NSArray<AGSPortalGroup*> *)groups completion:(nullable void(^)(NSArray<AGSPortalGroup*> * __nullable excludedGroups, NSError * __nullable error))completion;
317 
326 -(id<AGSCancelable>)unshareWithCompletion:(nullable void(^)(NSError * __nullable error))completion;
327 
338 -(id<AGSCancelable>)unshareWithGroups:(NSArray<AGSPortalGroup*> *)groups completion:(nullable void(^)(NSArray<AGSPortalGroup*> * __nullable excludedGroups, NSError * __nullable error))completion;
339 
345 -(__nullable id)toJSON:(NSError**)error;
346 
347 @end
348 
350 
358 -(instancetype)initWithPortal:(AGSPortal *)portal ;
359 
367 +(instancetype)portalItemWithPortal:(AGSPortal *)portal ;
368 
373 @property (nonatomic, copy, readwrite) NSString *accessAndUseConstraintsHtml ;
378 @property (nonatomic, copy, readonly) NSString *GUID __deprecated;
379 
380 @end
381 
382 
Represents a group within the Portal or Organization.
Definition: AGSPortalGroup.h:58
AGSPortalItemType
Definition: AGSPortalTypes.h:27
NSInteger commentCount
Definition: AGSPortalItem.h:170
AGSPortalItemType type
Definition: AGSPortalItem.h:150
NSURL * serviceURL
Definition: AGSPortalItem.h:135
AGSLoadableValue * userRating
Definition: AGSPortalItem.h:212
A comment for a portal&#39;s item.
Definition: AGSPortalItemComment.h:29
CGFloat averageRating
Definition: AGSPortalItem.h:180
long long size
Definition: AGSPortalItem.h:165
NSString * folderID
Definition: AGSPortalItem.h:140
An image that is loaded asynchronously.
Definition: AGSLoadableImage.h:27
NSArray< AGSPortalGroup * > * memberGroups
Definition: AGSPortalItem.h:224
A geometry that represents a rectangular shape.
Definition: AGSEnvelope.h:47
A protocol adopted by classes that can load data asynchronously.
Definition: AGSLoadable.h:66
Object representing a unit of content in an ArcGIS portal.
Definition: AGSPortalItem.h:44
A value that is loaded asynchronously.
Definition: AGSLoadableValue.h:27
NSArray< AGSPortalGroup * > * adminGroups
Definition: AGSPortalItem.h:218
A protocol to convert objects to and from JSON.
Definition: AGSJSONSerializable.h:32
Object representing a unit of content.
Definition: AGSItem.h:36
NSInteger ratingCount
Definition: AGSPortalItem.h:175
AGSPortalAccess
Definition: AGSPortalTypes.h:245
NSArray< AGSPortalItemComment * > * comments
Definition: AGSPortalItem.h:199
NSInteger viewCount
Definition: AGSPortalItem.h:186
Definition: AGSPortalItem.h:349
AGSPortalAccess access
Definition: AGSPortalItem.h:194
BOOL commentsEnabled
Definition: AGSPortalItem.h:204
NSString * owner
Definition: AGSPortalItem.h:145
NSString * typeName
Definition: AGSPortalItem.h:155
NSLocale * locale
Definition: AGSPortalItem.h:160
NSArray< AGSPortalGroup * > * otherGroups
Definition: AGSPortalItem.h:231
An Object representing a Portal for ArcGIS.
Definition: AGSPortal.h:98
A protocol exposed by operations that allow cancellation.
Definition: AGSCancelable.h:32