summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Svetoslav Ganov <svetoslavganov@google.com> 2013-10-02 09:36:13 -0700
committer Android Git Automerger <android-git-automerger@android.com> 2013-10-02 09:36:13 -0700
commitbf4e84724fbfaff8f2876af04e16f7047812f858 (patch)
tree23bb40e7447e75ef20a695c6e812f6fe75b125fa
parent4bf36c3ecb0294c0bfac04f8d2371b64a0f2f218 (diff)
parentfddc4bfed524df4f6245721c3ebc82ba2afbcf89 (diff)
am fddc4bfe: am b1cd745f: Merge "Fail print jobs targeted to unavailable services." into klp-dev
* commit 'fddc4bfed524df4f6245721c3ebc82ba2afbcf89': Fail print jobs targeted to unavailable services.
-rw-r--r--core/res/res/values/strings.xml3
-rw-r--r--core/res/res/values/symbols.xml1
-rw-r--r--services/java/com/android/server/print/UserState.java7
3 files changed, 10 insertions, 1 deletions
diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml
index 56e7ff9476cd..d57c232b3bb3 100644
--- a/core/res/res/values/strings.xml
+++ b/core/res/res/values/strings.xml
@@ -4451,6 +4451,9 @@
<!-- Print fail reason: unknown. [CHAR LIMIT=25] -->
<string name="reason_unknown">unknown</string>
+ <!-- Print fail reason: the print service that has to process the print job is not available. [CHAR LIMIT=none] -->
+ <string name="reason_service_unavailable">Print service not enabled</string>
+
<!-- Title for the notification that a print service was installed. [CHAR LIMIT=50] -->
<string name="print_service_installed_title"><xliff:g id="name" example="Cloud Print">%s</xliff:g> service installed</string>
<!-- Message for the notification that a print service was installed. [CHAR LIMIT=50] -->
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index 7608f9928923..3fdf6b9cb90e 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -928,6 +928,7 @@
<java-symbol type="string" name="mediasize_japanese_kahu" />
<java-symbol type="string" name="mediasize_japanese_kaku2" />
<java-symbol type="string" name="mediasize_japanese_you4" />
+ <java-symbol type="string" name="reason_service_unavailable" />
<java-symbol type="string" name="reason_unknown" />
<java-symbol type="string" name="restr_pin_enter_admin_pin" />
<java-symbol type="string" name="restr_pin_enter_pin" />
diff --git a/services/java/com/android/server/print/UserState.java b/services/java/com/android/server/print/UserState.java
index bc70fe30c554..3b0ee24faa43 100644
--- a/services/java/com/android/server/print/UserState.java
+++ b/services/java/com/android/server/print/UserState.java
@@ -134,6 +134,11 @@ final class UserState implements PrintSpoolerCallbacks, PrintServiceCallbacks {
}
if (service != null) {
service.onPrintJobQueued(printJob);
+ } else {
+ // The service for the job is no longer enabled, so just
+ // fail the job with the appropriate message.
+ mSpooler.setPrintJobState(printJob.getId(), PrintJobInfo.STATE_FAILED,
+ mContext.getString(R.string.reason_service_unavailable));
}
}
@@ -779,7 +784,7 @@ final class UserState implements PrintSpoolerCallbacks, PrintServiceCallbacks {
for (int i = 0; i < printJobCount; i++) {
PrintJobInfo printJob = printJobs.get(i);
mSpooler.setPrintJobState(printJob.getId(), PrintJobInfo.STATE_FAILED,
- mContext.getString(R.string.reason_unknown));
+ mContext.getString(R.string.reason_service_unavailable));
}
} finally {
Binder.restoreCallingIdentity(identity);