Open Source Projects
Sławomir Cichy, właściciel firmy, jako administrator oraz programista realizował kilkanaście projektów i w każdym z nich brakowało czegoś, jakiejś funkcjonalności, która wspierała by pracę. Dlatego też stworzył szereg bibliotek, które wykorzystujemy w swoich projektach. Poniżej skrócona lista projektów, które przechowujemy w repozytorium kodów źródłowych GitHub. Może komuś się przydadzą, albo posłużą jako przykłady gotowych rozwiązań..
Licencja
Większość projektów, o ile to nie zostało wyszczególnione w opisie projektu, objęte są licencją opartą o Apache License, Version 2.0.
Centrum Certyfikacyjne
https://github.com/slawascichy/certificate_center
Nazwa projektu | Akronim | Status | Ostatnia wersja | Inspekcja kodu |
---|---|---|---|---|
Centrum Certyfikacyjne | CertCenter | ACTIVE | 1.0.0 | n/a |
Centrum zarządzania certyfikatami SSL oparte o oprogramowanie OpenSSL oraz skrypty bash. Zbiór skryptów wspiera pracę administratora związaną z generacją oraz prowadzeniem ewidencji certyfikatów podpisanych samodzielnie. Narzędzie przydatne gdy chcemy skutecznie, bezkosztowo, zarządzać certyfikatami SSL naszej wewnętrznej infrastruktury.
SC Common
https://github.com/slawascichy/sccommon
Nazwa projektu | Akronim | Status | Ostatnia wersja | Inspekcja kodu |
---|---|---|---|---|
SC Common Libraries | SCCommon | ACTIVE | 1.0.7 |
Każdy twórca oprogramowania w trakcie swojej kariery zawodowej wypracowuje sobie rozwiązania ułatwiające mu tworzenie większych projektów. Na podobieństwo serii bibliotek Apache Commons stworzono zbiór bibliotek, które wykorzystywane sa w projektach, zarówno Open Source jak i komercyjnych. Projekt SCCommon to zbiór bibliotek pomocniczych, do których należą:
-
sccommon-cache - w bibliotece skonstruowano uniwersalne API obsługi pamięci podręcznej. Jako, że najczęściej wykorzystuję Ehcache, biblioteka zawiera implementację realizującą obsługę właśnie tego engine. W pewnym momencie projekt Hibernate przestał wspierać implementację Ehcache jako engine pamięci podręcznej. Moja implementacja pozwala na kontynuacje wykorzystania tandemu Hibernate+Ehcache przy wykorzystaniu nowszych wersji Hibernate.
-
sccommon-eclipse-emf-api - biblioteka pomocnicza zawierająca API
org.eclipse.wst.common.internal.emf.utilities.EncoderDecoder.class
. Biblioteka wykorzystywana do kompilacji projektów, w których wykorzystywane jest to API w celu tworzenia własnych rozwiązań szyfrujących, np. do szyfrowania danych przechowywanych w plikach konfiguracyjnych. -
sccommon-http-client - biblioteka wspierająca komunikacje HTTP/HTTPS.
-
sccommon-ldap - biblioteka wspierająca komunikację, wyszukiwanie oraz zarządzanie entry w repozytorium użytkowników LDAP.
-
sccommon-mail - biblioteka wspierająca mechanizmy wysyłania, odbioru oraz przetwarzania wiadomości e-mail.
-
sccommon-utils - biblioteka narzędziowa oparta na moich poprzednich projektach: schelper oraz scjdbc4jpa (scjdbc4jpa - to próba zbudowania frameworka odpowiedzialnego za komunikację z relacyjną bazą danych, podobnego do Hibernate, obsługa JPA. Obecnie projekt został porzucony, a zbudowane do tej pory komponenty zostały wykorzystane w innych rozwiązaniach, głównie do implementacji testów jednostkowych). Część funkcjonalności można zastąpić bardziej popularnymi rozwiązaniami, np. oferowanymi przez projekty Apache Commons, co robię bardzo często, ale doświadczenie, jakie zdobyliśmy podczas jej pisania, jest bardzo duże. Obejmuje ona obsługę ciągów znaków, np. konwersje z UTF-8 do ASCII, „styl polski” czyli bez polskich ogonków, metody sortowania list z ciągami znaków, operacje przycinania i dopełniania ciągów znaków (popularne metody
ltrim
,rtrim
,lrtrim
,lpad
,rpad
). Znajdziemy tam również przykłady wykorzystania adnotacji i wiele innych.
HgDB Client Open
https://github.com/slawascichy/hgdb-client-open
Nazwa projektu | Akronim | Status | Ostatnia wersja | Inspekcja kodu |
---|---|---|---|---|
HgDB Client Open | hgdb-client-open | ACTIVE | 3.1.1-SNAPSHOT | n/a |
Otwarty projekt implementacji klienta Java dla produktu Mercury DB (HgDB) 3.0.
Projekt ma inne licencjonowanie. Jest on projektem Open Source, ale można go wykorzystywać tylko i wyłącznie w celu realizacji projektu komunikacji z bazą HgDB. Licencja bazuje na BSD 3-Clause License. Zobacz HgDB Client License 1.0.
HgDB Grafana Datasource
https://github.com/slawascichy/hgdb-grafana-datasource
Nazwa projektu | Akronim | Status | Ostatnia wersja | Inspekcja kodu |
---|---|---|---|---|
MercuryDB (HgDB) 3.0 Data Source | sci-software-hgdb-datasource | ACTIVE | 1.0.0 |
Otwarty projekt źródła danych dla oprogramowania Grafana. Celem jest stworzenie odpowiedniego plugin'u pozwalającego na komunikację z produktem Mercury DB (HgDB) 3.0.
Projekt ma inne licencjonowanie. Jest on projektem Open Source, ale można go wykorzystywać tylko i wyłącznie w celu realizacji projektu komunikacji z bazą HgDB. Licencja bazuje na BSD 3-Clause License. Zobacz HgDB Client License 1.0.
CCRTO OpenAPI
https://github.com/SciSoftwareSlawomirCichy/ccrto-openapi
Nazwa projektu | Akronim | Status | Ostatnia wersja | Inspekcja kodu |
---|---|---|---|---|
CCRTO Open API | ccrto-openapi | ACTIVE | 1.2-SNAPSHOT | n/a |
Context and Case Request Transportable Objects Open API - biblioteka Java implementująca standard komunikacji wypracowany na rzecz integracji systemów informatycznych. Standard został opracowany na wzór rozwiązań opracowanych w Open API. Obecnie standard ten jest wykorzystywany w komunikacji pomiędzy komponentami Mercury DB (HgDB) 3.0: implementacją serwera a usługami Iron - POI Excel Serwer.
- TODO: Przygotuj przestrzeń CCRTO z dokumentującą/opisującą standard komunikacji.
- TODO: Realizacja implementacji CCRTO jako ogólnego protokołu dostępu do usług Mercury DB (HgDB) 3.0.
DB2 ODBC Config Reader
https://github.com/slawascichy/Db2OdbcConfigReader
Nazwa projektu | Akronim | Status | Ostatnia wersja | Inspekcja kodu |
---|---|---|---|---|
DB2 ODBC Config Reader | db2odbcconfigreader | ACTIVE | 1.0.3-SNAPSHOT | n/a |
Biblioteka zawierająca mechanizmy czytania konfiguracji ODBC dla baz danych IBM DB2 oraz, możliwości nawiązania połączeń JDBC na podstawie tak pozyskanych danych.