Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gui2.0 #466

Open
wants to merge 21 commits into
base: master
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
ec6b88e
Get rid of DEBUG_MODE define (already have DEBUG define)
djbe Sep 17, 2011
133bdae
Modernize project
djbe Sep 18, 2011
0d4ab13
Small simplification of helpertool
djbe Sep 18, 2011
1ac109b
WIP: basic source structure in place.
djbe Sep 22, 2011
52a3f5a
Got rid of DSLogger and replaced it with a handier DLog macro (togeth…
djbe Sep 22, 2011
3624e0f
Fix ambiguous method (initWithObjects:count:) compilation errors unde…
atnan Sep 22, 2011
6d3938e
Merge pull request #50 from atnan/fixclang2errors
johnezang Sep 22, 2011
09e2fe4
Converted CoreWLAN evidence to source
djbe Sep 22, 2011
fd68f20
Moved external source files to their own directory
djbe Sep 22, 2011
9237081
Use KVOAdditions from Devin Lane (shiftedbits.org)
djbe Sep 22, 2011
678de5a
Merge branch 'master' of git://github.com/johnezang/JSONKit into dev_…
djbe Sep 22, 2011
469cc7d
Automatically start/stop source on rule (de)registration, and some ot…
djbe Sep 23, 2011
b00526a
Converted RunningApps evidence to source
djbe Sep 23, 2011
4f820e2
woops
djbe Sep 23, 2011
948bbb7
Improved how rules are registered a bit
djbe Sep 23, 2011
5e5a7c0
Added rule factory (ruleManager)
djbe Sep 24, 2011
6c06cd3
Remove converted evidencesources (audioOutput, power, runningapps)
djbe Sep 24, 2011
75fc6a8
Convert bonjour evidence to rule (and get rid of it)
djbe Sep 24, 2011
25815d0
Converted WLAN evidence to rules (ssid and bssid)
djbe Sep 24, 2011
a6a0c0e
Small cleanup
dustinrue Sep 26, 2011
290094f
Getting ready for context groups
dustinrue Sep 26, 2011
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Automatically start/stop source on rule (de)registration, and some ot…
…her small stuff
djbe committed Sep 23, 2011
commit 469cc7dfbbc809ff4c4a4c62cac054b29f61df9b
4 changes: 0 additions & 4 deletions Source/AudioOutputSource.m
Original file line number Diff line number Diff line change
@@ -35,10 +35,6 @@ + (void) load {
[[SourcesManager sharedSourcesManager] registerSourceType: self];
}

- (NSString *) name {
return @"Audio Output";
}

- (void) addObserver: (Rule *) rule {
SEL selector = NSSelectorFromString(@"sourceChangedWithOld:andNew:");

4 changes: 0 additions & 4 deletions Source/BonjourSource.m
Original file line number Diff line number Diff line change
@@ -54,10 +54,6 @@ + (void) load {
[[SourcesManager sharedSourcesManager] registerSourceType: self];
}

- (NSString *) name {
return @"Bonjour";
}

- (void) addObserver: (Rule *) rule {
SEL selector = NSSelectorFromString(@"servicesChangedWithOld:andNew:");

3 changes: 3 additions & 0 deletions Source/CallbackSource.h
Original file line number Diff line number Diff line change
@@ -11,6 +11,9 @@
@interface CallbackSource : Source

// implemented by subclasses
+ (void) load;
- (void) addObserver: (Rule *) rule;
- (void) removeObserver: (Rule *) rule;
- (void) registerCallback;
- (void) unregisterCallback;
- (void) checkData;
14 changes: 14 additions & 0 deletions Source/CallbackSource.m
Original file line number Diff line number Diff line change
@@ -29,6 +29,20 @@ - (void) stop {
self.running = NO;
}

#pragma mark - Subclass functions

+ (void) load {
[self doesNotRecognizeSelector: _cmd];
}

- (void) addObserver: (Rule *) rule {
[self doesNotRecognizeSelector: _cmd];
}

- (void) removeObserver: (Rule *) rule {
[self doesNotRecognizeSelector: _cmd];
}

- (void) registerCallback {
[self doesNotRecognizeSelector: _cmd];
}
7 changes: 5 additions & 2 deletions Source/LoopingSource.h
Original file line number Diff line number Diff line change
@@ -12,9 +12,12 @@
@protected NSTimeInterval m_interval;
}

@property (readwrite, assign) NSTimeInterval interval;

// implemented by subclasses
+ (void) load;
- (void) addObserver: (Rule *) rule;
- (void) removeObserver: (Rule *) rule;
- (void) checkData;

@property (readwrite, assign) NSTimeInterval interval;

@end
16 changes: 15 additions & 1 deletion Source/LoopingSource.m
Original file line number Diff line number Diff line change
@@ -17,7 +17,7 @@ - (id) init {
if (!self)
return nil;

self.running = NO;
self.interval = 10.0;

return self;
}
@@ -52,6 +52,20 @@ - (void) stop {
self.running = NO;
}

#pragma mark - Subclass functions

+ (void) load {
[self doesNotRecognizeSelector: _cmd];
}

- (void) addObserver: (Rule *) rule {
[self doesNotRecognizeSelector: _cmd];
}

- (void) removeObserver: (Rule *) rule {
[self doesNotRecognizeSelector: _cmd];
}

- (void) checkData {
[self doesNotRecognizeSelector: _cmd];
}
4 changes: 0 additions & 4 deletions Source/PowerSource.m
Original file line number Diff line number Diff line change
@@ -36,10 +36,6 @@ + (void) load {
[[SourcesManager sharedSourcesManager] registerSourceType: self];
}

- (NSString *) name {
return @"Power";
}

- (void) addObserver: (Rule *) rule {
SEL selector = NSSelectorFromString(@"statusChangedWithOld:andNew:");

8 changes: 7 additions & 1 deletion Source/Rule.h
Original file line number Diff line number Diff line change
@@ -8,8 +8,14 @@

@interface Rule : NSObject {
BOOL m_enabled;
BOOL m_match;
}

@property (readwrite, assign) BOOL enabled;
// implemented by subclasses
- (void) beingEnabled;
- (void) beingDisabled;

@property (readwrite, assign, nonatomic) BOOL enabled;
@property (readwrite, assign) BOOL match;

@end
24 changes: 23 additions & 1 deletion Source/Rule.m
Original file line number Diff line number Diff line change
@@ -11,18 +11,40 @@
@implementation Rule

@synthesize enabled = m_enabled;
@synthesize match = m_match;

- (id) init {
self = [super init];
if (!self)
return nil;

self.enabled = NO;
self.match = NO;

return self;
}

- (void) dealloc {

[super dealloc];
}

- (void) setEnabled: (BOOL) enabled {
if (!m_enabled && enabled)
[self beingEnabled];
else if (m_enabled && !enabled)
[self beingDisabled];

m_enabled = enabled;
}

#pragma mark - Subclass functions

- (void) beingEnabled {
[self doesNotRecognizeSelector: _cmd];
}

- (void) beingDisabled {
[self doesNotRecognizeSelector: _cmd];
}

@end
4 changes: 3 additions & 1 deletion Source/Source.h
Original file line number Diff line number Diff line change
@@ -10,13 +10,15 @@

@interface Source : NSObject {
@private BOOL m_running;
@private unsigned int m_listenersCount;
}

@property (readwrite, assign) BOOL running;
@property (readwrite, assign, nonatomic) unsigned int listenersCount;
@property (readonly, copy, nonatomic) NSString *name;

// implemented by subclasses
+ (void) load;
- (NSString *) name;
- (void) addObserver: (Rule *) rule;
- (void) removeObserver: (Rule *) rule;
- (void) start;
21 changes: 16 additions & 5 deletions Source/Source.m
Original file line number Diff line number Diff line change
@@ -12,29 +12,40 @@
@implementation Source

@synthesize running = m_running;
@synthesize listenersCount = m_listenersCount;

- (id) init {
self = [super init];
if (!self)
return nil;

self.running = NO;

self.listenersCount = 0;

return self;
}

- (void) dealloc {
[super dealloc];
}

#pragma mark - Subclass functions

+ (void) load {
- (void) setListenersCount: (unsigned int) listenersCount {
if (!self.running && listenersCount > 0)
[self start];
else if (self.running && listenersCount == 0)
[self stop];

m_listenersCount = listenersCount;
}

- (NSString *) name {
return NSStringFromClass([self class]);
}

#pragma mark - Subclass functions

+ (void) load {
[self doesNotRecognizeSelector: _cmd];
return nil;
}

- (void) addObserver: (Rule *) rule {
3 changes: 3 additions & 0 deletions Source/SourcesManager.m
Original file line number Diff line number Diff line change
@@ -76,6 +76,7 @@ - (void) registerRule: (Rule *) rule toSource: (NSString *) source {

ZAssert(sourceInstance != nil, @"Unknown source: %@", source);
[sourceInstance addObserver: rule];
sourceInstance.listenersCount++;
}

- (void) unRegisterRule: (Rule *) rule fromSource: (NSString *) source {
@@ -85,7 +86,9 @@ - (void) unRegisterRule: (Rule *) rule fromSource: (NSString *) source {
Source *sourceInstance = [m_sources objectForKey: source];

ZAssert(sourceInstance != nil, @"Unknown source: %@", source);
ZAssert(sourceInstance.listenersCount > 0, @"Source has no listeners!");
[sourceInstance removeObserver: rule];
sourceInstance.listenersCount--;
}

#pragma mark - Other functions
4 changes: 0 additions & 4 deletions Source/WLANSource.m
Original file line number Diff line number Diff line change
@@ -38,10 +38,6 @@ + (void) load {
[[SourcesManager sharedSourcesManager] registerSourceType: self];
}

- (NSString *) name {
return @"WLAN";
}

- (void) addObserver: (Rule *) rule {
SEL selector = NSSelectorFromString(@"networksChangedWithOld:andNew:");