inet
Mój HttpSession jest trochę „do dupy”, bo uzależniony od Windowsa i jego WinInet. No cóż, potrzebowałem nas szybko jakąś łatwą i prostą obsługę sesji HTTP, wiec powstała ona taka jaka jest.
Od dawana chodzi mi pogłowie mała refaktoryzacja. Wydzielenie publicznego interfejsu i uniezależnienie się od systemu. Wersja win oparta dalej na WinInet, a wersja unixowa na cURL. Wtedy nawet Ci, co nie bardzo chcą widzieć winieta, mogą poprzez jedną flagę wykorzystać w windowsowej wersji także curla.
Skoro mięlibyśmy już obsługę http, łatwo można byłoby dorzucić obsługę sesji FTP. Wszakże wininet i curl to „obsługują”.
Tak oto dochodzimy do sedna, mamy już http i ftp, to czemu nie dorzucić jeszcze POP3, SMTP i NNTP. Takie proste, podstawowe protokoły ;)
Mielibyśmy taką fajną bibliotekę - inet ;)
Tylko, że ani wininet ani curl nie obsługują popa i jego kuzynów. Ale to nie przeszkoda, przecież bawiłem się niedawno w obiektowe sockety i sockstream. To można by jeszcze je dorzucić.
I tak oto powstała fajna biblioteka sieciowa, oczywiście crossplatformowa ;)
Na ładnej licencji MIT, a nie żadne komunistyczne GPL-e.
Teraz tylko pytanie, czy warto to napisać?
W sumie i tak będę kiedyś przerabiał HttpSession, sockety tez prawie już mam. Dopisanie tych kilku pierdol nie zajęłoby dużo czasu.
Tylko czy warto?
Bo przecież jest tyle innych libów sieciowych, obiektowych socketów i innych bebechów.
Sam nie wiem ;)
zwierzak:
07/04/2008 @ 23:30:30 | #1
Przepusz na Jave, będzie jak znalazł. Już od dłuższego czasu szukam czego podobnego, a oczywiście w standardowej wersji Javy nic takiego nie znajdziesz. Szybciej idzie to zaprogramować ręcznie na socketach.
malcom:
07/04/2008 @ 23:32:34 | #2
Nie wymawiaj tego slowa…
Java ble… ;p
Napisalem w niej to co mialem napisac, i narazie nie spieszy mi sie do niej wracac w tym zyciu :D
kwiateusz:
08/04/2008 @ 17:41:20 | #3
Pisz mal pisz, na pewno się przyda :)
Malcolm:
28/05/2008 @ 10:41:02 | #4
A dlaczego dwie wersje połączeń używasz ? Nie lepiej oprzeć windowsowa i unixową tylko o curl ?
malcom:
28/05/2008 @ 10:51:23 | #5
Tak byloby najprosciej ;)
Ale w wiekszosci przypadkow na Windowsie wystarczy to co oferuje wininet i pozbywamy sie narzutu kodu i czasu curla.
Wiem, ze dzis mamy takie czasy, ze nikogo nie obchodzi to czy exec zajmuje 1MB czy 2MB :P
Zawsze mozna dodac przy kompilacji mozliwosc wyboru czy win version ma uzywac curla czy wininet.