Upgrading dependencies to gorealis v2 and thrift 0.12.0

This commit is contained in:
Renan DelValle 2018-12-26 17:25:59 -08:00
parent 7cbbea498b
commit 54b8d7942a
No known key found for this signature in database
GPG key ID: C240AD6D6F443EC9
1327 changed files with 137391 additions and 61476 deletions

65
vendor/git.apache.org/thrift.git/tutorial/cl/Makefile.am generated vendored Executable file
View file

@ -0,0 +1,65 @@
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.
setup-local-lisp-env: ensure-externals.sh
bash ensure-externals.sh
gen-cl: $(top_srcdir)/tutorial/tutorial.thrift
$(THRIFT) --gen cl -r $<
ALL_FILE_PREREQS = \
load-locally.lisp \
make-tutorial-server.lisp \
make-tutorial-client.lisp \
shared-implementation.lisp \
thrift-tutorial.asd \
tutorial-implementation.lisp
# NOTE: the server and client cannot be built in parallel
# because on loading the make-tutorial-* scripts SBCL will
# attempt to compile their dependencies. Unfortunately,
# because their dependencies are shared, parallel jobs can
# end up overwriting or corrupting the compiled files
all-local: gen-cl setup-local-lisp-env $(ALL_FILE_PREREQS)
$(SBCL) --script make-tutorial-server.lisp
$(SBCL) --script make-tutorial-client.lisp
tutorialserver: all
./TutorialServer
tutorialclient: all
./TutorialClient
clean-local:
-$(RM) -r gen-*
-$(RM) -r externals
-$(RM) -r quicklisp
-$(RM) -r lib
-$(RM) quicklisp.lisp
-$(RM) backport-update.zip
-$(RM) shared-implementation.fasl
-$(RM) tutorial-implementation.fasl
-$(RM) TutorialServer
-$(RM) TutorialClient
EXTRA_DIST = \
tutorial-implementation.lisp \
shared-implementation.lisp \
thrift-tutorial.asd \
make-tutorial-server.lisp \
make-tutorial-client.lisp

View file

@ -0,0 +1 @@
../../lib/cl/ensure-externals.sh

View file

@ -0,0 +1,22 @@
(in-package #:cl-user)
;;;; 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.
;;;; Just a script for loading the library itself, using bundled dependencies.
;;;; This is an identical copy of the file in lib/cl.
(require "asdf")
(load (merge-pathnames "externals/bundle.lisp" *load-truename*))
(asdf:load-asd (merge-pathnames "lib/de.setf.thrift-backport-update/thrift.asd" *load-truename*))
(asdf:load-system :thrift)

View file

@ -0,0 +1,51 @@
(in-package #:cl-user)
;;;; 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.
(require "asdf")
(load (merge-pathnames "load-locally.lisp" *load-truename*))
(asdf:load-system :net.didierverna.clon)
(asdf:load-asd (merge-pathnames "gen-cl/shared/thrift-gen-shared.asd" *load-truename*))
(asdf:load-asd (merge-pathnames "gen-cl/tutorial/thrift-gen-tutorial.asd" *load-truename*))
(asdf:load-asd (merge-pathnames "thrift-tutorial.asd" *load-truename*))
(asdf:load-system :thrift-tutorial)
(net.didierverna.clon:nickname-package)
(defun main ()
"Entry point for the binary."
(thrift:with-client (prot #u"thrift://127.0.0.1:9090")
(tutorial.calculator:ping prot)
(format t "ping()~%")
(format t "1 + 1 = ~a~%" (tutorial.calculator:add prot 1 1))
(let ((work-instance (tutorial:make-work :num1 5
:num2 0
:op tutorial:operation.divide
:comment "Booya!")))
(handler-case (format t
"5 / 0 = ~a - Oh, really? An exception should have been thrown here.~%"
(tutorial.calculator:calculate prot 1 work-instance))
(tutorial:invalidoperation (e)
(format t "---~%(Expected) Invalid Operation caught: ~%~a~%---~%" e))))
(let ((work-instance (tutorial:make-work :num1 15
:num2 10
:op tutorial:operation.subtract
:comment "Playing nice this time.")))
(handler-case (format t
"15 - 10 = ~a~%"
(tutorial.calculator:calculate prot 1 work-instance))
(tutorial:invalidoperation (e)
(format t "---~%(Unexpected) Invalid Operation caught: ~%~a~%---~%" e))))
(format t "Check log: ~a~%" (shared.shared-service:get-struct prot 1))))
(clon:dump "TutorialClient" main)

View file

@ -0,0 +1,29 @@
(in-package #:cl-user)
;;;; 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.
(require "asdf")
(load (merge-pathnames "load-locally.lisp" *load-truename*))
(asdf:load-system :net.didierverna.clon)
(asdf:load-asd (merge-pathnames "gen-cl/shared/thrift-gen-shared.asd" *load-truename*))
(asdf:load-asd (merge-pathnames "gen-cl/tutorial/thrift-gen-tutorial.asd" *load-truename*))
(asdf:load-asd (merge-pathnames "thrift-tutorial.asd" *load-truename*))
(asdf:load-system :thrift-tutorial)
(net.didierverna.clon:nickname-package)
(defun main ()
"Entry point for the binary."
(thrift:serve #u"thrift://127.0.0.1:9090" tutorial:calculator))
(clon:dump "TutorialServer" main)

View file

@ -0,0 +1,25 @@
(in-package #:shared-implementation)
;;;; 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.
(defvar *structs* (make-hash-table))
(defun shared.shared-service-implementation:get-struct (key)
(format t "getStruct(~a)~%" key)
(gethash key *structs*))
(defun add-log (key value)
(setf (gethash key *structs*)
(make-instance 'shared:sharedstruct
:key key
:value (write-to-string value))))

View file

@ -0,0 +1,17 @@
;;;; 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.
(asdf:defsystem #:thrift-tutorial
:depends-on (#:thrift-gen-tutorial)
:serial t
:components ((:file "shared-implementation")
(:file "tutorial-implementation")))

View file

@ -0,0 +1,41 @@
(in-package #:tutorial-implementation)
;;;; 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.
(defun tutorial.calculator-implementation:ping ()
(format t "ping()~%"))
(defun tutorial.calculator-implementation:add (num1 num2)
(format t "add(~a, ~a)~%" num1 num2)
(+ num1 num2))
(defun tutorial.calculator-implementation:calculate (logid work)
(format t "calculate(~a, ~a)~%" logid work)
(handler-case
(let* ((num1 (tutorial:work-num1 work))
(num2 (tutorial:work-num2 work))
(op (tutorial:work-op work))
(result
(cond
((= op tutorial:operation.add) (+ num1 num2))
((= op tutorial:operation.subtract) (- num1 num2))
((= op tutorial:operation.multiply) (* num1 num2))
((= op tutorial:operation.divide) (/ num1 num2)))))
(shared-implementation::add-log logid result)
result)
(division-by-zero () (error 'tutorial:invalidoperation
:why "Division by zero."
:what-op (tutorial:work-op work)))))
(defun tutorial.calculator-implementation:zip ()
(format t "zip()~%"))