// // P4Message.h // Pulse // // Created by Matt Attaway on 2/16/14. // Copyright (c) 2014 Zen of the Monkey. All rights reserved. // #import <Foundation/Foundation.h> @interface P4Message : NSObject @property (strong) NSMutableDictionary* results; @property (strong) NSString* message; @property (strong) NSString* error; @property (strong) NSMutableArray* list; -(BOOL)isLoginError; -(BOOL)isUnicodeError; -(BOOL)isConnectionError; @end
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#4 | 8723 | Matt Attaway |
Continuously update state on opened files Automatically checking out files is all well and good, but there’s a problem; frequently in the course of working on files, before you commit, files will go through a number of different states. You may edit a file, then delete it, and then re-add it unchanged all before trying to commit. At the end of the process in the case above nothing should happen, but if you edit a file and never revisit it you are stuck with that initial edit. Pulse now runs a non-destructive revert on files when it receives an event notification. This resets the working state so that if there is a major change (from edit -> delete) we can properly catch it and tell the system. It also is handy for dealing with added files that you then delete. There are edge cases with this code that I’m confident are not handled correctly. The good news is nothing should be destructive; the worse that happens is you revert -k everything and re-run reconcile. User visible change |
||
#3 | 8595 | Matt Attaway |
WIP on handling connection errors With this change we report the errors to our delegate, but we don’t attempt to recover. That will come with the next checkin. This change does add in the protocol for handling these errors. User visible change |
||
#2 | 8574 | Matt Attaway |
Move message parsing smarts into P4Message. This minimizes how much PLSOverseer knows about Perforce which seems like a good thing from an architecture point of view and makes the P4 group more reusable. No functional change. |
||
#1 | 8569 | Matt Attaway |
Rejigger P4Connection to use a standard return type The previous mechanism made it hard to return anything but error messages. With the P4Message object we can return dictionaries, lists, and messages with a single object. I can use the new object more intelligently, but that’s for another change. I also reorganized the code to separate the ‘p4’ layer off into its own potentially reusable bucket. No functional change. |