niedziela, maja 22, 2011

Mogłoby być łatwiej ;-)

W końcu zaczęło działać uploadowanie dowolnych plików do Google Docs, wcześniej było dostępne tylko dla szczęśliwych posiadaczy płatnych kont w Google Apps for Business. Teraz z tego ficzera może skorzystać już każdy....
Nie jest oczywiście tak różowo ;-) bo nie działa jak na razie podstawowa funkcjonalność uploadowania plików bez konwersji, działa jednak jej wariant z uploadowaniem w kawałkach, można więc z tego ficzera już korzystać.
Czyli wysyłanie pliku pod adres:
<code>https://docs.google.com/feeds/default/private/full?ocr=true</code>
nie działa, działa za to wysyłanie najpierw nagłówków pod:
<code>https://docs.google.com/feeds/upload/create-session/default/private/full?convert=false</code>
a później wysyłanie zawartości pliku pod adres zwrócony w nagłówku Location zwróconym przez serwer.

Ale.... Ale upload to jedno, download to drugie ;-) A żeby zrobić download trzeba dostać listę plików w Google Docs, a tego nie potrafi jeszcze żadna biblioteka (tudzież co równie prawdopodobne, nie wiem jak to zrobić ;-)), biblioteki podają tylko listę dokumentów Google Docs. Niestety we wszystkich moich projektach (poza Chrome2Chrome) używam do dostępu do Google Docs bibliotek Google'a (czyli w OOo2GD i w Echidna'ie), stąd teraz mam problem bo muszę je obejść bez wyłączania głównej funkcjonalności ;-)
A XML jest ohydny i trzeba napisać doń parser.... OK, kawałek parsera, bo SAX za nas zrobi resztę, ale i tak jest to upierdliwe.

Coś mi się wydaje, że zbliża się moment gdy będę musiał w ogóle zrezygnować z Google'owych bibliotek. Ważą w wersji Java'owej prawie czy nawet ponad 2MB, a sam jestem w stanie zakodować większość ich funkcji (tych które potrzebuje, bo biblioteki są duże dlatego, że pozwalają na różne kosmiczne rzeczy, które mnie nie są potrzebne) w paruset liniach.
Cały Bloggeroid, który używa właśnie napisanych z palca metod dostępu do API liczy koło 90 KB po kompilacji, inne klienty 500 KB i więcej ;-) bo używają bibliotek.

Na pierwszy ogień pójdzie chyba OOo2GD, raz że więcej ludzi go używa, dwa, że Java jest prostsza od obrzydliwego C#. W przypadku Echidny cholera wie czy w ogóle będę w stanie zrobić wersję "dla ludzi" bo używam jakichś bibliotek Dokan do mapowania dysku i jest to ohydne ;-)
W Windows panuje kult instalatorów, bo nie można po prostu wrzucić plików do katalogu, trzeba je często "rejestrować"....
Dlatego nie wiem czy nie będzie łatwiej zrobić po prostu synchronizacji katalogu ;-)

Ale jak uploadowanie do Google Docs dowolnych plików będzie działać to chyba rozważę kupno dodatkowej przestrzeni "dyskowej" od Google, 5 USD za dodatkowe 20 GB brzmi nieźle.
Btw. czy Google się zabezpiecza jakoś przed tym by np. nie wykorzystywano przestrzeni w Google Docs jako magazynu plików dla innych serwisów ;-) 16 TB za 4096 USD to znów nie byłoby tak dużo ;-)


Podobne postybeta
Jak "okradłem" Google Readera ;-)
Chrome OS, Chrome2Chrome i w ogóle Chrome ;-)
Wredne Google Docs
Ha! Ochidna Echidna potrafi updatować pliki :-)
Całkujący Dart ;-)