summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Nordberg <linus@nordberg.se>2009-06-25 17:49:32 +0200
committerLinus Nordberg <linus@nordberg.se>2009-06-25 17:49:32 +0200
commit6d3b3259a7c7e8d26faaf606ab6715b22942a1d5 (patch)
treed098602c768955147384786d42d42e9842d8076c
parent55edcd04e99000409cd7860b6ae14956ad7ec43c (diff)
PM.
-rw-r--r--.gitignore3
-rw-r--r--src/playground.lisp98
2 files changed, 101 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..ab3987c
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+.~
+doc
+*.fasl
diff --git a/src/playground.lisp b/src/playground.lisp
new file mode 100644
index 0000000..5cc1336
--- /dev/null
+++ b/src/playground.lisp
@@ -0,0 +1,98 @@
+(require 'cxml)
+(require 'usocket)
+(require 'cl-xmlspam)
+;;
+(klacks:with-open-source (s (cxml:make-source #p"s2.xml"))
+ (loop
+ for key = (klacks:peek s)
+ while key
+ do
+ (case key
+ (:start-element
+ (format t "~A {" (klacks:current-qname s)))
+ (:end-element
+ (format t "}")))
+ (klacks:consume s)))
+;;
+(klacks:with-open-source (s (cxml:make-source
+ (usocket:socket-stream (usocket:socket-connect
+ "victoria.tug.nordu.net"
+ 50001
+ :element-type '(unsigned-byte 8)))
+ :buffering nil))
+ (loop
+ for key = (klacks:peek-next s)
+ while key
+ do
+ (case key
+ (:start-document (format t " "))
+ (:start-element (format t "~A {" (klacks:current-qname s)))
+ (:end-element (format t "}"))
+ (:end-document (format t "~%")))
+ (klacks:consume s)))
+;;
+(use-package 'xspam)
+(defparameter *ns* '((urn . "urn:ietf:params:xml:ns:xfb-0.1")))
+(defun get-entry-xspam (sock)
+ (with-xspam-source (make-xspam-source sock :buffering nil)
+ (optional
+ (element :bgp_message ;;|bgp_message|
+ (text (format t "~A~%" _))))))
+;;
+(defun klacks-it (arr)
+ (let ((s (cxml:make-source arr)))
+ (loop
+ for key = (klacks:peek s)
+ while key
+ do
+ (case key
+ ;(:start-document (format t "*** start *** "))
+ ;(:end-document (format t "*** end ***~%"))
+ (:start-element (format t "~A {" (klacks:current-qname s)))
+ (:end-element (format t "}~%"))
+ (:characters (format t (klacks:current-characters s))))
+ (klacks:consume s))))
+
+(defun klacks-it2 (arr)
+ (let ((s (cxml:make-source arr)))
+ (do ((key (klacks:peek s) (klacks:peek s)))
+ ((null key))
+ (case key
+ ;(:start-document (format t "*** start *** "))
+ ;(:end-document (format t "*** end ***~%"))
+ (:start-element (format t "~A {" (klacks:current-qname s)))
+ (:end-element (format t "}~%"))
+ (:characters (format t (klacks:current-characters s))))
+ (klacks:consume s))))
+;;
+(let ((sock (usocket:socket-connect
+ "victoria.tug.nordu.net"
+ 50001
+ :element-type '(unsigned-byte 8))))
+ (loop for i from 1 to 5
+ do
+ (format t "~A: " i)
+ (f (usocket:socket-stream sock))
+ (format t "~%"))
+ (format t "Closing socket.~%")
+ (usocket:socket-close sock))
+
+;;;;
+(defun play ()
+ (let ((reader (new-reader "victoria.tug" 50001))
+ (xmls-builder (cxml-xmls:make-xmls-builder)))
+ (do ((e (next-xml-blurb reader "BGP_MESSAGE")
+ (next-xml-blurb reader "BGP_MESSAGE")))
+ ((null e))
+ (print (cxml:parse e xmls-builder)))
+ (close-reader)))
+;;
+(next-xml-blurb (new-reader "victoria.tug.nordu.net" 50001) "BGP_MESSAGE")
+
+;;
+(doquery (:select 'timestamp 'prefix 'label :from 'bgp-message)
+ (ts pref lbl)
+ (format t "~A ~A ~A~%" ts pref lbl))
+
+(select-dao 'bgp-message)
+