Compare commits
	
		
			3 Commits
		
	
	
		
			9bf353ea3a
			...
			619f348a28
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 619f348a28 | |||
| 72ccdd99f9 | |||
| c9d7399068 | 
@@ -351,7 +351,10 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
		if(applies(context))
 | 
							if(applies(context))
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			if(hasNotAppliedSinceLastExecution())
 | 
								if(hasNotAppliedSinceLastExecution())
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									Miscellaneous.logEvent("i", "getsGreenLight()", "Rule " + getName() + " applies and has flipped since its last execution.", 4);
 | 
				
			||||||
				return true;
 | 
									return true;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
			else
 | 
								else
 | 
				
			||||||
				Miscellaneous.logEvent("i", "getsGreenLight()", "Rule " + getName() + " has not flipped since its last execution.", 4);
 | 
									Miscellaneous.logEvent("i", "getsGreenLight()", "Rule " + getName() + " has not flipped since its last execution.", 4);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
@@ -434,7 +437,7 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
			
 | 
								
 | 
				
			||||||
			Thread.setDefaultUncaughtExceptionHandler(Miscellaneous.uncaughtExceptionHandler);
 | 
								Thread.setDefaultUncaughtExceptionHandler(Miscellaneous.uncaughtExceptionHandler);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			// without this line debugger will - for some reason - skip all breakpoints in this class
 | 
								// without this line the debugger will - for some reason - skip all breakpoints in this class
 | 
				
			||||||
			if(android.os.Debug.isDebuggerConnected())
 | 
								if(android.os.Debug.isDebuggerConnected())
 | 
				
			||||||
				android.os.Debug.waitForDebugger();
 | 
									android.os.Debug.waitForDebugger();
 | 
				
			||||||
			
 | 
								
 | 
				
			||||||
@@ -442,7 +445,7 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
	        	Looper.prepare();
 | 
						        	Looper.prepare();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			setLastExecution(Calendar.getInstance());
 | 
								setLastExecution(Calendar.getInstance());
 | 
				
			||||||
			wasActivated = activateInternally((AutomationService)params[0], (Boolean)params[1]);
 | 
								wasActivated = activateInternally((AutomationService)params[0]);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			return null;
 | 
								return null;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
@@ -477,24 +480,21 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
		 * Will activate the rule. Should be called by a separate execution thread
 | 
							 * Will activate the rule. Should be called by a separate execution thread
 | 
				
			||||||
		 * @param automationService
 | 
							 * @param automationService
 | 
				
			||||||
		 */
 | 
							 */
 | 
				
			||||||
		protected boolean activateInternally(AutomationService automationService, boolean force)
 | 
							protected boolean activateInternally(AutomationService automationService)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			boolean isActuallyToggable = isActuallyToggable();
 | 
								boolean isActuallyToggleable = isActuallyToggable();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			boolean notLastActive = getLastActivatedRule() == null || !getLastActivatedRule().equals(Rule.this);
 | 
								boolean notLastActive = getLastActivatedRule() == null || !getLastActivatedRule().equals(Rule.this);
 | 
				
			||||||
			boolean doToggle = ruleToggle && isActuallyToggable;
 | 
								boolean doToggle = ruleToggle && isActuallyToggleable;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			//if(notLastActive || force || doToggle)
 | 
					 | 
				
			||||||
//			if(force || doToggle)
 | 
					 | 
				
			||||||
//			{
 | 
					 | 
				
			||||||
			String message;
 | 
								String message;
 | 
				
			||||||
			if(!doToggle)
 | 
								if(!doToggle)
 | 
				
			||||||
				message = String.format(automationService.getResources().getString(R.string.ruleActivate), Rule.this.getName());
 | 
									message = String.format(automationService.getResources().getString(R.string.ruleActivate), Rule.this.getName());
 | 
				
			||||||
			else
 | 
								else
 | 
				
			||||||
				message = String.format(automationService.getResources().getString(R.string.ruleActivateToggle), Rule.this.getName());
 | 
									message = String.format(automationService.getResources().getString(R.string.ruleActivateToggle), Rule.this.getName());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			Miscellaneous.logEvent("i", "Rule", message, 2);
 | 
								Miscellaneous.logEvent("i", "Rule", message, 2);
 | 
				
			||||||
//				automationService.speak(message);
 | 
					
 | 
				
			||||||
//				Toast.makeText(automationService, message, Toast.LENGTH_LONG).show();
 | 
					 | 
				
			||||||
			if(Settings.startNewThreadForRuleActivation)
 | 
								if(Settings.startNewThreadForRuleActivation)
 | 
				
			||||||
				publishProgress(message);
 | 
									publishProgress(message);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -531,12 +531,6 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
			}
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			Miscellaneous.logEvent("i", "Rule", String.format(Miscellaneous.getAnyContext().getResources().getString(R.string.ruleActivationComplete), Rule.this.getName()), 2);
 | 
								Miscellaneous.logEvent("i", "Rule", String.format(Miscellaneous.getAnyContext().getResources().getString(R.string.ruleActivationComplete), Rule.this.getName()), 2);
 | 
				
			||||||
//			}
 | 
					 | 
				
			||||||
//			else
 | 
					 | 
				
			||||||
//			{
 | 
					 | 
				
			||||||
//				Miscellaneous.logEvent("i", "Rule", "Request to activate rule " + Rule.this.getName() + ", but it is the last one that was activated. Won't do it again.", 3);
 | 
					 | 
				
			||||||
//				return false;
 | 
					 | 
				
			||||||
//			}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
			return true;
 | 
								return true;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -348,7 +348,10 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
		if(applies(context))
 | 
							if(applies(context))
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			if(hasNotAppliedSinceLastExecution())
 | 
								if(hasNotAppliedSinceLastExecution())
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									Miscellaneous.logEvent("i", "getsGreenLight()", "Rule " + getName() + " applies and has flipped since its last execution.", 4);
 | 
				
			||||||
				return true;
 | 
									return true;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
			else
 | 
								else
 | 
				
			||||||
				Miscellaneous.logEvent("i", "getsGreenLight()", "Rule " + getName() + " has not flipped since its last execution.", 4);
 | 
									Miscellaneous.logEvent("i", "getsGreenLight()", "Rule " + getName() + " has not flipped since its last execution.", 4);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
@@ -414,7 +417,7 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
	        	Looper.prepare();
 | 
						        	Looper.prepare();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			setLastExecution(Calendar.getInstance());
 | 
								setLastExecution(Calendar.getInstance());
 | 
				
			||||||
			wasActivated = activateInternally((AutomationService)params[0], (Boolean)params[1]);
 | 
								wasActivated = activateInternally((AutomationService)params[0]);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			return null;
 | 
								return null;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
@@ -449,24 +452,21 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
		 * Will activate the rule. Should be called by a separate execution thread
 | 
							 * Will activate the rule. Should be called by a separate execution thread
 | 
				
			||||||
		 * @param automationService
 | 
							 * @param automationService
 | 
				
			||||||
		 */
 | 
							 */
 | 
				
			||||||
		protected boolean activateInternally(AutomationService automationService, boolean force)
 | 
							protected boolean activateInternally(AutomationService automationService)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			boolean isActuallyToggable = isActuallyToggable();
 | 
								boolean isActuallyToggleable = isActuallyToggable();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			boolean notLastActive = getLastActivatedRule() == null || !getLastActivatedRule().equals(Rule.this);
 | 
								boolean notLastActive = getLastActivatedRule() == null || !getLastActivatedRule().equals(Rule.this);
 | 
				
			||||||
			boolean doToggle = ruleToggle && isActuallyToggable;
 | 
								boolean doToggle = ruleToggle && isActuallyToggleable;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			//if(notLastActive || force || doToggle)
 | 
					 | 
				
			||||||
//			if(force || doToggle)
 | 
					 | 
				
			||||||
//			{
 | 
					 | 
				
			||||||
			String message;
 | 
								String message;
 | 
				
			||||||
			if(!doToggle)
 | 
								if(!doToggle)
 | 
				
			||||||
				message = String.format(automationService.getResources().getString(R.string.ruleActivate), Rule.this.getName());
 | 
									message = String.format(automationService.getResources().getString(R.string.ruleActivate), Rule.this.getName());
 | 
				
			||||||
			else
 | 
								else
 | 
				
			||||||
				message = String.format(automationService.getResources().getString(R.string.ruleActivateToggle), Rule.this.getName());
 | 
									message = String.format(automationService.getResources().getString(R.string.ruleActivateToggle), Rule.this.getName());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			Miscellaneous.logEvent("i", "Rule", message, 2);
 | 
								Miscellaneous.logEvent("i", "Rule", message, 2);
 | 
				
			||||||
//				automationService.speak(message);
 | 
					
 | 
				
			||||||
//				Toast.makeText(automationService, message, Toast.LENGTH_LONG).show();
 | 
					 | 
				
			||||||
			if(Settings.startNewThreadForRuleActivation)
 | 
								if(Settings.startNewThreadForRuleActivation)
 | 
				
			||||||
				publishProgress(message);
 | 
									publishProgress(message);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -503,12 +503,6 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
			}
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			Miscellaneous.logEvent("i", "Rule", String.format(Miscellaneous.getAnyContext().getResources().getString(R.string.ruleActivationComplete), Rule.this.getName()), 2);
 | 
								Miscellaneous.logEvent("i", "Rule", String.format(Miscellaneous.getAnyContext().getResources().getString(R.string.ruleActivationComplete), Rule.this.getName()), 2);
 | 
				
			||||||
//			}
 | 
					 | 
				
			||||||
//			else
 | 
					 | 
				
			||||||
//			{
 | 
					 | 
				
			||||||
//				Miscellaneous.logEvent("i", "Rule", "Request to activate rule " + Rule.this.getName() + ", but it is the last one that was activated. Won't do it again.", 3);
 | 
					 | 
				
			||||||
//				return false;
 | 
					 | 
				
			||||||
//			}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
			return true;
 | 
								return true;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -351,7 +351,10 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
		if(applies(context))
 | 
							if(applies(context))
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			if(hasNotAppliedSinceLastExecution())
 | 
								if(hasNotAppliedSinceLastExecution())
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									Miscellaneous.logEvent("i", "getsGreenLight()", "Rule " + getName() + " applies and has flipped since its last execution.", 4);
 | 
				
			||||||
				return true;
 | 
									return true;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
			else
 | 
								else
 | 
				
			||||||
				Miscellaneous.logEvent("i", "getsGreenLight()", "Rule " + getName() + " has not flipped since its last execution.", 4);
 | 
									Miscellaneous.logEvent("i", "getsGreenLight()", "Rule " + getName() + " has not flipped since its last execution.", 4);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
@@ -433,7 +436,7 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
			
 | 
								
 | 
				
			||||||
			Thread.setDefaultUncaughtExceptionHandler(Miscellaneous.uncaughtExceptionHandler);
 | 
								Thread.setDefaultUncaughtExceptionHandler(Miscellaneous.uncaughtExceptionHandler);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			// without this line debugger will - for some reason - skip all breakpoints in this class
 | 
								// without this line the debugger will - for some reason - skip all breakpoints in this class
 | 
				
			||||||
			if(android.os.Debug.isDebuggerConnected())
 | 
								if(android.os.Debug.isDebuggerConnected())
 | 
				
			||||||
				android.os.Debug.waitForDebugger();
 | 
									android.os.Debug.waitForDebugger();
 | 
				
			||||||
			
 | 
								
 | 
				
			||||||
@@ -441,7 +444,7 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
	        	Looper.prepare();
 | 
						        	Looper.prepare();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			setLastExecution(Calendar.getInstance());
 | 
								setLastExecution(Calendar.getInstance());
 | 
				
			||||||
			wasActivated = activateInternally((AutomationService)params[0], (Boolean)params[1]);
 | 
								wasActivated = activateInternally((AutomationService)params[0]);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			return null;
 | 
								return null;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
@@ -476,24 +479,21 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
		 * Will activate the rule. Should be called by a separate execution thread
 | 
							 * Will activate the rule. Should be called by a separate execution thread
 | 
				
			||||||
		 * @param automationService
 | 
							 * @param automationService
 | 
				
			||||||
		 */
 | 
							 */
 | 
				
			||||||
		protected boolean activateInternally(AutomationService automationService, boolean force)
 | 
							protected boolean activateInternally(AutomationService automationService)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			boolean isActuallyToggable = isActuallyToggable();
 | 
								boolean isActuallyToggleable = isActuallyToggable();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			boolean notLastActive = getLastActivatedRule() == null || !getLastActivatedRule().equals(Rule.this);
 | 
								boolean notLastActive = getLastActivatedRule() == null || !getLastActivatedRule().equals(Rule.this);
 | 
				
			||||||
			boolean doToggle = ruleToggle && isActuallyToggable;
 | 
								boolean doToggle = ruleToggle && isActuallyToggleable;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			//if(notLastActive || force || doToggle)
 | 
					 | 
				
			||||||
//			if(force || doToggle)
 | 
					 | 
				
			||||||
//			{
 | 
					 | 
				
			||||||
			String message;
 | 
								String message;
 | 
				
			||||||
			if(!doToggle)
 | 
								if(!doToggle)
 | 
				
			||||||
				message = String.format(automationService.getResources().getString(R.string.ruleActivate), Rule.this.getName());
 | 
									message = String.format(automationService.getResources().getString(R.string.ruleActivate), Rule.this.getName());
 | 
				
			||||||
			else
 | 
								else
 | 
				
			||||||
				message = String.format(automationService.getResources().getString(R.string.ruleActivateToggle), Rule.this.getName());
 | 
									message = String.format(automationService.getResources().getString(R.string.ruleActivateToggle), Rule.this.getName());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			Miscellaneous.logEvent("i", "Rule", message, 2);
 | 
								Miscellaneous.logEvent("i", "Rule", message, 2);
 | 
				
			||||||
//				automationService.speak(message);
 | 
					
 | 
				
			||||||
//				Toast.makeText(automationService, message, Toast.LENGTH_LONG).show();
 | 
					 | 
				
			||||||
			if(Settings.startNewThreadForRuleActivation)
 | 
								if(Settings.startNewThreadForRuleActivation)
 | 
				
			||||||
				publishProgress(message);
 | 
									publishProgress(message);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -530,12 +530,6 @@ public class Rule implements Comparable<Rule>
 | 
				
			|||||||
			}
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			Miscellaneous.logEvent("i", "Rule", String.format(Miscellaneous.getAnyContext().getResources().getString(R.string.ruleActivationComplete), Rule.this.getName()), 2);
 | 
								Miscellaneous.logEvent("i", "Rule", String.format(Miscellaneous.getAnyContext().getResources().getString(R.string.ruleActivationComplete), Rule.this.getName()), 2);
 | 
				
			||||||
//			}
 | 
					 | 
				
			||||||
//			else
 | 
					 | 
				
			||||||
//			{
 | 
					 | 
				
			||||||
//				Miscellaneous.logEvent("i", "Rule", "Request to activate rule " + Rule.this.getName() + ", but it is the last one that was activated. Won't do it again.", 3);
 | 
					 | 
				
			||||||
//				return false;
 | 
					 | 
				
			||||||
//			}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
			return true;
 | 
								return true;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -199,6 +199,7 @@ public class ActivityMainRules extends ActivityGeneric
 | 
				
			|||||||
							AutomationService runContext = AutomationService.getInstance();
 | 
												AutomationService runContext = AutomationService.getInstance();
 | 
				
			||||||
							if(runContext != null)
 | 
												if(runContext != null)
 | 
				
			||||||
							{
 | 
												{
 | 
				
			||||||
 | 
													Miscellaneous.logEvent("i", "ActivityMainRules", "Initiating manual execution of rule " + ruleThisIsAbout.getName(), 3);
 | 
				
			||||||
								ruleThisIsAbout.activate(runContext, true);
 | 
													ruleThisIsAbout.activate(runContext, true);
 | 
				
			||||||
								break;
 | 
													break;
 | 
				
			||||||
							}
 | 
												}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user