diff options
| author | 2013-10-01 21:30:53 +0000 | |
|---|---|---|
| committer | 2013-10-01 21:30:53 +0000 | |
| commit | b1cd745fd23cd0514a338bb07abcd031db10db7c (patch) | |
| tree | d1bbd95dbc975201289690122c00d96c76611db0 | |
| parent | 0bc0f109dfe935a4ede91862d1f556e7f03a8bf2 (diff) | |
| parent | db85ad56adb74f0310b604228dac8bbc03ac2769 (diff) | |
Merge "Fail print jobs targeted to unavailable services." into klp-dev
| -rw-r--r-- | core/res/res/values/strings.xml | 3 | ||||
| -rw-r--r-- | core/res/res/values/symbols.xml | 1 | ||||
| -rw-r--r-- | services/java/com/android/server/print/UserState.java | 7 |
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); |