123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173 |
- package epson.print.copy.Component.ecopycomponent;
- import android.os.AsyncTask;
- import java.util.ArrayList;
- import java.util.Iterator;
- import epson.print.copy.Component.eremoteoperation.ERemoteCopyPhoto;
- import epson.print.copy.Component.eremoteoperation.ERemoteOperation;
- class RemoteCopyPhotoSetOptionTask extends AsyncTask<Void, Void, Result> implements ECopyComponent.ITask {
- ArrayList<ERemoteOperation.ERemoteParam> changableParams;
- String clientID;
- ERemoteCopyPhoto operation = new ERemoteCopyPhoto();
- ECopyComponent.ICopyOptionListener optionChangedListener;
- ECopyOptionContext optionContext;
- ECopyOptionItem replacedItem;
- ECopyOptionItem selectedItem;
- ECopyComponent.ICopySystemSettings systemSettings;
- class Result {
- ArrayList<ECopyOptionItem> changedItems;
- ECopyComponent.ICopyOptionListener.CopyOptionChangedError error;
- ECopyOptionItem selectedItem;
- Result() {
- }
- }
- public RemoteCopyPhotoSetOptionTask(ECopyOptionItem eCopyOptionItem, ECopyComponent.ICopyOptionListener iCopyOptionListener) {
- selectedItem = eCopyOptionItem;
- optionChangedListener = iCopyOptionListener;
- }
- public ECopyComponent.ICopyCancelRequest start() {
- super.execute(new Void[0]);
- return null;
- }
- public void setSystemSettings(ECopyComponent.ICopySystemSettings iCopySystemSettings) {
- systemSettings = iCopySystemSettings;
- }
- public void setRequestConnectionTimeout(int i) {
- operation.setRequestConnectionTimeout(i);
- }
- public void setClientID(String str) {
- clientID = str;
- }
- public void setOptionContext(ECopyOptionContext eCopyOptionContext) {
- optionContext = eCopyOptionContext;
- replacedItem = optionContext.replace(new ECopyOptionItem(selectedItem));
- changableParams = new ArrayList<>();
- changableParams.add(ERemoteOperation.ERemoteParam.x_borderless);
- changableParams.add(ERemoteOperation.ERemoteParam.print_media_size);
- changableParams.add(ERemoteOperation.ERemoteParam.print_media_type);
- changableParams.add(ERemoteOperation.ERemoteParam.x_apf);
- changableParams.add(ERemoteOperation.ERemoteParam.print_quality);
- changableParams.add(ERemoteOperation.ERemoteParam.print_media_source);
- }
- public Result getResultLocalOptions() {
- Result result = new Result();
- result.selectedItem = selectedItem;
- result.changedItems = new ArrayList<>();
- return result;
- }
- protected Result doInBackground(Void... voidArr) {
- operation.setHostIP(systemSettings.getPrinterIPAddress());
- if (selectedItem.isLocalOption) {
- return getResultLocalOptions();
- }
- ERemoteCopyPhoto.ERemoteCopyPhotoOptionResult options = operation.getOptions(new ERemoteCopyPhoto.IRemoteCopyPhotoOptionsParameter() {
- public boolean default_as_fixed() {
- return true;
- }
- public String client_id() {
- return clientID;
- }
- public ERemoteOperation.ERemoteParam layout() {
- return optionContext.getCopyOptionItemOf(ECopyOptionItem.ECopyOptionItemKey.XBorderless).getSelectedChoice().param;
- }
- public ERemoteOperation.ERemoteParam print_media_type() {
- return optionContext.getCopyOptionItemOf(ECopyOptionItem.ECopyOptionItemKey.PrintMediaType).getSelectedChoice().param;
- }
- public ERemoteOperation.ERemoteParam print_media_size() {
- return optionContext.getCopyOptionItemOf(ECopyOptionItem.ECopyOptionItemKey.PrintMediaSize).getSelectedChoice().param;
- }
- public ERemoteOperation.ERemoteParam print_quality() {
- return optionContext.getCopyOptionItemOf(ECopyOptionItem.ECopyOptionItemKey.PrintQuality).getSelectedChoice().param;
- }
- public ERemoteOperation.ERemoteParam print_media_source() {
- return optionContext.getCopyOptionItemOf(ECopyOptionItem.ECopyOptionItemKey.PrintMediaSource).getSelectedChoice().param;
- }
- public ERemoteOperation.ERemoteParam x_apf() {
- return optionContext.getCopyOptionItemOf(ECopyOptionItem.ECopyOptionItemKey.XApf).getSelectedChoice().param;
- }
- public ArrayList<ERemoteOperation.ERemoteParam> fixed_parameters() {
- return new ArrayList<>();
- }
- public ArrayList<ERemoteOperation.ERemoteParam> preferred_parameters() {
- return new ArrayList<>();
- }
- public ArrayList<ERemoteOperation.ERemoteParam> priority_order() {
- ArrayList<ERemoteOperation.ERemoteParam> arrayList = new ArrayList<>();
- arrayList.add(ERemoteOperation.ERemoteParam.layout);
- arrayList.add(ERemoteOperation.ERemoteParam.print_media_size);
- arrayList.add(ERemoteOperation.ERemoteParam.print_media_type);
- arrayList.add(ERemoteOperation.ERemoteParam.x_apf);
- arrayList.add(ERemoteOperation.ERemoteParam.print_quality);
- arrayList.add(ERemoteOperation.ERemoteParam.print_media_source);
- return arrayList;
- }
- });
- Result result = new Result();
- result.selectedItem = selectedItem;
- if (options.success()) {
- optionContext.setCopyOptionsResult(options);
- result.changedItems = new ArrayList<>();
- Iterator<ERemoteOperation.ERemoteParam> it = changableParams.iterator();
- while (it.hasNext()) {
- ECopyOptionItem createOptionItem = ECopyOptionItem.createOptionItem(it.next(), options);
- if (optionContext.isChanged(createOptionItem)) {
- result.changedItems.add(createOptionItem);
- optionContext.replace(createOptionItem);
- }
- }
- Iterator<ECopyOptionItem> it2 = result.changedItems.iterator();
- while (true) {
- if (!it2.hasNext()) {
- break;
- }
- ECopyOptionItem next = it2.next();
- if (next.getKey() == ECopyOptionItem.ECopyOptionItemKey.XBorderless) {
- ECopyOptionItem createLocalOptionItem = ECopyOptionItem.createLocalOptionItem(ERemoteOperation.ERemoteParam.print_x_bleed, options);
- if (next.getSelectedChoice() == ECopyOptionItem.ECopyOptionItemChoice.XBorderless_Standard) {
- createLocalOptionItem.enabled = false;
- }
- result.changedItems.add(createLocalOptionItem);
- }
- }
- if (result.changedItems.size() == 0) {
- result.changedItems = null;
- }
- } else {
- if (options.isNull(ERemoteOperation.ERemoteParam.success)) {
- result.error = ECopyComponent.ICopyOptionListener.CopyOptionChangedError.ErrorCommunication;
- } else {
- result.error = ECopyComponent.ICopyOptionListener.CopyOptionChangedError.Error;
- }
- result.selectedItem = new ECopyOptionItem(replacedItem);
- optionContext.replace(replacedItem);
- }
- return result;
- }
- protected void onPostExecute(Result result) {
- optionChangedListener.onCopyOptionChanged(result.selectedItem, result.changedItems, result.error);
- }
- }
|