Improve UUID translation in nodes
[pithos-macos] / pithos-macos / PithosNode.h
index 82a1ba9..0708bb9 100644 (file)
 #define PithosNodeStateRefreshFinished 3
 
 @class PithosNodeInfoController;
+@class PithosAccount;
+@class ASIPithos;
+@class ASIPithosAccount;
 @class ASIPithosContainer;
 @class ASIPithosObject;
+@class ASIPithosRequest;
 
 @interface PithosNode : NSObject {
     NSInteger freshness;
+    BOOL forcedRefresh;
     
     NSString *url;    
     
-    PithosNode *parent;
+    PithosAccount *__unsafe_unretained pithosAccountManager;
+    PithosNode *__unsafe_unretained parent;
+    BOOL shared;
+    NSString *sharingAccount;
     NSMutableArray *children;
     NSMutableArray *newChildren;
+    NSString *childrenUpdatedNotificationName;
+    BOOL inheritChildrenUpdatedNotificationName;
     
     NSString *displayName;
     BOOL isLeafItem;
     PithosNodeInfoController *pithosNodeInfoController;
 }
 
-@property(nonatomic, assign) PithosNode *parent;
-@property(readonly) NSString *url;
-@property(readonly) NSArray *children;
-@property(readonly) NSString *displayName;
-@property(readonly) BOOL isLeafItem;
-@property(readonly) NSImage *icon;
+@property(nonatomic, assign) BOOL forcedRefresh;
 
-@property(nonatomic, retain) ASIPithosContainer *pithosContainer;
-@property(nonatomic, retain) ASIPithosObject *pithosObject;
+@property(unsafe_unretained, nonatomic, readonly) NSString *url;
+
+@property(nonatomic, unsafe_unretained) PithosAccount *pithosAccountManager;
+@property(nonatomic, unsafe_unretained) PithosNode *parent;
+@property(nonatomic, assign) BOOL shared;
+@property(nonatomic, strong) NSString *sharingAccount;
+@property(unsafe_unretained, nonatomic, readonly) NSArray *children;
+@property(nonatomic, strong) NSString *childrenUpdatedNotificationName;
+@property(nonatomic, assign) BOOL inheritChildrenUpdatedNotificationName;
+
+@property(nonatomic, strong) NSString *displayName;
+@property(nonatomic, readonly) BOOL isLeafItem;
+
+@property(nonatomic, strong) NSImage *icon;
+
+@property(nonatomic, strong) ASIPithos *pithos;
+@property(nonatomic, strong) ASIPithosAccount *pithosAccount;
+@property(nonatomic, strong) ASIPithosContainer *pithosContainer;
+@property(nonatomic, strong) ASIPithosObject *pithosObject;
+
+- (id)initWithPithosAccountManager:(PithosAccount *)aPithosAccountManager;
 
 - (void)invalidateChildren;
 - (void)invalidateChildrenRecursive;
+- (void)refresh;
+- (void)forceRefresh;
+
+- (void)postChildrenUpdatedNotificationName;
 
 - (void)showPithosNodeInfo:(id)sender;
 - (void)pithosNodeInfoWillClose:(id)sender;
 
+- (void)pithosNodeWillBeRemoved;
+
+- (void)performRequestFinishedDelegateInBackground:(ASIPithosRequest *)request;
+- (void)performRequestFailedDelegateInBackground:(ASIPithosRequest *)request;
+
 @end
\ No newline at end of file