* #27232: jni: added pjproject checkout as regular git content

We will remove it once the next release of pjsip (with Android support)
comes out and is merged into SFLphone.
diff --git a/jni/pjproject-android/tests/automated/run_continuous.py b/jni/pjproject-android/tests/automated/run_continuous.py
new file mode 100755
index 0000000..07e45ab
--- /dev/null
+++ b/jni/pjproject-android/tests/automated/run_continuous.py
@@ -0,0 +1,140 @@
+#!/usr/bin/python
+import os
+import sys
+import time
+import datetime
+import ccdash
+
+INTERVAL = 300
+DELAY = 0
+ONCE = False
+SUFFIX = ""
+FORCE = False
+
+def run_scenarios(scenarios, group):
+	# Run each scenario
+	rc = 0
+	for scenario in scenarios:
+		argv = []
+		argv.append("ccdash.py")
+		argv.append("scenario")
+		argv.append(scenario)
+		argv.append("--group")
+		argv.append(group)
+		thisrc = ccdash.main(argv)
+		if rc==0 and thisrc:
+			rc = thisrc
+	return rc
+
+
+def usage():
+	print """Periodically monitor working directory for Continuous and Nightly builds
+
+Usage:
+  run_continuous.py [options] scenario1.xml [scenario2.xml ...]
+
+options:
+  These are options which will be processed by run_continuous.py:
+
+  --delay MIN   Delay both Continuous and Nightly builds by MIN minutes. 
+  		This is useful to coordinate the build with other build 
+		machines. By default, Continuous build will be done right
+		after changes are detected, and Nightly build will be done
+		at 00:00 GMT. MIN is a float number.
+
+  --once        Just run one loop to see if anything needs to be done and
+                if so just do it once. Quit after that.
+
+  --suffix SFX  Set group suffix to SFX. For example, if SFX is "-2.x", then
+                tests will be submitted to "Nightly-2.x", "Continuous-2.x",
+		and "Experimental-2.x"
+
+  --force	Force running the test even when nothing has changed.
+"""
+	sys.exit(1)
+
+if __name__ == "__main__":
+	if len(sys.argv)<=1 or sys.argv[1]=="-h" or sys.argv[1]=="--h" or sys.argv[1]=="--help" or sys.argv[1]=="/h":
+		usage()
+
+	# Splice list
+	scenarios = []
+	i = 1
+	while i < len(sys.argv):
+		if sys.argv[i]=="--delay":
+			i = i + 1
+			if i >= len(sys.argv):
+				print "Error: missing argument"
+				sys.exit(1)
+			DELAY = float(sys.argv[i]) * 60
+			print "Delay is set to %f minute(s)" % (DELAY / 60)
+		elif sys.argv[i]=="--suffix":
+			i = i + 1
+			if i >= len(sys.argv):
+				print "Error: missing argument"
+				sys.exit(1)
+			SUFFIX = sys.argv[i]
+			print "Suffix is set to %s" % (SUFFIX)
+		elif sys.argv[i]=="--once":
+			ONCE = True
+		elif sys.argv[i]=="--force":
+			FORCE = True
+		else:
+			# Check if scenario exists
+			scenario = sys.argv[i]
+			if not os.path.exists(scenario):
+				print "Error: file " + scenario + " does not exist"
+				sys.exit(1)
+			scenarios.append(scenario)
+			print "Scenario %s added" % (scenario)
+		i = i + 1
+
+	if len(scenarios) < 1:
+		print "Error: scenario is required"
+		sys.exit(1)
+
+	# Current date
+	utc = time.gmtime(None)
+	day = utc.tm_mday
+
+	# Loop foreva
+	while True:
+		argv = []
+
+		# Anything changed recently?
+		argv.append("ccdash.py")
+		argv.append("status")
+		argv.append("-w")
+		argv.append("../..")
+		rc = ccdash.main(argv)
+
+		utc = time.gmtime(None)
+
+		if utc.tm_mday != day or rc != 0 or FORCE:
+			group = ""
+			if utc.tm_mday != day:
+				day = utc.tm_mday
+				group = "Nightly" + SUFFIX
+			elif rc != 0:
+				group = "Continuous" + SUFFIX
+			else:
+				group = "Experimental" + SUFFIX
+			if DELAY > 0:
+				print "Will run %s after %f s.." % (group, DELAY)
+				time.sleep(DELAY)
+			rc = run_scenarios(scenarios, group)
+			msg = str(datetime.datetime.now()) + \
+				  ": done running " + group + \
+				  "tests, will check again in " + str(INTERVAL) + "s.."
+			if ONCE:
+				sys.exit(0)
+		else:
+			# Nothing changed
+			msg = str(datetime.datetime.now()) + \
+				  ": No update, will check again in " + str(INTERVAL) + "s.."
+			if ONCE:
+				sys.exit(1)
+
+		print msg
+		time.sleep(INTERVAL)
+