專利名稱:處理裝置、處理方法
技術領域:
本發明涉及在云計算系統中按照從用戶經由服務器取得的處理請求來執行處理的處理裝置以及處理方法。
背景技術:
以往,已知一種提供如下服務的云計算系統通過發送電子郵件能夠使特定的打印機執行印刷(例如專利文獻I)。該云計算系統(以下僅稱為印刷系統)具備接收特定的 電子郵件后基于電子郵件生成與特定的打印機對應的印刷數據的服務器,在服務器中登記的特定的打印機從服務器取得印刷數據來執行印刷。因此,即使在PC (Personal Computer,個人計算機)、智能手機等的通信終端沒有安裝打印機驅動程序的情況下,印刷系統的利用者也能夠利用印刷系統中登記的打印機。專利文獻I JP特開2008-71257號公報在這種印刷系統中,服務器基于用戶發送出的電子郵件來生成印刷數據,對打印機通知存在印刷工作,接收到通知的打印機對服務器進行印刷數據的發送請求從而一邊取得印刷數據一邊執行印刷。對于打印機搭載的存儲器大小,出于成本的觀點存在限制,所以對于結束了印刷的部分的印刷數據,從存儲器中將其廢棄,為了下次要處理的部分的印刷數據而確保存儲器區域。如此,因為打印機一邊取得印刷數據一邊進行印刷,所以在印刷數據的取得中途在打印機中發生了錯誤時,不能繼續進行印刷,所以不能從存儲器廢棄印刷數據,反而成為不能接收隨后發送來的印刷數據的狀態。在這種情況下,以往構成為,因為發生了錯誤所以結束印刷這樣的動作,對于錯誤恢復后的動作,沒有特別考慮。而且這不僅限于印刷,在其他處理的情況下也是同樣的。
發明內容
本發明的目的是提供一種處理裝置,其能夠在數據的取得中途在處理裝置與服務器之間切斷會話,并且在之后再連接的情況下,高效地重新開始處理。用于實現上述目的處理裝置具備請求部、接收部、處理部和測量部。請求部對服務器進行處理數據的發送請求。接收部接收按照發送請求從服務器發送出的處理數據。處理部依次將接收部接收到的處理數據作為處理對象,并基于成為了處理對象的處理數據進行處理。測量部測量所接收到的處理數據中的成為了處理部的處理對象的處理數據的數據量。即,每當發送請求的處理數據、按規定大小依次接收的處理數據依次成為處理部的處理對象時,測量其累積的數據量(大小)。在本發明的處理裝置中,在全部處理數據成為處理對象之前,與服務器的會話被切斷并且之后進行了再連接的情況下,處理部在會話的再連接后根據在會話切斷之時測量部的測量完成的數據量,基于處理數據中的仍未成為處理對象的第I部分進行處理,而不進行基于處理數據中的已經成為處理對象的第2部分的處理。即,不進行基于已經完成了處理的部分的再次處理,而對于雖然進行了接收但沒有完成處理的部分進行處理,由此能夠高效地進行處理。或者,在對服務器請求的全部處理數據成為處理部的處理對象之前,與服務器的會話被切斷并且之后進行了再連接的情況下,請求部在會話的再連接后根據在會話切斷之時測量部的測量完成的數據量,進行處理數據中的仍未成為所述處理對象的部分的發送請求。即,請求部在會話再連接后,不進行已經成為處理部的處理對象的部分的發送請求,而對服務器進行仍未成為處理對象的部分的發送請求。或者,在對服務器請求的全部處理數據成為處理部的處理對象之前,與服務器的會話被切斷并且之后進行了再連接的情況下,按照請求部再次進行了處理數據的發送請求,處理部根據測 量部測量的數據量,從接收部接收到的處理數據中提取處理數據中的仍未成為處理部的處理對象的部分作為處理對象。即,處理部不將所接收到的處理數據中的已經成為了處理部的處理對象的部分再次作為處理部的處理對象,而提取仍未成為處理對象的部分作為處理對象。因此,能夠防止針對已經處理完的部分、為了執行處理而將處理數據變換為適于處理裝置的形式的處理前處理中的部分的處理數據再次執行處理。即,即使經過了會話的切斷、再連接,也能夠從處理中斷時接著重新開始處理,所以例如在印刷處理的情況下,能夠防止無端地浪費墨水、印刷介質等的消耗品。此外,因為接著重新開始處理,所以與再次從最初開始處理的情況相比,能夠縮短到處理完成所需要的時間。進而,在為了實現上述目的的處理裝置中,也可以處理部在會話的再連接后所接收到的處理數據是仍未成為處理部的處理對象的部分的情況下,將該部分的處理數據作為處理對象,在會話的再連接后所接收到的處理數據包括已經成為了處理對象的部分和仍未成為處理對象的部分的情況下,根據測量部測量出的數據量,從所接收到的處理數據中提取仍未成為處理對象的部分的處理數據作為處理對象。S卩,在服務器側對應于來自處理裝置的處理數據的部分的發送請求功能的情況下,按照處理裝置所請求的,從服務器發送仍未成為處理對象的部分的處理數據,所以將該處理數據作為處理對象。另一方面,在服務器不對應于部分的發送請求功能的情況下,從服務器發送既包括已經成為了處理對象的部分又包括仍未成為處理對象的部分的在一個處理工作中包含的處理數據整體。在該情況下,根據本發明的處理裝置,也能夠提取仍未成為處理對象的部分的處理數據作為處理部的處理對象。因此,能夠與服務器是否對應于部分的發送請求無關,在處理裝置側從處理中斷時開始接著重新開始處理,所以能夠防止無端地浪費墨水、處理介質等的消耗品。此外,因為接著重新開始處理,所以與再次從最初開始進行處理的情況相比,還能夠縮短處理所需要的時間。進而,在為了實現上述目的的處理裝置中,也可以接收部使第一存儲部存儲所接收到的處理數據。在該情況下,也可以處理部將第二存儲部中所存儲的處理數據作為處理對象進行處理前處理,并根據處理前處理后的數據進行處理。此外在該情況下,也可以測量部測量從第一存儲部轉送到第二存儲部的處理數據的數據量。在處理裝置是具備暫時存儲從服務器接收到的處理數據的第一存儲部、和作為處理前處理用的處理數據的存儲區域的第二存儲部的構成的情況下,需要為了進行處理前處理而將處理數據從第一存儲部轉移到第二存儲部的處理。通過與該處理同步地對從第一存儲部轉移到第二存儲部的處理數據的數據量進行測量,從而能夠實現“成為了處理部的處理對象的處理數據的數據量”的測量。進而,在為了實現上述目的的處理裝置中,也可以請求部通過使用HTTP的range頭部進行范圍指定,從而進行仍未成為處理部的處理對象的部分的處理數據的發送請求。通過使用HTTP的range頭部,能夠實現處理數據的部分的發送請求。此外,為了實現上述目的的其他數據處理裝置具備請求部、接收部和處理部。請求部向服務器進行處理數據的發送請求。接收部接收按照發送請求從服務器發送的處理數據。處理部依次取得所接收到的處理數據,并使用該處理數據進行處理。而且,請求部在處 理部完成處理數據的取得之前,中斷了處理數據的取得后重新開始處理數據的取得的情況下,如下所示地進行發送請求。即,請求部在中斷了處理數據的取得的理由被分類為第一組的情況下進行針對數據整體中的處理部未取得的部分的發送請求,在中斷了處理數據的取得的理由被分類為第二組的情況下進行針對數據整體的發送請求。這里,對于被分類為第一組的理由,設想如下事態的發生。即,在成為中斷理由的事態被解除后期望接著重新開始中斷的處理的事態的發生。對于被分類為第二組的理由,設想如下事態的發生。即,在成為中斷理由的事態被解除后期望再一次從最初開始重新處理中斷的處理的事態的發生。在數據處理裝置中預先決定將中斷理由(成為的事態)分類的組。因此,根據本發明的構成,在重新開始處理數據的取得的情況下,能夠按照中斷的理由,切換是重新取得數據整體,還是僅取得未取得的部分。其結果,在發生了預先決定為期望從中斷時接著重新開始處理的事態的情況下,能夠取得處理部未取得的處理數據,所以與包括處理完成的數據重新取得整體的構成相比,能夠縮短處理所需要的時間。此外,在發生了預先決定為在中斷后重新開始的情況下期望再次從最初開始重新處理的事態的情況下,能夠重新取得處理數據的整體,所以能夠再次將處理數據整體作為對象進行處理。此外,在為了實現上述目的的數據處理裝置中,也可以處理數據是印刷數據,處理部是根據所取得的印刷數據進行印刷的處理部。進而可以,在被分類為第一組的理由中,包括發生無印刷介質、無顏色材料、印刷介質的類型不一致、裝置罩蓋打開中的至少任一種錯誤,在被分類為第二組的理由中,包括發生印刷介質堵塞、處理部的機械式異常、停電中的至少任一種錯誤。在上述各種錯誤發生后解除了該錯誤的情況下,按照該錯誤被分類的組,能夠切換是進行印刷數據的整體的發送請求,還是進行印刷數據的部分的發送請求。此外,為了實現上述目的的服務器具備存儲部和發送部。存儲部存儲使數據處理裝置處理的處理數據。發送部向數據處理裝置發送處理數據。而且,在發送部完成處理數據的整體的發送之前,中斷了處理數據的發送后再發送處理數據的情況下,發送部在中斷了處理數據的發送的理由被分類為第一組的情況下進行針對包括處理數據的整體中的發送部未發送的部分的、處理數據的一部分的發送,在中斷了處理數據的發送的理由被分類為第二組的情況下進行針對處理數據整體的發送。通過服務器采用以上那樣的構成,按照中斷了處理數據的發送的理由,能夠切換重新開始發送后向數據處理裝置發送的處理數據的范圍。即,能夠切換是發送包括未發送部分的一部分的處理數據,還是發送處理數據整體。而且,數據處理裝置能夠使用從服務器發送出的處理數據進行處理。另外,權利要求中記載的各單元的功能,通過由構成本身確定功能的硬件資源、由程序確定功能的硬件資源、或者它們的組合來實現。此外,這些各單元的功能,不限定于由各自在物理上相互獨立的硬件資源實現。例如,服務器不限定于由I臺計算機裝置構成,也包括多個計算機裝置協作來作為上述服務器進行動作的構成。而且,本發明作為方法、計算機程序、該程序的記錄介質也成立。當然,該計算機程序的記錄介質可以是磁記錄介質也可以是光磁記錄介質,還可以是今后開發的任何記錄介質。
圖I是第一實施方式所涉及的印刷裝置的框圖。圖2是表示第一實施方式所涉及的緩沖器的構成例的示意圖。
圖3是第一實施方式所涉及的印刷順序的順序圖。圖4是第二實施方式所涉及的印刷順序的順序圖。圖5是說明第一實施方式所涉及的印刷數據的各部的狀態的示意圖。圖6是第三實施方式所涉及的數據處理裝置的框圖。圖7是表示第三實施方式所涉及的錯誤的分類的圖。圖8是第三實施方式所涉及的印刷順序的順序圖。圖9是說明其他實施方式所涉及的印刷數據的各部的狀態的示意圖。符號說明I :通信終端;2 :服務器;3 :打印機;4 :因特網;21 :應用服務器;22 =SMTP服務器;23 =HTTP服務器;24 =XMPP服務器;31 :控制器;32 :接收緩沖器;33 :處理緩沖器;34 :通信部;35 :印刷部。
具體實施例方式以下,參照附圖來說明本發明的實施方式的例子。另外,在各圖中對相對應的構成要素標注同一符號,并且省略重復說明。I.第一實施方式1-1.構成圖I是表示本實施方式中的包括打印機(印刷裝置)3的印刷系統整體的構成的框圖。圖I所示的印刷系統,若從任意的通信終端I發送以登記在服務器2中的與打印機3建立了對應的電子郵件地址為目的地的電子郵件,則在與目的地的電子郵件地址建立了對應的打印機3中實現印刷電子郵件的添附文件、本文的功能。服務器2由I臺以上的計算機構成。服務器2、打印機3、通信終端I連接于因特網4。打印機3具有如下功能通過與服務器2的使用了 XMPP (Extensible Messagingand Presence Protocol,可擴展通訊和表示協議)、Telnet、WebSocket等的協議的常時連接,從服務器2通知了印刷工作存在通知時,使用HTTP (Hyper Text Transfer Protocol,超文本傳輸協議)從服務器2取得印刷數據,執行印刷。因此,打印機3除了具備具有CPU、ROM、RAM等的控制器31、印刷部35等的通常的打印機的構成要素之外,還具備用于經由因特網4收發各種數據的通信部34。通信部34將從因特網4經由LAN而接收的信號按照協議進行變換之后發送給內部總線,并且將從內部總線取入的信號按照協議進行變換之后經由LAN發送給因特網。在控制器31的ROM中存儲有讀入RAM并由CPU執行的通信程序、印刷程序等各種計算機程序。通過CPU執行這些計算機程序,從而實現打印機3的各種功能。通信程序是用于按照TCP/IP、HTTP、XMPP等的通信協議與服務器2進行通信的程序。另外,控制器31預先已經取得了為了使用HTTP、XMPP與服務器2進行連接而需要的信息。接收緩沖器32 (相當于第一存儲部)是用于存儲執行通信程序的控制器31經由通信部34從外部接收的數據的存儲器,是臨時存儲印刷數據等各種數據的存儲器。執行通信程序的控制器31以及通信部34,相當于對服務器2進行印刷數據的發送請求的“請求部”。此外,執行通信程序的控制器31和通信部34和接收緩沖器32,相當于接收從服務器2發送出的印刷數據的“接收部”。印刷程序是具有如下功能的程序讀出在接收緩沖器32中所存儲 的印刷數據并轉送給處理緩沖器33 (相當于第二存儲部),并且實施印刷前處理從而將印刷數據變換為適于打印機3中的印刷的形式的數據,基于變換后的數據控制印刷部35從而進行印刷。執行印刷程序的控制器31、印刷部35和處理緩沖器33相當于“印刷處理部”。在本實施方式中,服務器2生成并發送給打印機3的印刷數據是以RGB形式表現了像素值的數據。在該情況下,印刷前處理是指對這種形式的印刷數據實施的、分辨率變換處理、顏色變換處理(變換為打印機3所搭載的每墨水的灰度值的處理)、半色調處理、重排處理等。處理緩沖器33是用于存儲對從接收緩沖器32中存儲的各種數據之中提取并讀出的印刷數據實施前述的印刷前處理時處理前、處理過程、處理后的數據的存儲器。將為了印刷前處理中包含的前述的各處理的數據交接而分別設置的緩沖存儲器統稱為處理緩沖器33。圖2是用于針對各緩沖器進行說明的示意圖。如圖2所示,例如在本實施方式中處理緩沖器33包括存儲從接收緩沖器32讀出的分辨率變換處理前的印刷數據的第一處理緩沖器331、存儲分辨率變換后且顏色變換處理前的數據的第二處理緩沖器332、存儲顏色變換處理后且半色調處理前的數據的第三處理緩沖器333、存儲半色調處理后且重排處理前的數據的第四處理緩沖器334、和存儲重排處理后的數據的第五處理緩沖器335。第五處理緩沖器335中存儲的數據用于印刷部35執行的印刷。執行印刷處理程序的控制器31從接收緩沖器32讀出接收緩沖器32中所存儲的印刷數據,并轉送給處理緩沖器33 (第一處理緩沖器331),由此成為“印刷處理部”的“處理對象”。從接收緩沖器32讀出并轉送給處理緩沖器33 (第一處理緩沖器331)的印刷數據從接收緩沖器32廢棄,作為要接收的新數據用的存儲場所。印刷程序具有如下功能每當從接收緩沖器32向處理緩沖器33轉送印刷數據時,將被轉送的印刷數據的累積的數據量作為大小η來進行測量的測量功能。因此,執行印刷程序的控制器31相當于“測量部”。控制器31在結束針對第一處理緩沖器331中存儲的印刷數據的分辨率變換處理后,將處理后的數據寫入第二處理緩沖器332,并且從第一處理緩沖器331廢棄該印刷數據。之后,從接收緩沖器32讀出后續的印刷數據并轉送給第一處理緩沖器331。對于第二處理緩沖器332 第五處理緩沖器335也同樣地控制器31從前級的緩沖器讀出數據進行處理并且向后級的緩沖器寫入結束后,從前級的緩沖器將數據廢棄并且成為能夠將后續的數據轉送到前級的緩沖器的狀態。印刷部35具備用于以噴墨方式、激光方式等公知的印刷方式向相紙、普通紙、OHP片等的印刷介質執行印刷的執行機構(actuator)、傳感器、驅動電路、機械部件。與由印刷部35完成了印刷的部分相當的印刷數據從處理緩沖器33(第五處理緩沖器335)廢棄。1-2.印刷順序在圖I所示的印刷系統中,在從通信終端I與添附文件一起發送了發送給與打印機3建立了對應的電子郵件地址的電子郵件時,期望在打印機3中立即執行添附文件的印刷。此外,基于服務器2的負擔和網絡通信量的觀點而不期望打印機3為了即刻取得印刷請求而使用基于HTTP的消息對服務器2進行輪詢。因此,打印機3從服務器2接收基于XMPP的印刷工作存在通知。因為XMPP是能夠雙方向發送消息的所謂推送型的協議,所以不需要打印機3對服務器2的輪詢。在打印機3的電源為接通狀態時,如果沒有特別發生通信錯誤、或其他錯誤,服務器2和打印機3就是時常建立了 XMPP連接的狀態。 圖3是本實施方式中的印刷順序的順序圖,進一步詳細而言,是打印機3取得一個印刷工作中所包含的全部印刷數據并轉送給處理緩沖器33之前打印機3中發生錯誤的情況下的順序圖。另外,在圖3的順序圖中,為了明確發明的主要部分,除了與發明相關聯的部分,省略了會話的建立、切斷的順序的詳細情況、響應于各通信的ACK包(packet)、FIN包等的記載。首先,服務器2接收從通信終端I向與打印機3建立了對應的電子郵件地址發送的電子郵件(S100)后,基于電子郵件,提煉(rendering)添附文件等的印刷對象來生成印刷數據,并且服務器2使用XMPP向打印機3發送印刷工作存在通知(S105)。通信部34從服務器2接收以XMPP發送的印刷工作存在通知后,與服務器2建立HTTP會話(SllO),利用HTTP的get請求向服務器2發送內容信息的發送請求(S115)。接收了從打印機3發送出的內容信息發送請求的服務器2向打印機3發送印刷工作的內容信息(S120)。這里在內容信息中包括印刷數據的下載目的地URI、印刷數據的文檔格式等的印刷工作中包含的關于印刷數據的信息。內容信息經過通信部34存儲于接收緩沖器32。控制器31對接收緩沖器32中存儲的數據進行解析,取得內容信息。內容信息取得后,控制器31從接收緩沖器32廢棄內容信息。接下來,控制器31利用HTTP的get請求向服務器2發送印刷數據的發送請求(S125)。印刷數據的下載目的地URI包含在S120中由打印機3取得到的內容信息中。另外在S125中,進行將由S105通知的印刷工作中包含的印刷數據整體作為對象的發送請求。服務器2接收來自打印機3的印刷數據發送請求,使用HTTP從開頭每次以規定大小向打印機3發送印刷數據(S130)。由S130發送的印刷數據以包含在與S125的get請求相對應的響應消息中的方式發送給打印機3。響應消息中包含的HTTP頭部中,包含表示發送給打印機3的印刷數據整體的大小(大小M)的信息(Content-Length頭部)。從服務器2發送出的印刷數據通過通信部34、執行通信程序的控制器31,存儲在接收緩沖器32中。前述的印刷數據整體的大小M也存儲在接收緩沖器32中。控制器31對接收緩沖器32內的數據進行解析從而取得并存儲大小M。該大小M的存儲,通過控制器31按照印刷數據的印刷完成而被消去。接下來,若處理緩沖器33 (第一處理緩沖器331)中存在空間,則控制器31將接收緩沖器32中存儲的印刷數據轉送到處理緩沖器33 (第一處理緩沖器331)中,并且對轉送了的累積印刷數據的數據量(大小η)進行測量。此外,從接收緩沖器32廢棄已經轉送給處理緩沖器33的印刷數據。按每一個印刷工作來測量數據量(大小η)( 一個印刷工作的印刷結束后,大小η的值被復位)。控制器31將轉送給了處理緩沖器33的印刷數據作為對象來實施印刷前處理。然后,控制器31基于實施了印刷前處理的數據來控制印刷部35執行印刷。與完成了印刷的部分相當的處理緩沖器33內的數據被廢棄。對于在控制器31反復執行印刷數據的接收、印刷數據的從接收緩沖器32向處理緩沖器33的轉送、被轉送的數據量的測量、印刷前處理、印刷執行的步驟的中途,在打印機3中發生了錯誤的情況下的順序,以后進行說明。對于該情況下的錯誤,例如可以假設印刷用紙用完、墨水用完等比較輕度的,用戶解除錯誤后繼續進行印刷到重新開始也不會產生問題的種類的錯誤。發生打印機3中的錯誤時,在打印機3中不能繼續進行印刷,所以控制器31中斷印刷動作。此外,控制器31為了印刷再開始,針對處理緩沖器33內的數據不進行廢棄而保留。因為處理緩沖器33內不產生空間,所以控制器31不將接收緩沖器32內的印刷數據轉送給處理緩沖器33。因此,接收緩沖器32被包括從服務器2陸續接收的印刷數據并且仍未成為印刷前處理的處理對象的印刷數據的數據填滿,成為不能接收后續的印刷數據的狀態。
為了將該狀態通知給服務器2,控制器31在與S130的從服務器2的印刷數據的發送對應的ACK包中將窗口大小設定為“O”從而向服務器2發送(S135)。將該狀態稱為零窗口狀態。服務器2在判斷為零窗口狀態持續了規定期間(例如5分鐘)時,發送用于切斷HTTP會話的數據(S140)。具體而言,例如服務器2向打印機3發送RST(Reset)包。其結果,打印機3與服務器2之間的會話被切斷。會話被切斷后,控制器31廢棄在接收緩沖器32中存儲的印刷數據。錯誤被解除、成為能夠重新開始印刷的時期未定,將HTTP會話持續維持到該時期,對服務器2造成負擔。具體而言,成為長期間不能釋放按每會話而預先確保的存儲器區域的狀態,其結果,從接收由其他通信終端發送出的電子郵件開始到執行印刷為止的時間延遲。為了防止該延遲,暫時切斷服務器2與打印機3之間的會話。控制器31檢測到打印機3中的錯誤被解除時,控制器31使用處理緩沖器33中所存儲的印刷數據來重新開始印刷前處理、印刷。此外,控制器31按照錯誤的解除的檢測,再次建立與服務器2的HTTP會話(S145),向服務器2發送印刷數據發送請求(S150)。在S150中的印刷數據的發送請求、即錯誤解除后進行的印刷數據的發送請求的情況下,控制器31指定發生了錯誤的時點的印刷數據的下載目的地URI、和表示基于已經轉送給處理緩沖器33的數據量(大小η)的值除了已經成為印刷前處理的處理對象的印刷數據而剩下的印刷數據的部分的范圍,進行發送請求。從服務器2接收并已存儲在接收緩沖器32中的印刷數據伴隨會話的切斷而被廢棄,所以接收緩沖器32中已存儲的部分的印刷數據也作為再取得的對象。具體而言,控制器31比較印刷數據整體的大小M和大小η,若大小Μ>大小η > 0,則范圍指定從距印刷數據的開頭為大小η分的數據后續的位置開始到印刷數據的末尾(大小M的位置)為止的(大小M-大小η)分的印刷數據。對于范圍指定,使用HTTP的range頭部。圖5是表示一個印刷工作中包含的印刷數據的示意圖,是用于說明打印機3中的發生了錯誤的時點的印刷數據的狀態的一例的示意圖。在該例中,將印刷數據從其開頭分為4個部分,按照距開頭由近到遠的順序稱為dl、d2、d3、d4。對于印刷數據,從其開頭依次從服務器2發送,并且依次存儲在接收緩沖器32中,轉送到處理緩沖器33實施印刷前處理,進行印刷,并且廢棄。設在發生了錯誤時,印刷數據之中從開頭開始規定大小分的印刷數據dl是已經完成印刷并且從處理緩沖器33廢棄的數據,印刷數據dl后續的印刷數據d2是轉送到處理緩沖器33中并且處于印刷前處理中的數據以及處于印刷中的數據,印刷數據d2后續的印刷數據d3是存儲在接收緩沖器32中的狀態并且仍未轉送給處理緩沖器33的狀態的數據。設印刷數據d3后續的印刷數據d4是打印機3中仍未被接收的數據。在該狀態的時點發生了錯誤的情況下,控制器31將印刷數據d3和印刷數據d4的部分作為S150中的印刷數據的發送請求中指定的范圍。因此,在解除了錯誤后,印刷數據d2直接被重新開始印刷前處理、印刷,在印刷結束后從處理緩沖器33廢棄。此外,印刷數據d3以及印刷數據d4從服務器2發送給打印機3,進行印刷前處理和印刷。服務器2將被請求的部分的印刷數據發送給打印機3 (S155)。打印機3的控制器 31接收印刷數據并且存儲到接收緩沖器32中后,與上述同樣地,轉送到處理緩沖器33實施印刷前處理之后執行印刷。若與一個印刷工作對應的印刷完成,則作為印刷工作狀態而向服務器2通知印刷結束(S160),若不存在其他針對打印機3的印刷工作,則服務器2切斷與打印機3的會話(S165)。另外,在重新開始印刷后再次發生了錯誤的情況下,與S135同樣地,在與從服務器2的印刷數據的發送對應的ACK包中將窗口大小設定為“O”并發送給服務器2,并且重復S140以后的動作。如以上說明的那樣,根據本實施方式,在印刷數據向處理緩沖器33的轉送沒有結束的狀態下切斷了與服務器2的會話的情況下,會話再連接后,不進行向處理緩沖器33已經轉送完成并且成為了印刷前處理的處理對象的(處理中或者已經處理的)印刷數據的發送請求,而對服務器進行仍未轉送給處理緩沖器33并且仍未成為印刷前處理的處理對象的印刷數據的發送請求。因此,能夠防止對于已經完成印刷的部分、印刷前處理中的部分的印刷數據,再次進行印刷前處理來執行印刷。其結果,能夠從印刷中斷時開始接著重新開始印刷,所以能夠防止無端地浪費墨水、印刷介質等的消耗品。此外,因為是接著重新開始印刷,所以與再次從最初開始進行印刷的情況相比,還能夠縮短印刷所需要的時間。2.第二實施方式第二實施方式是服務器2未對應基于range頭部的范圍指定的情況的實施方式。以下,適當省略與第一實施方式的共同點的說明,來進行第二實施方式的說明。圖4是本實施方式中的印刷順序的順序圖,S150’以后的動作與第一實施方式不同。在S150’中與S125同樣地,控制器31向服務器2發送印刷工作中包含的印刷數據整體的發送請求。按照來自打印機3的印刷數據的發送請求,服務器2將印刷數據再次從開頭開始依次發送給打印機3 (S155)。打印機3的控制器31將從服務器2發送出的印刷數據與S130同樣地存儲到接收緩沖器32中。接收緩沖器32中所存儲的是從由S105通知的印刷工作所表示的印刷數據的開頭部分開始,所以控制器31將接收緩沖器32內的印刷數據并且從由印刷工作所示的印刷數據的開頭開始的預先測量的數據量(大小η)分、即已經轉送給處理緩沖器33的分的印刷數據廢棄,而不轉送給處理緩沖器33。而且控制器31接收仍未成為印刷前處理的處理對象而轉送給處理緩沖器33的部分的印刷數據后,不使其從接收緩沖器32廢棄,而在處理緩沖器33中出現空間后轉送給處理緩沖器33,以作為印刷前處理的對象。
在S155由服務器2從開頭開始發送印刷數據時,控制器31從接收緩沖器32廢棄從開頭開始的大小η分的印刷數據而不轉送給處理緩沖器33。從接收緩沖器32中接收到印刷數據d3以后的印刷數據開始,依次向處理緩沖器33轉送印刷數據d3以后到印刷數據的末尾為止的印刷數據。對于轉送給處理緩沖器33的印刷數據,控制器31與上述同樣地實施印刷前處理來執行印刷。由此,在解除了錯誤后,印刷數據d2直接被重新開始印刷前處理、印刷,在印刷結束后從處理緩沖器33廢棄。此外,印刷數據d3以及印刷數據d4從服務器2向打印機3發送,進行印刷前處理和印刷。之后,與第一實施方式同樣地,在與一個印刷工作對應的印刷完成后,進入作為印刷工作狀態而向服務器2通知印刷結束的S160的動作。如以上說明的那樣,根據本實施方式,在印刷數據向處理緩沖器33的轉送未結束的狀態下與服務器2的會話被切斷的情況下,在會話再連接后,不會將所接收到的印刷數 據中已經轉送給處理緩沖器33并且成為了印刷前處理的處理對象的部分(或者已經完成印刷并被廢棄的部分)的印刷數據再次轉送給處理緩沖器33,而提取仍未轉送給處理緩沖器33并且仍未成為印刷前處理的處理對象的印刷數據并轉送給處理緩沖器33作為印刷前處理的對象。因此,能夠防止對于已經完成印刷的部分、印刷前處理中的部分的印刷數據,再次進行印刷前處理來執行印刷。3.第三實施方式第三實施方式是根據錯誤的種類來變更處理的情況的實施方式。以下,適當省略與第一實施方式或者第二實施方式的共同點的說明,來進行第三實施方式的說明。圖6是表示本實施方式中的包括打印機(數據處理裝置、印刷裝置)3和服務器2的印刷系統整體的構成的框圖。服務器2由包括應用服務器21、SMTP服務器22、HTTP服務器23以及XMPP服務器24的4個以上的計算機構成。應用服務器21、SMTP服務器22、HTTP服務器23、XMPP服務器24分別具備未圖示的CPU、RAM、ROM、硬盤裝置、通信部和連接它們的內部接口。通信部將從因特網經由LAN而接收的信號按照協議進行變換之后發送給內部總線,并且將從內部總線取入的信號按照協議進行變換之后經由LAN發送給因特網。SMTP服務器22 具有基于 SMTP (Simple Mail Transfer Protocol,簡單郵件傳輸協議)收發電子郵件的功能,所述電子郵件發送給登記到應用服務器21中的分配給打印機3的電子郵件地址。HTTP服務器23具有基于HTTP (Hyper Text Transfer Protocol,超文本傳輸協議)與打印機3進行通信的功能,作為將印刷數據發送給打印機3的“發送部”而發揮功能。XMPP 服務器 24 具有基于 XMPP (Extensible Messaging and Presence Protocol,可擴展通訊和表示協議)與打印機3進行通信的功能,向打印機3發送印刷工作存在通知。另外,XMPP服務器24也可以是使用Telnet、Web Socket等的協議代替XMPP進行通信的服務器。應用服務器21具有如下功能基于SMTP接收電子郵件后,基于該電子郵件生成與對應的打印機3相應的印刷數據并存儲到服務器2內的存儲器(相當于“存儲部”),并且基于XMPP向對應的打印機3發送印刷工作存在通知,將所生成的印刷數據按照來自打印機3的基于HTTP的發送請求發送給打印機3。圖7是例示打印機3中識別的錯誤的內容和錯誤代碼和各錯誤被分類的組的對應關系的圖。在控制器31的ROM中對應地存儲錯誤代碼和錯誤被分類的組。“無印刷介質”是由于在打印機3中沒有設置規定印刷介質而不能執行印刷的錯誤。“無顏色材料”是由于沒有墨水、調色劑等印刷所使用的顏色材料(記錄劑)而不能執行印刷的錯誤。“印刷介質的類型不一致”是例如印刷工作中所指定的相紙、普通紙等那樣的印刷介質的種類、與打印機3中所設置的印刷介質的種類不一致的錯誤。“罩蓋打開”是由于將收納印刷頭等的進行印刷動作的機械部件的框體進行覆蓋的可動式的罩蓋為被開放的狀態而不能執行印刷的錯誤。以上的錯誤,是期望在錯誤解除后從由于錯誤而中斷時接著重新開始印刷的錯誤。因此,以上的錯誤被分類為作為接著重新開始印刷的錯誤的組的“第一組”。“印刷介質堵塞”是由于印刷介質在印刷介質的輸送路徑上堵塞而不能執行印刷的錯誤。“機械式異常”是由于在打印機3中發生了某種機械式異常而不能執行印刷的錯誤。“停電”是由于沒有供電而不能執行印刷的錯誤。這些錯誤,是期望在錯誤解除后從最 初再次執行印刷工作的錯誤。因此,這些錯誤被分類為作為從最初開始重新進行印刷的錯誤的組的“第二組”。圖8是本實施方式中的印刷順序的順序圖,S150”以后的動作與之不同。在S150”中,控制器31向服務器2發送印刷數據發送請求。在S150”中,判別所發生的錯誤的內容,按照錯誤的內容來切換發送請求的形態。具體而言,在錯誤被分類為第一組的情況下,指定由于錯誤而中斷的接著的范圍來進行發送請求,在錯誤被分類為第二組的情況下,針對印刷數據整體再次進行發送請求。首先,在第一組的錯誤的情況下(范圍指定的情況下),與第一實施方式同樣地進行動作。即,控制器31檢測到錯誤被解除時,使用處理緩沖器33中所存儲的印刷數據來重新開始印刷前處理、印刷。此外,控制器31指定發生了錯誤的時點的印刷數據的下載目的地URI、和表示基于已經轉送給處理緩沖器33的數據量(大小η)的值除了已經成為印刷前處理的處理對象的印刷數據而剩下的印刷數據的部分的范圍,進行發送請求。然后,打印機3的控制器31接收印刷數據并存儲到接收緩沖器32中后,與第一實施方式同樣地轉送到處理緩沖器33來實施印刷前處理執行印刷。因此,在錯誤解除之后,印刷數據d2直接被重新開始印刷前處理、印刷,在印刷結束后,從處理緩沖器33廢棄。此外,印刷數據d3以及印刷數據d4從服務器2發送給打印機3,進行印刷前處理和印刷。當然,也可以與第二實施方式同樣地進行動作。接下來,對于在第二組的錯誤的情況(再取得整體的情況)進行說明。在所發生的錯誤被分類為第二組的情況下,控制器31將處理緩沖器33中所存儲的印刷前處理前、處理中、處理后的數據廢棄,與S125同樣地進行對于印刷工作中包含的印刷數據整體的發送請求(S150”)。即,若使用圖5進行說明,則控制器31進行對于印刷數據dl、d2、d3、d4的發送請求。服務器2按照來自打印機3的發送請求,依次向打印機3發送印刷工作中包含的印刷數據整體(dl、d2、d3、d4) (S155)。而且,打印機3的控制器31將從服務器2發送出的印刷數據與S130同樣地依次存儲到接收緩沖器32中,再一次從印刷工作表示的印刷數據的開頭部分的印刷數據dl的開頭開始轉送給處理緩沖器33,執行印刷前處理和印刷。因此,在錯誤解除后,再次從開頭執行印刷。當然,在印刷工作中包含多頁的情況下,也可以忽視成功進行了印刷的頁的數據,從發生錯誤而印刷失敗的頁的最初開始重新開始印刷。之后,在與一個印刷工作對應的印刷完成后,打印機3作為印刷工作狀態而將印刷結束通知給服務器2 (S160),若不存在其他針對打印機3的印刷工作,則服務器2切斷與打印機3的HTTP會話(S165”)。另外,在重新開始印刷后再次發生了錯誤的情況下,與S135同樣地在與從服務器2的印刷數據的發送對應的ACK包中將窗口大小設定為“O”之后發送給服務器2,重復S140以后的動作。如以上說明的那樣,根據本實施方式,能夠按照所發生的錯誤的內容來切換會話再連接后的印刷數據的發送請求的形態。在發生了期望從由于錯誤產生的中斷時接著重新開始印刷的錯誤的情況下,不進行已經轉送給處理緩沖器33并且成為了印刷前處理的處理對象的(處理中或者處理完成的)印刷數據的發送請求,而對服務器進行仍未轉送給處理緩沖器33并且仍未成為印刷前處理的處理對象的印刷數據的發送請求。因此,能夠防止對于已經印刷完成的部分、印刷前處理中的部分的印刷數據,再次進行印刷前處理來執行印刷。其結果,由于可以從印刷中斷時接著重新開始印刷,所以能夠防止無 端地浪費墨水、印刷介質等的消耗品。此外,因為接著重新開始印刷,所以與再次從最初開始進行印刷的情況相比,還可以縮短印刷所需要的時間。另一方面,在發生了期望從最初開始重新進行印刷的錯誤的情況下,在會話再連接后,再次對服務器進行對印刷數據整體的發送請求,從服務器重新接收印刷數據整體。然后,從印刷數據的開頭開始依次再次進行印刷前處理,從而能夠重新進行印刷工作中包含的印刷數據整體的印刷。4.其他實施方式另外,本發明的技術范圍不限定于上述的實施例,當然在不脫離本發明的主旨的范圍內,可以進行各種變更,例如由具備全部功能的物理上的一個裝置構成服務器,或者相反,按照通過由多個裝置協作來具備各功能的方式,由物理上的多個裝置構成服務器等。例如,在上述實施方式中,說明了將數據處理裝置適用于打印機的例子,但是能夠適用于對服務器請求處理數據,并且使用從服務器取得到的處理數據來進行某種處理的各種裝置。例如,可以適用于從服務器接收游戲數據來提供游戲的游戲機。此外,例如在上述第一實施方式中示出了服務器2對應于基于HTTP的range頭部的范圍指定,向打印機3發送按照來自打印機3的所請求的范圍指定的印刷數據的例子,在上述第二實施方式中示出了服務器2不對應于基于HTTP的range頭部的范圍指定,向打印機3發送來自打印機3的所請求的全部印刷數據的例子,但是也可以存在打印機3不知道服務器2是否對應于基于range頭部的范圍指定的情況。在該情況下,在第一實施方式中所說明的圖3的S150中,打印機3與第一實施方式同樣地進行執行了范圍指定的印刷數據發送請求,但是在服務器2將表示未進行對應的信息作為HTTP狀態代碼通知給打印機3的情況下,發送印刷工作中包含的印刷數據整體。作為狀態代碼,在發送與范圍指定對應的部分的印刷數據的情況下,從服務器2通知“206”,在不對應于范圍指定而發送印刷數據整體的情況下,從服務器2通知“200”。控制器31將從服務器2發送出的印刷數據與上述同樣地存儲于接收緩沖器32。控制器31對于進行了范圍指定的發送請求,針對從服務器2通知的狀態代碼進行判別,在狀態代碼表示發送與范圍指定對應的部分的印刷數據的情況下,即狀態代碼為“206”的情況下,進行與上述的第一實施方式的S155以后同樣的動作。另一方面,在狀態代碼表示不對應于范圍指定而發送印刷數據整體的情況下,即狀態代碼為“200”的情況下,進行與上述的第二實施方式的S155以后同樣的動作。這在第三實施方式中也可以同樣進行。
此外,在上述實施方式中,說明了從接收緩沖器32向處理緩沖器33轉送印刷數據時對轉送完成印刷數據的累積數據量進行計數的例子(參照圖2),但是也可以在接收緩沖器32中存儲了印刷數據的時點,作為成為“印刷處理部”的處理對象,在接收緩沖器32中存儲了印刷數據的時點,對存儲完成印刷數據的累積數據量進行計數。在該情況下,執行通信程序的控制器31和通信部34相當于“接收部”,執行印刷程序的控制器31和接收緩沖器32和處理緩沖器33相當于“印刷處理部”。圖9是用于說明該情況下的印刷數據的狀態的示意圖。若參照圖9進行說明,則該情況下,大小η相當于將dl和d2和d3合計的大小。而且,在圖9所示的狀態時發生了錯誤的情況下,在再連接后進行范圍指定來請求印刷數據時,指定印刷數據d4的部分。在從服務器2發送了印刷數據整體的情況下,將dl d3的部分暫時存儲于接收緩沖器32之后從接收緩沖器32廢棄從而在接收緩沖器32依次存儲d4的部分。另外,在該變形例的情況下,即使在S140切斷了會話,控制器31也不廢棄接收緩沖器32內的印刷數據d3。此外,對于錯誤發生時處理緩沖器33中已存在的數據(圖5、圖9的印刷數據d2),也可以在錯誤解除前使印刷前處理完成并存儲于最終級的處理緩沖器33即第五處理緩沖 器335。在該情況下,因為能夠在錯誤解除后不進行對于該印刷數據d2的印刷前處理而進行印刷,所以能夠有利于縮短印刷時間。另外,對于在錯誤發生時處理緩沖器33中已存在的數據(圖5、圖9的印刷數據d2)的印刷前處理、印刷的重新開始,也可以在從服務器2發送了后續的印刷數據(圖5、圖9的印刷數據d3)之后執行。此外,上述實施方式中所說明的緩沖器的構成(圖2)只不過是一例,并非限定于此。此外,也可以由服務器2進行上述實施方式中所示出的印刷前處理的一部分或者全部。此外,也可以服務器2將未提煉的印刷對象通知給打印機3,打印機3提煉印刷對象來生成印刷數據,并且對該印刷數據進行印刷前處理。因此,從服務器2發送的印刷數據的形式也不限定于上述實施方式中所示的例子。此外,在上述第三實施方式中,控制器31按照錯誤的內容對發送請求的形態進行了切換,但是控制器31也可以進行包括錯誤的內容、以及表示剩余印刷數據的部分的范圍的發送請求。在該情況下,服務器基于與發送請求一起發送來的錯誤的內容,判斷是發送印刷數據的全部還是僅發送一部分。然后,服務器根據該判斷結果來進行發送。此外,上述第三實施方式中所例示的錯誤及其分類是一例,還可以考慮將各種錯誤分類為第一組或者第二組,或者在分類中不包含上述實施方式中所例示的錯誤,或者變更上述實施方式中所例示的錯誤的分類。例如,可以設想將由于在貯留墨水的廢液的容器中廢液超過了容許量而不能繼續進行印刷的錯誤即“廢液溢出”作為分類為第二組的錯誤。此外,例如在印刷中打印機3的罩蓋被鎖住的情況下,因為在印刷中不會檢測到(不會發生)“罩蓋打開”的錯誤,所以在印刷中可以不將“罩蓋打開”分類為第一組和第二組的任一個。而且,例如也可以將“停電”分類為第一組,在通電后從由于錯誤產生的中斷時接著重新開始印刷。而且,可以在適用于從服務器接收游戲數據來提供游戲的游戲機的情況下,若是動作游戲、射擊游戲的場景中的錯誤則分類為第二組,若是其他錯誤則分類為第一組。另外,在上述實施方式中,通過一系列的HTTP會話來進行內容信息的發送請求 接收、以及、印刷數據的發送請求 接收,但是也可以在內容信息的發送請求 接收(圖3的S115 S120)之后切斷HTTP會話,在印刷數據的發送請求(圖3的S125)之前重新建立HTTP會話從而進行印刷數據的發送請求 接收。此外,上述各實施方式對錯誤和從錯誤的恢復進行了說明,但是不局限于此 ,也適用于在錯誤以外中斷之后進行恢復的情況。在第三實施方式的情況下,還可以將中斷理由分類為第一組或者第二組。
權利要求
1.一種處理裝置,具備 請求部,其對服務器進行處理數據的發送請求; 接收部,其接收按照所述發送請求從所述服務器發送出的所述處理數據; 處理部,其將所接收到的所述處理數據依次作為處理對象,并根據成為了所述處理對象的所述處理數據進行處理;和 測量部,其測量所接收到的所述處理數據中的成為了所述處理部的所述處理對象的所述處理數據的數據量, 在全部所述處理數據成為所述處理對象之前,與所述服務器的會話被切斷并且之后進行了再連接的情況下,所述處理部在所述會話的再連接后根據在所述會話切斷之時所述測量部的測量完成的所述數據量,基于所述處理數據中的仍未成為所述處理對象的第I部分進行處理,而不進行基于所述處理數據中的已經成為所述處理對象的第2部分的處理。
2.根據權利要求I所述的處理裝置,其中, 在全部所述處理數據成為所述處理對象之前,與所述服務器的會話被切斷并且之后進行了再連接的情況下,所述請求部在所述會話的再連接后根據在所述會話切斷之時所述測量部的測量完成的所述數據量,進行不包含所述第2部分的所述第I部分的發送請求。
3.根據權利要求2所述的處理裝置,其中, 所述處理部在所述會話的再連接后所接收到的所述處理數據僅是所述第I部分的情況下,將該部分作為所述處理對象,在所述會話的再連接后所接收到的所述處理數據已經包括所述第I部分和所述第2部分的情況下,根據所述測量部測量出的所述數據量,從所接收到的所述處理數據中提取所述第I部分作為所述處理對象。
4.根據權利要求I所述的處理裝置,其中, 在全部所述處理數據成為所述處理對象之前,與所述服務器的會話被切斷并且之后進行了再連接的情況下,所述處理部根據所述測量部測量出的所述數據量,從按照所述請求部再次進行了所述處理數據的發送請求而由所述接收部接收到的所述處理數據中提取所述第I部分作為所述印刷對象。
5.根據權利要求I所述的處理裝置,其中, 在所述處理部完成所述處理數據的取得之前,中斷了所述處理數據的取得后再取得所述處理數據的情況下,所述處理部在中斷了所述處理數據的取得的理由被分類為第一組的情況下,基于所述第I部分進行處理,而不進行基于所述第2部分的處理,所述處理部在中斷了所述處理數據的取得的理由被分類為第二組的情況下,基于所述第I部分和所述第2部分進行處理。
6.根據權利要求I所述的處理裝置,其中, 所述接收部使第一存儲部存儲所接收到的所述處理數據, 所述處理部將第二存儲部中所存儲的所述處理數據作為所述處理對象來進行處理前處理,并基于所述處理前處理后的數據進行處理, 所述測量部測量從所述第一存儲部轉送給所述第二存儲部的所述處理數據的所述數據量。
7.根據權利要求I所述的處理裝置,其中, 所述請求部通過使用HTTP的range頭部進行范圍指定,從而進行仍未成為所述處理對象的部分的發送請求。
8.根據權利要求I所述的處理裝置,其中, 所述處理數據是印刷數據, 所述處理部是根據所取得到的所述印刷數據進行印刷的處理部。
9.根據權利要求5所述的處理裝置,其中, 所述處理數據是印刷數據, 所述處理部是根據所取得到的所述印刷數據進行印刷的處理部, 發生無印刷介質、無顏色材料、印刷介質的類型不一致、裝置罩蓋打開之中的至少任一種錯誤屬于被分類為所述第一組的所述理由,發生印刷介質堵塞、所述處理部的機械式異常、停電之中的至少任一種錯誤屬于被分類為所述第二組的所述理由。
10.一種處理方法,包括 請求步驟,對服務器進行處理數據的發送請求; 接收步驟,接收按照所述發送請求從所述服務器發送出的所述處理數據; 處理步驟,將所接收到的所述處理數據依次作為處理對象,并根據成為了所述處理對象的所述處理數據進行處理;和 測量步驟,測量所接收到的所述處理數據中的成為了所述處理對象的所述處理數據的數據量, 在全部所述處理數據成為所述處理對象之前,與所述服務器的會話被切斷并且之后進行了再連接的情況下,在所述處理步驟中,在所述會話的再連接后根據在所述會話切斷之時所述測量步驟的測量完成的所述數據量,基于所述處理數據中的仍未成為所述處理對象的第I部分進行處理,而不進行基于所述處理數據中的已經成為所述處理對象的第2部分的處理。
11.一種服務器,具備 存儲部,其存儲使數據處理裝置進行處理的處理數據;和 發送部,其向所述數據處理裝置發送所述處理數據, 在所述發送部完成所述處理數據的整體的發送之前,中斷了所述處理數據的發送后再發送所述處理數據的情況下,所述發送部在中斷了所述處理數據的發送的理由被分類為第一組的情況下進行針對所述處理數據的整體中的包括所述發送部未發送的部分的一部分的發送,在中斷了所述處理數據的發送的理由被分類為第二組的情況下進行針對所述處理數據的整體的發送。
全文摘要
本發明提供一種處理裝置、處理方法。處理裝置具備對服務器進行處理數據的發送請求的請求部、從所述服務器接收所述處理數據的接收部、根據所接收到的所述處理數據進行處理的處理部、和對所接收到的所述處理數據中的成為了所述處理部的所述處理對象的所述處理數據的數據量進行測量的測量部,在全部所述處理數據成為所述處理對象之前,與所述服務器的會話被切斷并進行了再連接的情況下,所述處理部根據所述測量部測量出的所述數據量,基于仍未成為所述處理對象的部分進行處理,而不進行基于已經成為所述處理對象的部分的處理。
文檔編號H04L29/06GK102970320SQ20121029915
公開日2013年3月13日 申請日期2012年8月21日 優先權日2011年8月31日
發明者大島康裕, 赤松裕隆, 古田泰大 申請人:精工愛普生株式會社