All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.jlangch.venice.postgresql-jdbc-install.venice Maven / Gradle / Ivy

The newest version!
;;;;   __    __         _
;;;;   \ \  / /__ _ __ (_) ___ ___
;;;;    \ \/ / _ \ '_ \| |/ __/ _ \
;;;;     \  /  __/ | | | | (_|  __/
;;;;      \/ \___|_| |_|_|\___\___|
;;;;
;;;;
;;;; Copyright 2017-2024 Venice
;;;;
;;;; Licensed under the Apache License, Version 2.0 (the "License");
;;;; you may not use this file except in compliance with the License.
;;;; You may obtain a copy of the License at
;;;;
;;;;     http://www.apache.org/licenses/LICENSE-2.0
;;;;
;;;; Unless required by applicable law or agreed to in writing, software
;;;; distributed under the License is distributed on an "AS IS" BASIS,
;;;; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
;;;; See the License for the specific language governing permissions and
;;;; limitations under the License.


;;;; Install PostgreSQL JDBC driver:
;;;;
;;;;   (load-module :postgresql-jdbc-install)
;;;;   (postgresql-jdbc-install/install :dir (repl/libs-dir) :silent false)
;;;;
;;;; Note: This not a package manager. The module provides functions to
;;;;       download Java libraries to a directory. 


(ns postgresql-jdbc-install)

(load-module :installer)


(defn libraries []
  [ "org.postgresql:postgresql:42.7.3" ] )


(defn dependencies []
  (maven/dependencies (libraries) :scope :runtime))


(defn
  ^{ :arglists '("(install options*)")
     :doc
       """
       Install the PostgreSQL JDBC driver.

       Options:

       | :dir path             | download dir, defaults to "." |
       | :silent {true,false}  | if silent is true does not show a progress \
                                 bar, defaults to true |
       """
     :examples '(
       """
       (do
         (load-module :postgresql-jdbc-install)
         (postgresql-jdbc-install/install :dir (repl/libs-dir) :silent false))
       """) }

  install [ & options]

  (apply installer/install-libs (libraries) options))


(defn 
  ^{ :arglists '("(installed?)")
     :doc
       """
       Returns true if the PostgreSQL JDBC driver is on the classpath else
       false.
       """
     :examples '(
       """
       (do
         (load-module :postgresql-jdbc-install)
         (postgresql-jdbc-install/installed?))
       """) }

  installed? []

  (exists-class? :org.postgresql.PGConnection))




© 2015 - 2024 Weber Informatics LLC | Privacy Policy