Add core bar-db module.
This commit is contained in:
		
							parent
							
								
									148a4ece7f
								
							
						
					
					
						commit
						03c094214b
					
				
					 3 changed files with 58 additions and 11 deletions
				
			
		|  | @ -9,7 +9,7 @@ BRMINV_SOURCES=brminv.scm frontend.import.scm command-line.import.scm	\ | ||||||
| 	util-proc.import.scm duck.import.scm texts.import.scm		\
 | 	util-proc.import.scm duck.import.scm texts.import.scm		\
 | ||||||
| 	api-servlets.import.scm | 	api-servlets.import.scm | ||||||
| BRMINV_OBJS=brminv.o frontend.o command-line.o util-proc.o duck.o	\
 | BRMINV_OBJS=brminv.o frontend.o command-line.o util-proc.o duck.o	\
 | ||||||
| 	texts.o api-servlets.o | 	texts.o api-servlets.o bar-db.o | ||||||
| 
 | 
 | ||||||
| %.o: %.scm | %.o: %.scm | ||||||
| 	$(CSC) -c -static $< | 	$(CSC) -c -static $< | ||||||
|  | @ -48,7 +48,12 @@ TEXTS-SOURCES=texts.scm | ||||||
| texts.o: texts.import.scm | texts.o: texts.import.scm | ||||||
| texts.import.scm: $(TEXTS-SOURCES) | texts.import.scm: $(TEXTS-SOURCES) | ||||||
| 
 | 
 | ||||||
| API-SERVLETS-SOURCES=api-servlets.scm | API-SERVLETS-SOURCES=api-servlets.scm bar-db.import.scm | ||||||
| 
 | 
 | ||||||
| api-servlets.o: api-servlets.import.scm | api-servlets.o: api-servlets.import.scm | ||||||
| api-servlets.import.scm: $(API-SERVLETS-SOURCES) | api-servlets.import.scm: $(API-SERVLETS-SOURCES) | ||||||
|  | 
 | ||||||
|  | BAR-DB-SOURCES=bar-db.scm | ||||||
|  | 
 | ||||||
|  | bar-db.o: bar-db.import.scm | ||||||
|  | bar-db.import.scm: $(BAR-DB-SOURCES) | ||||||
|  |  | ||||||
							
								
								
									
										48
									
								
								backend/bar-db.scm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								backend/bar-db.scm
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,48 @@ | ||||||
|  | ;; | ||||||
|  | ;; bar-db.scm | ||||||
|  | ;; | ||||||
|  | ;; Bar database queries. | ||||||
|  | ;; | ||||||
|  | ;; ISC License | ||||||
|  | ;; | ||||||
|  | ;; Copyright 2023-2025 Brmlab, z.s. | ||||||
|  | ;; Dominik Pantůček <dominik.pantucek@trustica.cz> | ||||||
|  | ;; | ||||||
|  | ;; Permission to use, copy, modify, and/or distribute this software | ||||||
|  | ;; for any purpose with or without fee is hereby granted, provided | ||||||
|  | ;; that the above copyright notice and this permission notice appear | ||||||
|  | ;; in all copies. | ||||||
|  | ;;  | ||||||
|  | ;; THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL | ||||||
|  | ;; WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED | ||||||
|  | ;; WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE | ||||||
|  | ;; AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR | ||||||
|  | ;; CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS | ||||||
|  | ;; OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, | ||||||
|  | ;; NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN | ||||||
|  | ;; CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||||||
|  | ;; | ||||||
|  | 
 | ||||||
|  | (declare (unit bar-db)) | ||||||
|  | 
 | ||||||
|  | (module | ||||||
|  |     bar-db | ||||||
|  |     ( | ||||||
|  |      bar-db-init! | ||||||
|  |      ) | ||||||
|  | 
 | ||||||
|  |   (import scheme | ||||||
|  | 	  (chicken base) | ||||||
|  | 	  postgresql) | ||||||
|  | 
 | ||||||
|  |   (define bar-db-conn (make-parameter #f)) | ||||||
|  | 
 | ||||||
|  |   (define (bar-db-init! name host user pass) | ||||||
|  |     (bar-db-conn | ||||||
|  |      (connect | ||||||
|  |       `((dbname . ,name) | ||||||
|  | 	(host . ,host) | ||||||
|  | 	(user . ,user) | ||||||
|  | 	(password . ,pass))))) | ||||||
|  | 
 | ||||||
|  |   ) | ||||||
|  | @ -32,8 +32,8 @@ | ||||||
| 	intarweb | 	intarweb | ||||||
| 	uri-common | 	uri-common | ||||||
| 	(chicken string) | 	(chicken string) | ||||||
| 	postgresql | 	api-servlets | ||||||
| 	api-servlets) | 	bar-db) | ||||||
| 
 | 
 | ||||||
| (define -port- (make-parameter #f)) | (define -port- (make-parameter #f)) | ||||||
| (define -certificate- (make-parameter #f)) | (define -certificate- (make-parameter #f)) | ||||||
|  | @ -101,13 +101,7 @@ | ||||||
| (when (and (-user-) (-group-)) | (when (and (-user-) (-group-)) | ||||||
|   (switch-user/group (-user-) (-group-))) |   (switch-user/group (-user-) (-group-))) | ||||||
| 
 | 
 | ||||||
| (define dbconn | (bar-db-init! (-db-name-) (-db-host-) (-db-user-) (-db-pass-)) | ||||||
|   (connect |  | ||||||
|    `((dbname . ,(-db-name-)) |  | ||||||
|      (host . ,(-db-host-)) |  | ||||||
|      (user . ,(-db-user-)) |  | ||||||
|      (password . ,(-db-pass-))))) |  | ||||||
| (print dbconn) |  | ||||||
| 
 | 
 | ||||||
| (define (handle-api-calls) | (define (handle-api-calls) | ||||||
|   (define plst (cdr (uri-path (request-uri (current-request))))) |   (define plst (cdr (uri-path (request-uri (current-request))))) | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue