ASP adalah singkatan dari AsciiDoctor Server Protocol
- protokol komunikasi sederhana antara klien dan server asciidoctor yang akan melakukan semua operasi Asciidoctor. Jadi ini sedikit mirip dengan LSP di mana bagian bahasanya terpusat disediakan oleh server.
Halaman proyek utama: https://github.com/de-jcup/asp
Pelacakan masalah dilakukan di https://github.com/de-jcup/asp/issues
Wiki: https://github.com/de-jcup/asp/wiki
Dengan AsciiDoctor Editor untuk Eclipse, sangat sulit untuk menangani ketergantungan OSGI bersama dengan asciidoctor/asciidoctorj dan JRuby (lihat de-jcup/Eclipse-asciidoctor-editor#213)
Jadi, alih-alih selalu menangani hal ini lagi dengan dependensi baru, dll., bekerja dengan OSGI, proyek ini dimulai, untuk menjadi solusi mandiri, yang dapat digunakan oleh editor berbeda tanpa selalu memunculkan proses baru, melainkan menggunakan kembali instance server yang sudah dimulai yang akan sangat berguna. jauh lebih cepat daripada melakukan komunikasi proses baru ke varian yang terinstal.
Editor hanya akan mendelegasikan tugas konversinya ke sisi server dan memiliki lapisan komunikasi ke server yang akan menghasilkan informasi tentang lokasi keluaran yang dikonversi (atau kesalahan).
Terpisah dari instalasi sebenarnya, dapat digunakan pada sistem apa pun jika pengembang tidak memiliki kemungkinan untuk menginstal asciidoctor
Dilengkapi dengan pengaturan alat standar (akan memiliki dukungan HTML, docbook, dan PDF)
Dapat digunakan dari beberapa integrasi IDE (Eclipse-asciidoctor,… selengkapnya…)
Menyediakan perpustakaan klien untuk menggunakan server, sangat nyaman
Ini dimulai dengan aplikasi spring boot
, dengan pengontrol istirahat, dll., sangat bagus dan nyaman, tetapi… spring bootJar tidak berfungsi dengan benar dengan asciidoctorj
+ jruby
.
Menyediakan solusi toples lemak sendiri yang dikombinasikan dengan spring boot
berhasil seiring berjalannya waktu, tetapi saya mendapatkan setidaknya 59 MB pada awal pertama - ini terlalu banyak.
Spring boot juga hadir dengan banyak dependensi - dan asciidoctorJ memiliki banyak dependensi. Untuk mencegah efek lintas situs, protokol server klien harus sesederhana mungkin dan hampir tidak memiliki ketergantungan lagi.
Anda dapat menggunakan server ASP baik sebagai proses eksternal atau sebagai server tertanam.
Untuk kasus ini peluncur khusus telah dibuat. Cukup gunakan ExternalProcessAsciidoctorJServerLauncher
seperti yang dilakukan di ExternalProcessExample.java dan ExternalProcessWithDebugOutputExample.java
Sama seperti varian eksternal, tetapi gunakan EmbeddedAsciidoctorJServerLauncher
sebagai peluncur. Sebagai contoh, lihat tes integrasi.