%global _empty_manifest_terminate_build 0 Name: python-AJAS Version: 0.2.3 Release: 1 Summary: Lightweight REST Sever framework, based on bottle License: GNU Lesser General Public License v3 (LGPLv3) URL: https://github.com/swip3798/AJAS Source0: https://mirrors.aliyun.com/pypi/web/packages/68/5b/28f628aaff406c90efcd82a81d45cf8785f3fbaf75f88c750d49b45a5eb9/AJAS-0.2.3.tar.gz BuildArch: noarch Requires: python3-bottle Requires: python3-gevent Requires: python3-Flask %description # AJAS [![Build Status](https://travis-ci.org/swip3798/AJAS.svg?branch=master)](https://travis-ci.org/swip3798/AJAS) [![License: LGPL v3](https://img.shields.io/badge/License-LGPL%20v3-blue.svg)](https://www.gnu.org/licenses/lgpl-3.0) [![Generic badge](https://img.shields.io/badge/Python%20Version-3.x-green.svg)]() ## Description Another JSON Api Server. This is a library for Python 3 to create fast JSON-Rest APIs. It uses flask and gevent in the background. ## Usage A simple start: ```python from AJAS import Api def simple_resolver(header, query): return {"hello":"world"} api = Api() api.add_get_resolver("/hello", simple_resolver) api.add_post_resolver("/hello", simple_resolver) api.run("localhost", 8080) ``` This will run an webserver returning `'{"hello":"world"}'` at the adress `http://localhost:8080/hello` for both GET and POST requests. ### Using blocks Using blocks allows you to seperate different parts of your API. This can be used for versioning. Also, blocks can hold a authenticator, which can accept or deny a request based on the header and query of the reuest. ```python from AJAS import Api, Authenticator class MyAuth(Authenticator): def authenticate(self, header, query): if someCheck() == True: return True else: return False def simple_resolver(header, query): return {"hello":"world"} api = Api() v1 = Block("/v1") v1.add_get_resolver("/hello", resolver) api.add_block(v1) api.run("localhost", 8080) ``` %package -n python3-AJAS Summary: Lightweight REST Sever framework, based on bottle Provides: python-AJAS BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-AJAS # AJAS [![Build Status](https://travis-ci.org/swip3798/AJAS.svg?branch=master)](https://travis-ci.org/swip3798/AJAS) [![License: LGPL v3](https://img.shields.io/badge/License-LGPL%20v3-blue.svg)](https://www.gnu.org/licenses/lgpl-3.0) [![Generic badge](https://img.shields.io/badge/Python%20Version-3.x-green.svg)]() ## Description Another JSON Api Server. This is a library for Python 3 to create fast JSON-Rest APIs. It uses flask and gevent in the background. ## Usage A simple start: ```python from AJAS import Api def simple_resolver(header, query): return {"hello":"world"} api = Api() api.add_get_resolver("/hello", simple_resolver) api.add_post_resolver("/hello", simple_resolver) api.run("localhost", 8080) ``` This will run an webserver returning `'{"hello":"world"}'` at the adress `http://localhost:8080/hello` for both GET and POST requests. ### Using blocks Using blocks allows you to seperate different parts of your API. This can be used for versioning. Also, blocks can hold a authenticator, which can accept or deny a request based on the header and query of the reuest. ```python from AJAS import Api, Authenticator class MyAuth(Authenticator): def authenticate(self, header, query): if someCheck() == True: return True else: return False def simple_resolver(header, query): return {"hello":"world"} api = Api() v1 = Block("/v1") v1.add_get_resolver("/hello", resolver) api.add_block(v1) api.run("localhost", 8080) ``` %package help Summary: Development documents and examples for AJAS Provides: python3-AJAS-doc %description help # AJAS [![Build Status](https://travis-ci.org/swip3798/AJAS.svg?branch=master)](https://travis-ci.org/swip3798/AJAS) [![License: LGPL v3](https://img.shields.io/badge/License-LGPL%20v3-blue.svg)](https://www.gnu.org/licenses/lgpl-3.0) [![Generic badge](https://img.shields.io/badge/Python%20Version-3.x-green.svg)]() ## Description Another JSON Api Server. This is a library for Python 3 to create fast JSON-Rest APIs. It uses flask and gevent in the background. ## Usage A simple start: ```python from AJAS import Api def simple_resolver(header, query): return {"hello":"world"} api = Api() api.add_get_resolver("/hello", simple_resolver) api.add_post_resolver("/hello", simple_resolver) api.run("localhost", 8080) ``` This will run an webserver returning `'{"hello":"world"}'` at the adress `http://localhost:8080/hello` for both GET and POST requests. ### Using blocks Using blocks allows you to seperate different parts of your API. This can be used for versioning. Also, blocks can hold a authenticator, which can accept or deny a request based on the header and query of the reuest. ```python from AJAS import Api, Authenticator class MyAuth(Authenticator): def authenticate(self, header, query): if someCheck() == True: return True else: return False def simple_resolver(header, query): return {"hello":"world"} api = Api() v1 = Block("/v1") v1.add_get_resolver("/hello", resolver) api.add_block(v1) api.run("localhost", 8080) ``` %prep %autosetup -n AJAS-0.2.3 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-AJAS -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Tue Jun 20 2023 Python_Bot - 0.2.3-1 - Package Spec generated