Skip to content

Instantly share code, notes, and snippets.

@tbatchelli
Created October 19, 2010 04:40
Show Gist options
  • Save tbatchelli/633623 to your computer and use it in GitHub Desktop.
Save tbatchelli/633623 to your computer and use it in GitHub Desktop.
; SLIME 20100404
user> (doc import)
-------------------------
clojure.core/import
([& import-symbols-or-lists])
Macro
import-list => (package-symbol class-name-symbols*)
For each name in class-name-symbols, adds a mapping from name to the
class named by package.name to the current namespace. Use :import in the ns
macro in preference to calling this directly.
nil
user> (import '(com.sun.xml.sw.commons.virtualbox_3_2 ))(ns vmfest.core
(:import [com.sun.xml.sw.commons.virtualbox_3_2 IWebSessionManager
IVirtualBox]))
; Evaluation aborted.
vmfest.core> (ns vmfest.core
(:import [com.sun.xml.ws.commons.virtualbox_3_2 IWebSessionManager
IVirtualBox]))
; Evaluation aborted.
vmfest.core> (def mgr (IWebSessionManager. "http://localhost:18083"))
; Evaluation aborted.
vmfest.core> (def mgr (IWebsessionManager. "http://localhost:18083"))
#'vmfest.core/mgr
vmfest.core> (def vbox (.logon mgr "test" "test"))
#'vmfest.core/vbox
vmfest.core> (.getVersion vbox)
; Evaluation aborted.
vmfest.core> vbox
#<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@7b17cda3>
vmfest.core> (def vbox-bean (bean vbox))
#'vmfest.core/vbox-bean
vmfest.core> vbox-bean
; Evaluation aborted.
vmfest.core> (show vbox)
; Evaluation aborted.
vmfest.core> (use '(clojure.contrib.repl-utils :only show))
; Evaluation aborted.
vmfest.core> (use '[clojure.contrib.repl-utils :only show])
; Evaluation aborted.
vmfest.core> (use '(clojure.contrib.repl-utils :only [show]))
; Evaluation aborted.
vmfest.core> (def vbox (.logon mgr "test" "test"))
#'vmfest.core/vbox
vmfest.core> (.getVersion vbox)
"3.2.10"
vmfest.core> (str "a" "B" "c")
"aBc"
vmfest.core> (def ml (vm-list vbox))
; Evaluation aborted.
vmfest.core> (.getMachines vbox)
; Evaluation aborted.
vmfest.core> (.getVersion vbox)
; Evaluation aborted.
vmfest.core> (def vbox (.logon mgr "test" "test"))
#'vmfest.core/vbox
vmfest.core> (.getVersion vbox)
"3.2.10"
vmfest.core> (def ml (vm-list vbox))
#'vmfest.core/ml
vmfest.core> ml
#<ArrayList [com.sun.xml.ws.commons.virtualbox_3_2.IMachine@1d1aed21]>
vmfest.core> (map print-vm ml)
(CentOS Testnil)
vmfest.core> (unless true "a")
; Evaluation aborted.
vmfest.core> (when-not true "a")
nil
vmfest.core> (when-not false "a")
"a"
vmfest.core> (set! *warn-on-reflection* true)
true
vmfest.core> (def connection (create-connection "localhost"))
#'vmfest.core/connection
vmfest.core> (def session (create-session connection "test" "test"))
; Evaluation aborted.
vmfest.core> (.disconnect mgr)
Reflection warning, NO_SOURCE_FILE:1 - reference to field disconnect can't be resolved.
; Evaluation aborted.
vmfest.core> (.disconnect mgr vbox)
Reflection warning, NO_SOURCE_FILE:1 - call to disconnect can't be resolved.
nil
vmfest.core> (def session (create-session connection "test" "test"))
; Evaluation aborted.
vmfest.core> (def session (create-session connection "test" "test"))
; Evaluation aborted.
vmfest.core> (def connection (create-connection "localhost"))
connecting to http://localhost:
#'vmfest.core/connection
vmfest.core> (def connection (create-connection "localhost"))
connecting to http://localhost:18083
#'vmfest.core/connection
vmfest.core> (def session (create-session connection "test" "test"))
#'vmfest.core/session
vmfest.core> (def connection (create-connection "localhost"))
connecting to http://localhost:18083
#'vmfest.core/connection
vmfest.core> (def session (create-session connection "test" "test"))
#'vmfest.core/session
vmfest.core> (def connection (create-connection "localhost")) (def mgr (create-session-manager localhost))
(def vbox (create-vbox mgr "test" "test"))
(def vms (vm-list vbox))
(map print-vm vms)
(start-vm mgr vbox "CentOS Test")
connecting to http://localhost:18083
; Evaluation aborted.
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(def vms (vm-list vbox))
(map print-vm vms)
(start-vm mgr vbox "CentOS Test")
Creating session manager for http://localhost:18083
; Evaluation aborted.
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(def vms (vm-list vbox))
(map print-vm vms)
(start-vm mgr vbox "CentOS Test")
Creating session manager for http://localhost:18083
; Evaluation aborted.
vmfest.core> (find-machine vbox "CentOS Test")
#<IMachine com.sun.xml.ws.commons.virtualbox_3_2.IMachine@463b3402>
vmfest.core> (find-machine vbox "helloW")
nil
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(def vms (vm-list vbox))
(map print-vm vms)
(start-vm mgr vbox "CentOS Test")
Creating session manager for http://localhost:18083
Session for VM aaf202d7-03ca-4348-8fe4-7a1c345b503e is opening...
nil
vmfest.core> (find-machine vbox "CentOS Minimal")
nil
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(def vms (vm-list vbox))
(map print-vm vms)
Creating session manager for http://localhost:18083
(CentOS TestCenOS Minimalnil nil)
vmfest.core> (find-machine vbox "CenOS Minimal")
#<IMachine com.sun.xml.ws.commons.virtualbox_3_2.IMachine@25844fbe>
vmfest.core> (bean (find-machine vbox "CenOS Minimal"))
; Evaluation aborted.
vmfest.core> (def minimal (find-machine vbox "CenOS Minimal"))
#'vmfest.core/minimal
vmfest.core> (.accessible minimal)
Reflection warning, NO_SOURCE_FILE:1 - reference to field accessible can't be resolved.
; Evaluation aborted.
vmfest.core> (.accessible minimal)
Reflection warning, NO_SOURCE_FILE:1 - reference to field accessible can't be resolved.
; Evaluation aborted.
vmfest.core> (use 'clojure.contrib.repl-utils)
nil
vmfest.core> (show minimal)
; Evaluation aborted.
vmfest.core> minimal
nil
vmfest.core> (def minimal (find-machine vbox "CenOS Minimal"))
#'vmfest.core/minimal
vmfest.core> minimal
nil
vmfest.core> (find-machine vbox "CenOS Minimal")
nil
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(def vms (vm-list vbox))
(map print-vm vms)
Creating session manager for http://localhost:18083
(CentOS TestCenOS Minimalnil nil)
vmfest.core> (def minimal (find-machine vbox "CenOS Minimal"))
#'vmfest.core/minimal
vmfest.core> minimal
#<IMachine com.sun.xml.ws.commons.virtualbox_3_2.IMachine@63a7a517>
vmfest.core> (.accessible minimal)
Reflection warning, NO_SOURCE_FILE:1 - reference to field accessible can't be resolved.
; Evaluation aborted.
vmfest.core> (show mimimal)
; Evaluation aborted.
vmfest.core> (show minimal)
=== public com.sun.xml.ws.commons.virtualbox_3_2.IMachine ===
[ 0] static cast : IMachine (IUnknown)
[ 1] <init> (String,VboxPortType)
[ 2] addStorageController : IStorageController (String,StorageBus)
[ 3] attachDevice : void (String,Integer,Integer,DeviceType,String)
[ 4] canShowConsoleWindow : Boolean ()
[ 5] createSharedFolder : void (String,String,Boolean)
[ 6] deleteSettings : void ()
[ 7] detachDevice : void (String,Integer,Integer)
[ 8] discardSettings : void ()
[ 9] enumerateGuestProperties : void (String,Holder*4)
[10] equals : boolean (Object)
[11] export : IVirtualSystemDescription (IAppliance)
[12] findSnapshot : ISnapshot (String)
[13] getAccelerate2DVideoEnabled : Boolean ()
[14] getAccelerate3DEnabled : Boolean ()
[15] getAccessError : IVirtualBoxErrorInfo ()
[16] getAccessible : Boolean ()
[17] getAudioAdapter : IAudioAdapter ()
[18] getBIOSSettings : IBIOSSettings ()
[19] getBootOrder : DeviceType (Long)
[20] getCPUCount : Long ()
[21] getCPUHotPlugEnabled : Boolean ()
[22] getCPUIDLeaf : void (Long,Holder*4)
[23] getCPUProperty : Boolean (CPUPropertyType)
[24] getCPUStatus : Boolean (Long)
[25] getClass : Class ()
[26] getClipboardMode : ClipboardMode ()
[27] getCurrentSnapshot : ISnapshot ()
[28] getCurrentStateModified : Boolean ()
[29] getDescription : String ()
[30] getExtraData : String (String)
[31] getExtraDataKeys : List ()
[32] getFirmwareType : FirmwareType ()
[33] getGuestProperty : void (String,Holder,Holder,Holder)
[34] getGuestPropertyNotificationPatterns : String ()
[35] getGuestPropertyTimestamp : BigInteger (String)
[36] getGuestPropertyValue : String (String)
[37] getHWVirtExProperty : Boolean (HWVirtExPropertyType)
[38] getHardwareUUID : String ()
[39] getHardwareVersion : String ()
[40] getHpetEnabled : Boolean ()
[41] getId : String ()
[42] getIoBandwidthMax : Long ()
[43] getIoCacheEnabled : Boolean ()
[44] getIoCacheSize : Long ()
[45] getKeyboardHidType : KeyboardHidType ()
[46] getLastStateChange : Long ()
[47] getLogFolder : String ()
[48] getMedium : IMedium (String,Integer,Integer)
[49] getMediumAttachment : IMediumAttachment (String,Integer,Integer)
[50] getMediumAttachments : List ()
[51] getMediumAttachmentsOfController : List (String)
[52] getMemoryBalloonSize : Long ()
[53] getMemorySize : Long ()
[54] getMonitorCount : Long ()
[55] getName : String ()
[56] getNetworkAdapter : INetworkAdapter (Long)
[57] getOSTypeId : String ()
[58] getPageFusionEnabled : Boolean ()
[59] getParallelPort : IParallelPort (Long)
[60] getParent : IVirtualBox ()
[61] getPointingHidType : PointingHidType ()
[62] getRTCUseUTC : Boolean ()
[63] getRef : String ()
[64] getRemoteWSPort : VboxPortType ()
[65] getSerialPort : ISerialPort (Long)
[66] getSessionPid : Long ()
[67] getSessionState : SessionState ()
[68] getSessionType : String ()
[69] getSettingsFilePath : String ()
[70] getSettingsModified : Boolean ()
[71] getSharedFolders : List ()
[72] getSnapshot : ISnapshot (String)
[73] getSnapshotCount : Long ()
[74] getSnapshotFolder : String ()
[75] getState : MachineState ()
[76] getStateFilePath : String ()
[77] getStorageControllerByInstance : IStorageController (Long)
[78] getStorageControllerByName : IStorageController (String)
[79] getStorageControllers : List ()
[80] getTeleporterAddress : String ()
[81] getTeleporterEnabled : Boolean ()
[82] getTeleporterPassword : String ()
[83] getTeleporterPort : Long ()
[84] getUSBController : IUSBController ()
[85] getVRAMSize : Long ()
[86] getVRDPServer : IVRDPServer ()
[87] hashCode : int ()
[88] hotPlugCPU : void (Long)
[89] hotUnplugCPU : void (Long)
[90] mountMedium : void (String,Integer,Integer,String,Boolean)
[91] notify : void ()
[92] notifyAll : void ()
[93] passthroughDevice : void (String,Integer,Integer,Boolean)
[94] queryLogFilename : String (Long)
[95] querySavedScreenshotPNGSize : void (Long,Holder,Holder,Holder)
[96] querySavedThumbnailSize : void (Long,Holder,Holder,Holder)
[97] readLog : List (Long,BigInteger,BigInteger)
[98] readSavedScreenshotPNGToArray : List (Long,Holder,Holder)
[99] readSavedThumbnailToArray : List (Long,Boolean,Holder,Holder)
[100] releaseRemote : void ()
[101] removeAllCPUIDLeaves : void ()
[102] removeCPUIDLeaf : void (Long)
[103] removeSharedFolder : void (String)
[104] removeStorageController : void (String)
[105] saveSettings : void ()
[106] setAccelerate2DVideoEnabled : void (Boolean)
[107] setAccelerate3DEnabled : void (Boolean)
[108] setBootOrder : void (Long,DeviceType)
[109] setCPUCount : void (Long)
[110] setCPUHotPlugEnabled : void (Boolean)
[111] setCPUIDLeaf : void (Long*5)
[112] setCPUProperty : void (CPUPropertyType,Boolean)
[113] setClipboardMode : void (ClipboardMode)
[114] setCurrentSnapshot : void (String)
[115] setDescription : void (String)
[116] setExtraData : void (String,String)
[117] setFirmwareType : void (FirmwareType)
[118] setGuestProperty : void (String,String,String)
[119] setGuestPropertyNotificationPatterns : void (String)
[120] setGuestPropertyValue : void (String,String)
[121] setHWVirtExProperty : void (HWVirtExPropertyType,Boolean)
[122] setHardwareUUID : void (String)
[123] setHardwareVersion : void (String)
[124] setHpetEnabled : void (Boolean)
[125] setIoBandwidthMax : void (Long)
[126] setIoCacheEnabled : void (Boolean)
[127] setIoCacheSize : void (Long)
[128] setKeyboardHidType : void (KeyboardHidType)
[129] setMemoryBalloonSize : void (Long)
[130] setMemorySize : void (Long)
[131] setMonitorCount : void (Long)
[132] setName : void (String)
[133] setOSTypeId : void (String)
[134] setPageFusionEnabled : void (Boolean)
[135] setPointingHidType : void (PointingHidType)
[136] setRTCUseUTC : void (Boolean)
[137] setSnapshotFolder : void (String)
[138] setTeleporterAddress : void (String)
[139] setTeleporterEnabled : void (Boolean)
[140] setTeleporterPassword : void (String)
[141] setTeleporterPort : void (Long)
[142] setVRAMSize : void (Long)
[143] showConsoleWindow : BigInteger ()
[144] toString : String ()
[145] wait : void ()
[146] wait : void (long)
[147] wait : void (long,int)
nil
vmfest.core> (.getAccessible minimal)
Reflection warning, NO_SOURCE_FILE:1 - reference to field getAccessible can't be resolved.
true
vmfest.core> (def session (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/session
vmfest.core> session
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@249a2807>
vmfest.core> (def uuid (.getId machine))
; Evaluation aborted.
vmfest.core> (def uuid (.getId minimal))
Reflection warning, NO_SOURCE_FILE:1 - reference to field getId can't be resolved.
; Evaluation aborted.
vmfest.core> minimal
#<IMachine com.sun.xml.ws.commons.virtualbox_3_2.IMachine@63a7a517>
vmfest.core> (.getId minimal)
Reflection warning, NO_SOURCE_FILE:1 - reference to field getId can't be resolved.
; Evaluation aborted.
vmfest.core> (.getAccessible minimal)
Reflection warning, NO_SOURCE_FILE:1 - reference to field getAccessible can't be resolved.
; Evaluation aborted.
vmfest.core> (def minimal (find-machine vbox "CenOS Minimal"))
#'vmfest.core/minimal
vmfest.core> minimal
nil
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(def vms (vm-list vbox))
(map print-vm vms)
Creating session manager for http://localhost:18083
(CentOS TestCenOS Minimalnil nil)
vmfest.core> (def minimal (find-machine vbox "CenOS Minimal"))
#'vmfest.core/minimal
vmfest.core> (.getId minimal)
Reflection warning, NO_SOURCE_FILE:1 - reference to field getId can't be resolved.
"197c694b-fb56-43ed-88f5-f62769134442"
vmfest.core> (def session (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/session
vmfest.core> (.openSession vbox session "197c694b-fb56-43ed-88f5-f62769134442")
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
; Evaluation aborted.
vmfest.core> (.openExistingSession vbox session "197c694b-fb56-43ed-88f5-f62769134442")
Reflection warning, NO_SOURCE_FILE:1 - call to openExistingSession can't be resolved.
nil
vmfest.core> (.openSession vbox session "197c694b-fb56-43ed-88f5-f62769134442")
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
; Evaluation aborted.
vmfest.core> (.openExistingSession vbox session "197c694b-fb56-43ed-88f5-f62769134442")
Reflection warning, NO_SOURCE_FILE:1 - call to openExistingSession can't be resolved.
; Evaluation aborted.
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
Creating session manager for http://localhost:18083
#'vmfest.core/vbox
vmfest.core> (find-machine "CentOS Minimal")
; Evaluation aborted.
vmfest.core> (find-machine vbox "CentOS Minimal")
#<IMachine com.sun.xml.ws.commons.virtualbox_3_2.IMachine@71e8e471>
vmfest.core> (.getId (find-machine vbox "CentOS Minimal"))
Reflection warning, NO_SOURCE_FILE:1 - reference to field getId can't be resolved.
"197c694b-fb56-43ed-88f5-f62769134442"
vmfest.core> (defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(.setMemory mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
Reflection warning, NO_SOURCE_FILE:1 - call to setMemory can't be resolved.
#'vmfest.core/set-memory-to-1024
vmfest.core> (def my-centos-machine (machine mgr vbox "197c694b-fb56-43ed-88f5-f62769134442"))
; Evaluation aborted.
vmfest.core> (defn machine [^IWebsessionManager mgr ^IVirtualBox vbox machine-id]
(agent {:mgr mgr :vbox vbox :machine-id id}))
; Evaluation aborted.
vmfest.core> (def my-centos-machine (machine mgr vbox "197c694b-fb56-43ed-88f5-f62769134442"))
#'vmfest.core/my-centos-machine
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
; Evaluation aborted.
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@40213e13 FAILED: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@3ad3ac1>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@61ec56c9>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (def my-centos-machine (machine mgr vbox "197c694b-fb56-43ed-88f5-f62769134442"))
(send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@2e1972bf: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@3ad3ac1>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@61ec56c9>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (def my-centos-machine (machine mgr vbox "197c694b-fb56-43ed-88f5-f62769134442"))
(send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@7157c76a: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@3ad3ac1>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@61ec56c9>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemory mutable-machine n-megas)
(.saveSettings mutable-machine))))
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
Reflection warning, NO_SOURCE_FILE:1 - call to setMemory can't be resolved.
#'vmfest.core/set-memory-task
vmfest.core> (def set-memory-to-1024 (set-memory-task 1024))
(def my-centos-machine (machine mgr vbox "197c694b-fb56-43ed-88f5-f62769134442"))
(send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@62059579: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@3ad3ac1>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@61ec56c9>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (def set-memory-to-1024 (set-memory-task 1024))
(def my-centos-machine (machine mgr vbox "197c694b-fb56-43ed-88f5-f62769134442"))
(send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@6cb00c4a: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@3ad3ac1>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@61ec56c9>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (def set-memory-to-1024 (set-memory-task 1024))
(def my-centos-machine (machine mgr vbox "197c694b-fb56-43ed-88f5-f62769134442"))
(send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@38f3cab6: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@3ad3ac1>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@61ec56c9>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
Creating session manager for http://localhost:18083
#'vmfest.core/vbox
vmfest.core> (def set-memory-to-1024 (set-memory-task 1024))
(def my-centos-machine (machine mgr vbox "197c694b-fb56-43ed-88f5-f62769134442"))
(send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@3c3aeae4: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@40133da0>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@2f32f43d>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> @my-centos-machine
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@40133da0>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@2f32f43d>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@40133da0>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@2f32f43d>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
; Evaluation aborted.
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024)
)
#<Agent@3c3aeae4: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@40133da0>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@2f32f43d>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (doc set-memory-to-1024)
-------------------------
vmfest.core/set-memory-to-1024
nil
nil
nil
vmfest.core> set-memory-to-1024
#<core$set_memory_task$fn__3095 vmfest.core$set_memory_task$fn__3095@51f49ec4>
vmfest.core> (source set-memory-to-1024)
Source not found
nil
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@40133da0>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@2f32f43d>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@3c3aeae4: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@40133da0>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@2f32f43d>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (def session (.getSession mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSession can't be resolved.
; Evaluation aborted.
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@40133da0>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@2f32f43d>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@3c3aeae4: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@40133da0>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@2f32f43d>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (def session (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/session
vmfest.core> (.openSession vbox session "197c694b-fb56-43ed-88f5-f62769134442")
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
; Evaluation aborted.
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
Creating session manager for http://localhost:18083
#'vmfest.core/vbox
vmfest.core> (def session (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/session
vmfest.core> (.openSession vbox session "197c694b-fb56-43ed-88f5-f62769134442")
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
nil
vmfest.core> (set-memory-to-1024 session)
setting the memory to 1024 for machine-id 197c694b-fb56-43ed-88f5-f62769134442
; Evaluation aborted.
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@7a67ab8f>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@2c307811>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))
(def my-centos-machine (machine mgr vbox "197c694b-fb56-43ed-88f5-f62769134442"))
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
#<Agent@7686652a: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@715be530>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@4823ec74>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (null? nil)
; Evaluation aborted.
vmfest.core> (nil? nil)
true
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))
(def my-centos-machine (machine mgr vbox "197c694b-fb56-43ed-88f5-f62769134442"))
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
#<Agent@6b249338 FAILED: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@2e3d787c>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@45b12c9b>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@2e3d787c>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@45b12c9b>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))
(def my-centos-machine (machine mgr vbox "197c694b-fb56-43ed-88f5-f62769134442"))
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
#<Agent@17e4be04: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@2a7704dd>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@6be05ef2>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@2a7704dd>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@6be05ef2>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))
(def my-centos-machine (machine mgr vbox "197c694b-fb56-43ed-88f5-f62769134442"))
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
#<Agent@2717f065: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@14a78af0>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@3929d28>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@14a78af0>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@3929d28>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))
(def my-centos-machine (machine mgr vbox "197c694b-fb56-43ed-88f5-f62769134442"))
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@160ef950>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@3111fe80>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@160ef950>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@3111fe80>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@160ef950>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@3111fe80>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
; Evaluation aborted.
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))(restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@32b427c1>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@519e09e8>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))(restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@33805516>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@2e5231c4>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))(restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@215bfaa5>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@1da477bf>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
nil
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))(restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
; Evaluation aborted.
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))(restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
; Evaluation aborted.
vmfest.core> (await my-centos-machine)
nil
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))(restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
; Evaluation aborted.
vmfest.core> (await my-centos-machine)
nil
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: nil>
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))(restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@3a25b987>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@2b76be4>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
; Evaluation aborted.
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))(restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@1f358e57>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@751401c2>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
nil
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))(restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
; Evaluation aborted.
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: nil>
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine n-megas)
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))(restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@29c114f2>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@43463148>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (await my-centos-machine)
nil
vmfest.core> 25
25
vmfest.core> 25L
; Evaluation aborted.
vmfest.core> (Long. 25)
Reflection warning, NO_SOURCE_FILE:1 - call to java.lang.Long ctor can't be resolved.
; Evaluation aborted.
vmfest.core> (Long 25)
; Evaluation aborted.
vmfest.core> (long 25)
25
vmfest.core> (class (long 25))
java.lang.Long
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
(defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine (long n-megas))
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))(restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
(send my-centos-machine (vbox-task set-memory-to-1024))
Creating session manager for http://localhost:18083
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
; Evaluation aborted.
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: nil>
vmfest.core> (defn set-memory-task [n-megas]
(fn [session]
(let [^IMachine mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine (long n-megas))
(.saveSettings mutable-machine))))
(def set-memory-to-1024 (set-memory-task 1024))
Reflection warning, NO_SOURCE_FILE:1 - reference to field getMachine can't be resolved.
#'vmfest.core/set-memory-to-1024
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
; Evaluation aborted.
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@127ce5bf>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@45cf6814>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@127ce5bf>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@45cf6814>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> @my-centos-machine
nil
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: nil>
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@127ce5bf>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@45cf6814>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@127ce5bf>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@45cf6814>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@127ce5bf>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@45cf6814>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
Creating session manager for http://localhost:18083
#'vmfest.core/vbox
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
; Evaluation aborted.
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@127ce5bf>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@45cf6814>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@682be886>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@1aaeead8>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@682be886>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@1aaeead8>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: nil>
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
Creating session manager for http://localhost:18083
#'vmfest.core/vbox
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task set-memory-to-1024))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task (set-memory-task 512)))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (send my-centos-machine (vbox-task (set-memory-task 512)))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ed62a5>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core>
(def vbox (create-vbox mgr "test" "test"))
#'vmfest.core/vbox
vmfest.core> (restart-agent my-centos-machine {:mgr mgr :vbox vbox :machine-id "197c694b-fb56-43ed-88f5-f62769134442" }:clear-actions true)
{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@7b24588d>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}
vmfest.core> (send my-centos-machine (vbox-task (set-memory-task 512)))
#<Agent@54e156e1: {:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@91619a4>, :vbox #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@7b24588d>, :machine-id "197c694b-fb56-43ed-88f5-f62769134442"}>
vmfest.core> (defn session [name] (fn [] name))
#'vmfest.core/session
vmfest.core> name
#<core$name clojure.core$name@7de70b3e>
vmfest.core> (name)
; Evaluation aborted.
vmfest.core> (def my-session (session name))
#'vmfest.core/my-session
vmfest.core> my-session
#<core$session$fn__3943 vmfest.core$session$fn__3943@1799e2e2>
vmfest.core> (my-session)
#<core$name clojure.core$name@7de70b3e>
vmfest.core> name
#<core$name clojure.core$name@7de70b3e>
vmfest.core> (def my-session (session "hello"))
#'vmfest.core/my-session
vmfest.core> (my-session)
"hello"
vmfest.core> my-session
Warning: protocol #'vmfest.core/mutable-protocol is overwriting function get
Warning: protocol #'vmfest.core/mutable-protocol is overwriting function set
WARNING: set already refers to: #'clojure.core/set in namespace: vmfest.core, being replaced by: #'vmfest.core/set
WARNING: get already refers to: #'clojure.core/get in namespace: vmfest.core, being replaced by: #'vmfest.core/get
#<core$session$fn__3943 vmfest.core$session$fn__3943@5249d560>
vmfest.core> (doc swap!)
-------------------------
clojure.core/swap!
([atom f] [atom f x] [atom f x y] [atom f x y & args])
Atomically swaps the value of atom to be:
(apply f current-value-of-atom args). Note that f may be called
multiple times, and thus should be free of side effects. Returns
the value that was swapped in.
nil
vmfest.core> (def my-record (mutable-record (atom 0)))
; Evaluation aborted.
vmfest.core> (def my-record (mutable-record. (atom 0)))
#'vmfest.core/my-record
vmfest.core> (get mutable-record)
; Evaluation aborted.
vmfest.core> (get my-record)
; Evaluation aborted.
vmfest.core> (set my-record 1)
1
vmfest.core> (get my-record)
; Evaluation aborted.
vmfest.core> (def my-record (mutable-record. (atom 0)))
#'vmfest.core/my-record
vmfest.core> (get my-record)
0
vmfest.core> (set my-record 1)
1
vmfest.core> (get my-record)
1
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
Creating session manager for http://localhost:18083
; Evaluation aborted.
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
Creating session manager for http://localhost:18083
#'vmfest.core/vbox
vmfest.core> (start-vm mgr vbox "CentOS Minimal")
Session for VM 197c694b-fb56-43ed-88f5-f62769134442 is opening...
nil
vmfest.core> (start-vm mgr vbox "CentOS Minimdasl")
; Evaluation aborted.
vmfest.core> (.getSessionObject mgr vbox)
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@11aee937>
vmfest.core> (.getSessionObject mgr vbox)
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@5ba1cdb>
vmfest.core> (def sess (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/sess
vmfest.core> (.openSession vbox session "197c694b-fb56-43ed-88f5-f62769134442")
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
; Evaluation aborted.
vmfest.core> (.openSession vbox sess "197c694b-fb56-43ed-88f5-f62769134442")
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
; Evaluation aborted.
vmfest.core> (try (.openSession vbox sess
"197c694b-fb56-43ed-88f5-f62769134442")
(catch javax.xml.ws.WebServiceException (println "caught")))
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
; Evaluation aborted.
vmfest.core> (try (.openSession vbox sess
"197c694b-fb56-43ed-88f5-f62769134442")
(catch javax.xml.ws.WebServiceException e (println
"caught" e)))
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
caught #<WebServiceException javax.xml.ws.WebServiceException: org.virtualbox_3_2.InvalidObjectFaultMsg: VirtualBox error: Invalid managed object reference "1224ad9f5d4966c5-0000000000000002">
nil
vmfest.core> (try (.openSession vbox sess
"197c694b-fb56-43ed-88f5-f62769134442")
(catch org.virtualbox_3_2.InvalidObjectFaultMsg e (println
"caught" e)))
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
; Evaluation aborted.
vmfest.core> (try (.openSession vbox sess
"197c694b-fb56-43ed-88f5-f62769134442")
(catch javax.xml.ws.WebServiceException e (println
"caught"
(.getCause
e))))
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
caught #<InvalidObjectFaultMsg org.virtualbox_3_2.InvalidObjectFaultMsg: VirtualBox error: Invalid managed object reference "1224ad9f5d4966c5-0000000000000002">
nil
vmfest.core> (def mgr (create-session-manager "localhost"))
(def vbox (create-vbox mgr "test" "test"))
Creating session manager for http://localhost:18083
#'vmfest.core/vbox
vmfest.core> (start-vm mgr vbox "CentOS Minimal")
Session for VM 197c694b-fb56-43ed-88f5-f62769134442 is opening...
nil
vmfest.core> (def vbox (create-vbox mgr "test" "test"))
#'vmfest.core/vbox
vmfest.core> (def sess (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/sess
vmfest.core> (try (.openSession vbox sess
"197c694b-fb56-43ed-88f5-f62769134442")
(catch javax.xml.ws.WebServiceException e (println
"caught"
(.getCause
e))))
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
nil
vmfest.core> (def sess (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/sess
vmfest.core> (def sess (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/sess
vmfest.core> (def sess (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/sess
vmfest.core> (def sess (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/sess
vmfest.core> (def sess (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/sess
vmfest.core> (def sess (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
; Evaluation aborted.
vmfest.core> (def sess (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/sess
vmfest.core> (.getState sess)
Reflection warning, NO_SOURCE_FILE:1 - reference to field getState can't be resolved.
; Evaluation aborted.
vmfest.core> (.getState sess)
Reflection warning, NO_SOURCE_FILE:1 - reference to field getState can't be resolved.
; Evaluation aborted.
vmfest.core> SessionState/Open
#<SessionState Open>
vmfest.core> (doc eq)
; Evaluation aborted.
vmfest.core> (doc equal)
; Evaluation aborted.
vmfest.core> (valid-session? sess)
false
vmfest.core> (def vbox (create-vbox mgr "test" "test"))
#'vmfest.core/vbox
vmfest.core> (def sess (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/sess
vmfest.core> (valid-session? sess)
false
vmfest.core> (.getState sess)
Reflection warning, NO_SOURCE_FILE:1 - reference to field getState can't be resolved.
#<SessionState CLOSED>
vmfest.core> (.openSession vbox sess "197c694b-fb56-43ed-88f5-f62769134442")
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
nil
vmfest.core> (find-machine "CentOS Test")
; Evaluation aborted.
vmfest.core> (find-machine vbox "CentOS Test")
#<IMachine com.sun.xml.ws.commons.virtualbox_3_2.IMachine@709652e2>
vmfest.core> (.getId (find-machine vbox "CentOS Test"))
Reflection warning, NO_SOURCE_FILE:1 - reference to field getId can't be resolved.
"aaf202d7-03ca-4348-8fe4-7a1c345b503e"
vmfest.core> (.openSession vbox sess "aaf202d7-03ca-4348-8fe4-7a1c345b503e")
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
; Evaluation aborted.
vmfest.core> (.getState sess)
Reflection warning, NO_SOURCE_FILE:1 - reference to field getState can't be resolved.
#<SessionState OPEN>
vmfest.core> (def vbox (create-vbox mgr "test" "test"))
; Evaluation aborted.
vmfest.core> (def vbox (create-vbox mgr "test" "test"))
#'vmfest.core/vbox
vmfest.core> (def vbox (create-vbox mgr "test2" "test"))
#'vmfest.core/vbox
vmfest.core> (def vbo2 (create-vbox mgr "test2" "test"))
#'vmfest.core/vbo2
vmfest.core> (.openSession vbox sess1 "197c694b-fb56-43ed-88f5-f62769134442")
; Evaluation aborted.
vmfest.core> (def sess1 (.getSessionObject mgr vbox))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/sess1
vmfest.core> (def sess2 (.getSessionObject mgr vbox2))
; Evaluation aborted.
vmfest.core> (def sess2 (.getSessionObject mgr vbo2))
Reflection warning, NO_SOURCE_FILE:1 - call to getSessionObject can't be resolved.
#'vmfest.core/sess2
vmfest.core> (.openSession vbox sess1 "197c694b-fb56-43ed-88f5-f62769134442")
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
nil
vmfest.core> (.openSession vbox sess2 "aaf202d7-03ca-4348-8fe4-7a1c345b503e")
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
nil
vmfest.core> (.close sess2)
Reflection warning, NO_SOURCE_FILE:1 - reference to field close can't be resolved.
nil
vmfest.core> (.openSession vbox sess2 "197c694b-fb56-43ed-88f5-f62769134442")
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
; Evaluation aborted.
vmfest.core> (def vbo2 (create-vbox mgr "test" "test"))
#'vmfest.core/vbo2
vmfest.core> (.openSession vbox sess2 "aaf202d7-03ca-4348-8fe4-7a1c345b503e")
Reflection warning, NO_SOURCE_FILE:1 - call to openSession can't be resolved.
nil
vmfest.core> (doc nil?)
-------------------------
clojure.core/nil?
([x])
Returns true if x is nil, false otherwise.
nil
vmfest.core> (use 'vmfest.virtualbox.vbox)
; Evaluation aborted.
vmfest.core> (use 'vmfest.virtualbox.vbox)
Reflection warning, vmfest/virtualbox/vbox.clj:13 - call to getMachine can't be resolved.
Reflection warning, vmfest/virtualbox/vbox.clj:15 - call to findMachine can't be resolved.
; Evaluation aborted.
vmfest.core> (use 'vmfest.virtualbox.vbox)
Reflection warning, vmfest/virtualbox/vbox.clj:15 - call to getMachine can't be resolved.
Reflection warning, vmfest/virtualbox/vbox.clj:17 - call to findMachine can't be resolved.
; Evaluation aborted.
vmfest.core> (use 'vmfest.virtualbox.vbox)
Reflection warning, vmfest/virtualbox/vbox.clj:19 - call to getMachine can't be resolved.
Reflection warning, vmfest/virtualbox/vbox.clj:21 - call to findMachine can't be resolved.
nil
vmfest.core> (def my-machine (build-vbox-machine ["localhost" 18083 "test" "ttest" "CentOS Minimal"]))
; Evaluation aborted.
vmfest.core> (def my-machine (build-vbox-machine "localhost" 18083 "test" "ttest" "CentOS Minimal"))
Creating session manager for http://localhost:(18083)
; Evaluation aborted.
vmfest.core> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
Creating session manager for http://localhost:("18083")
; Evaluation aborted.
vmfest.core> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
Creating session manager for http://localhost:18083
#'vmfest.core/my-machine
vmfest.core> @(:serializer-agent my-machine)
nil
vmfest.core> (:serializer-agent my-machine)
#<Agent@11c4c852: nil>
vmfest.core> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
Creating session manager for http://localhost:18083
creating new vbox with a logon
#'vmfest.core/my-machine
vmfest.core> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
Creating session manager for http://localhost:18083
creating new vbox with a logon
#'vmfest.core/my-machine
vmfest.core> (trace "gello")
; Evaluation aborted.
vmfest.core> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'vmfest.core/my-machine
vmfest.core>
user> (use 'vmfest.vitualbox.vbox)
; Evaluation aborted.
user> (use 'vmfest.virtualbox.vbox)
nil
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (:session-serializer my-machine)
nil
user> (:serializer-agent my-machine)
#<Agent@c2909a1: nil>
user>
user> (use 'vmfest.virtualbox.vbox)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
; Evaluation aborted.
user> (use 'vmfest.virtualbox.vbox)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
; Evaluation aborted.
user> (use 'vmfest.virtualbox.vbox)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (use 'vmfest.virtualbox.vbox)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user>
user> (use 'vmfest.virtualbox.vbox)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (use 'vmfest.virtualbox.vbox)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user>
user> (use 'vmfest.virtualbox.vbox)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (use 'vmfest.virtualbox.vbox)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (use 'vmfest.virtualbox.vbox)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (use 'vmfest.virtualbox.vbox)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (use 'vmfest.virtualbox.vbox :reload-all)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (use 'vmfest.virtualbox.vbox :reload-all)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
; Evaluation aborted.
user> (use 'vmfest.virtualbox.vbox :reload-all)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
nil
user>
nil
user> (use 'vmfest.virtualbox.vbox :reload-all)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
; Evaluation aborted.
#'user/my-machine
user>
user> (find-machine @(:vbox-atom my-machine) "CentOS Minimal")
nil
user> (find-machine @(:vbox-atom my-machine) "CentOS Test")
nil
user> (use 'vmfest.core)
; Evaluation aborted.
user> (.getMachines @(:vbox-atom my-machine))
; Evaluation aborted.
user> (use 'vmfest.virtualbox.vbox :reload-all)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (.getMachines @(:vbox-atom my-machine))
#<ArrayList [com.sun.xml.ws.commons.virtualbox_3_2.IMachine@1ebd2621, com.sun.xml.ws.commons.virtualbox_3_2.IMachine@1412504b]>
user> (find-machine @(:vbox-atom my-machine) "CentOS Test")
#<IMachine com.sun.xml.ws.commons.virtualbox_3_2.IMachine@19f67d34>
user> (find-machine @(:vbox-atom my-machine) "CentOS Minimal")
#<IMachine com.sun.xml.ws.commons.virtualbox_3_2.IMachine@6b8bcc64>
user> (:machine-id my-machine)
#<IMachine com.sun.xml.ws.commons.virtualbox_3_2.IMachine@572bd15e>
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (:machine-id my-machine)
#<IMachine com.sun.xml.ws.commons.virtualbox_3_2.IMachine@142edebe>
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> @(:session-atom my-machine)
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@21e60319>
user> (defn set-memory-task [n-megas]
(fn [session]
(let [mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine (long n-megas))
(.saveSettings mutable-machine))))
; Evaluation aborted.
user> (defn set-memory-task [n-megas]
(fn [session]
(let [mutable-machine (.getMachine session)]
(println "setting the memory to" n-megas "for machine-id" (.getId mutable-machine))
(.setMemorySize mutable-machine (long n-megas))
(.saveSettings mutable-machine))))
#'user/set-memory-task
user> (execute-task my-machine (set-memory-task 1024))
; Evaluation aborted.
user> (execute-task my-machine (set-memory-task 1024))
; Evaluation aborted.
user> my-machine
#:vmfest.virtualbox.vbox.vbox-machine{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@45e70a5a>, :vbox-atom #<Atom@7747027a: #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@22157ace>>, :session-atom #<Atom@30317bdd: #<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@21e60319>>, :username "test", :password "ttest", :machine-id #<IMachine com.sun.xml.ws.commons.virtualbox_3_2.IMachine@bb02e3>, :serializer-agent #<Agent@288fbf0e: nil>}
user> (doc execute-task)
; Evaluation aborted.
user> (use 'vmfest.machine)
nil
user> (execute-task my-machine (set-memory-task 1024))
; Evaluation aborted.
user> (execute-task my-machine (set-memory-task 1024))
; Evaluation aborted.
user> (execute-task my-machine (set-memory-task 1024))
; Evaluation aborted.
user> (execute-task my-machine (set-memory-task 1024))
; Evaluation aborted.
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (execute-task my-machine (set-memory-task 1024))
; Evaluation aborted.
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (execute-task my-machine (set-memory-task 1024))
; Evaluation aborted.
user> (use 'vmfest.virtualbox.vbox :reload-all)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (execute-task my-machine (set-memory-task 1024))
; Evaluation aborted.
user> (use 'vmfest.virtualbox.vbox :reload-all)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (execute-task my-machine (set-memory-task 1024))
#<Agent@5f936fc6: nil>
user> (use 'vmfest.virtualbox.vbox :reload-all)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (execute-task my-machine (set-memory-task 1024))
#<Agent@78f278dd: nil>
user> (use 'vmfest.virtualbox.vbox :reload-all)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (execute-task my-machine (set-memory-task 1024))
#<Agent@2af4b681: nil>
user> (use 'vmfest.virtualbox.vbox :reload-all)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (execute-task my-machine (local-set-memory-task 1024))
#<Agent@21960050: nil>
user> (execute-task my-machine (local-set-memory-task 1024))
; Evaluation aborted.
user> (use 'vmfest.virtualbox.vbox :reload-all)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (execute-task my-machine (local-set-memory-task 1024))
#<Agent@1bf1a64c: nil>
user> (use 'vmfest.virtualbox.vbox :reload-all)
(def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (execute-task my-machine (local-set-memory-task 1024))
#<Agent@4c6c9c37: nil>
user> (execute-task my-machine (local-set-memory-task 1024))
; Evaluation aborted.
user> (execute-task my-machine (local-set-memory-task 1024))
; Evaluation aborted.
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (execute-task my-machine (local-set-memory-task 1024))
#<Agent@70dddf46: nil>
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (execute-task my-machine (local-set-memory-task 1024))
#<Agent@3de2e788: nil>
user> (execute-task my-machine (local-set-memory-task 1024))
#<Agent@3de2e788: nil>
user> (execute-task my-machine (local-set-memory-task 1024))
; Evaluation aborted.
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (execute-task my-machine (local-set-memory-task 1024))
#<Agent@39db16d: nil>
user> (execute-task my-machine (local-set-memory-task 1024))
#<Agent@39db16d: nil>
user> (execute-task my-machine (local-set-memory-task 1024))
#<Agent@39db16d: nil>
user> (execute-task my-machine (local-set-memory-task 1024))
#<Agent@39db16d: nil>
user> (execute-task my-machine (local-set-memory-task 1024))
#<Agent@39db16d: nil>
user> (execute-task my-machine (local-set-memory-task 1024))
#<Agent@39db16d: nil>
user> (execute-task my-machine (local-set-memory-task 512))
#<Agent@39db16d: nil>
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (execute-task my-machine (local-set-memory-task 512))
#<Agent@495679f0: nil>
user> (execute-task my-machine (local-set-memory-task 1024))
#<Agent@495679f0: nil>
user> (get-session my-machine)
; Evaluation aborted.
user> (vmfest.virtualbox.vbox/get-session my-machine)
nil
user> (vmfest.virtualbox.vbox/get-session my-machine)
nil
user> (vmfest.virtualbox.vbox/get-session my-machine)
nil
user> (doc class?)
-------------------------
clojure.core/class?
([x])
Returns true if x is an instance of Class
nil
user> (doc class)
-------------------------
clojure.core/class
([x])
Returns the Class of x
nil
user> (get-session my-machine)
; Evaluation aborted.
user> (vmfest.virtualbox.vbox/get-session my-machine)
nil
user> (vmfest.virtualbox.vbox/get-session my-machine)
nil
user> (vmfest.virtualbox.vbox/get-session my-machine)
nil
user> (vmfest.virtualbox.vbox/get-session my-machine)
nil
user> (vmfest.virtualbox.vbox/get-session my-machine)
nil
user> (vmfest.virtualbox.vbox/get-session my-machine)
nil
user> (:mgr my-machine)
#<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@222411d2>
user> (:mgr my-machine)
#<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@222411d2>
user> (get-session my-machine)
; Evaluation aborted.
user> (vmfest.virtualbox.vbox/get-session my-machine)
nil
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
""
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
""
user> my-macnine
; Evaluation aborted.
user> my-machine
#:vmfest.virtualbox.vbox.vbox-machine{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@a3e8d9>, :vbox-atom #<Atom@90bfee3: #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@728aedb8>>, :session-atom #<Atom@7efd05c7: #<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@15868cf3>>, :username "test", :password "ttest", :machine-id "197c694b-fb56-43ed-88f5-f62769134442", :serializer-agent #<Agent@348fb08f: nil>}
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
""
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
true
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
true
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
true
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> my-machine
#:vmfest.virtualbox.vbox.vbox-machine{:mgr #<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@3fa980b>, :vbox-atom #<Atom@3913fc37: #<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@4f139c27>>, :session-atom #<Atom@1070ed00: #<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@65d7a36e>>, :username "test", :password "ttest", :machine-id "197c694b-fb56-43ed-88f5-f62769134442", :serializer-agent #<Agent@302abefe: nil>}
user> (use 'clojure.contrib.pprint)
; Evaluation aborted.
user> (pprint my-machine)
{:mgr
#<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@3fa980b>,
:vbox-atom
#<Atom@3913fc37:
#<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@4f139c27>>,
:session-atom
#<Atom@1070ed00:
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@65d7a36e>>,
:username "test",
:password "ttest",
:machine-id "197c694b-fb56-43ed-88f5-f62769134442",
:serializer-agent #<Agent@302abefe: nil>}
nil
user> (.getState @(:session-atom my-machine))
; Evaluation aborted.
user> (use 'vmfest.virtualbox.vbox :reload-all)
nil
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (pprint my-machine)
{:url "http://localhost:18083",
:mgr
#<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@1e5e96c1>,
:vbox-atom
#<Atom@17ff89c3:
#<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ad6d84>>,
:session-atom
#<Atom@325dcdf1:
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@2c7ba30c>>,
:username "test",
:password "ttest",
:machine-id "197c694b-fb56-43ed-88f5-f62769134442",
:serializer-agent #<Agent@6f1bbe75: nil>}
nil
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
true
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> (.getState @(:session-atom my-machine))
; Evaluation aborted.
user> (pprint my-machine)
{:url "http://localhost:18083",
:mgr
#<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@1e5e96c1>,
:vbox-atom
#<Atom@17ff89c3:
#<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ad6d84>>,
:session-atom
#<Atom@325dcdf1:
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@2c7ba30c>>,
:username "test",
:password "ttest",
:machine-id "197c694b-fb56-43ed-88f5-f62769134442",
:serializer-agent #<Agent@6f1bbe75: nil>}
nil
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (pprint my-machine)
{:url "http://localhost:18083",
:mgr
#<IWebsessionManager com.sun.xml.ws.commons.virtualbox_3_2.IWebsessionManager@1e5e96c1>,
:vbox-atom
#<Atom@17ff89c3:
#<IVirtualBox com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox@9ad6d84>>,
:session-atom
#<Atom@325dcdf1:
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@2c7ba30c>>,
:username "test",
:password "ttest",
:machine-id "197c694b-fb56-43ed-88f5-f62769134442",
:serializer-agent #<Agent@6f1bbe75: nil>}
nil
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (doc swap!)
-------------------------
clojure.core/swap!
([atom f] [atom f x] [atom f x y] [atom f x y & args])
Atomically swaps the value of atom to be:
(apply f current-value-of-atom args). Note that f may be called
multiple times, and thus should be free of side effects. Returns
the value that was swapped in.
nil
user> (use 'vmfest.virtualbox.vbox :reload-all)
nil
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
true
user> (vmfest.virtualbox.vbox/is-vbox-machine-good? my-machine)
false
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
nil
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
nil
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
; Evaluation aborted.
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
nil
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
nil
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
nil
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (vmfest.virtualbox.vbox/reset-vbox-machine my-machine)
true
user> (get-session my-machine)
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@1ee42ace>
user> (get-session my-machine)
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@57cd164d>
user> (get-session my-machine)
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@1ad6d868>
user> (get-session my-machine)
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@1ad6d868>
user> (get-session my-machine)
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@1ad6d868>
user> (get-session my-machine)
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@1ad6d868>
user> (get-session my-machine)
#<ISession com.sun.xml.ws.commons.virtualbox_3_2.ISession@1ad6d868>
user> (fn [s] (apply str (map #((fn [b] (char (if b (+ (rem (+ (- % b) 13) 26) b) %))) (cond (< 64 % 91) 65 (< 96 % 123) 97 1 nil)) (map int s))))
#<user$eval8864$fn__8865 user$eval8864$fn__8865@1b67919b>
user> ((fn [s] (apply str (map #((fn [b] (char (if b (+ (rem (+ (- %
b)
13)
26) b)
%))) (cond (< 64 %
91)
65 (< 96
%
123)
97 1
nil))
(map int s)))) 10)
; Evaluation aborted.
user> (doc create-vbox)
-------------------------
vmfest.virtualbox.vbox/create-vbox
([service-manager username password])
nil
nil
user> ((fn [s] (apply str (map #((fn [b] (char (if b (+ (rem (+ (- %
b)
13)
26) b)
%))) (cond (< 64 %
91)
65 (< 96
%
123)
97 1
nil))
(map int s)))) 10
)
; Evaluation aborted.
user> (doc create-vbox)
-------------------------
vmfest.virtualbox.vbox/create-vbox
([service-manager username password])
This is a test 2
nil
user> (doc create-vbox)
-------------------------
vmfest.virtualbox.vbox/create-vbox
([service-manager username password])
Creates a VirtualBox by logging in through the IWebsessionManager
using 'username' and 'password' as credentials
nil
user> (def my-machine (build-vbox-machine "localhost" "18083" "test" "ttest" "CentOS Minimal"))
#'user/my-machine
user> (defn demo-set-memory-task [n-megas]
(fn [session]
(let [mutable-machine (.getMachine session)]
(println (str"setting the memory to" n-megas "for machine-id" (.getId mutable-machine)))
(.setMemorySize mutable-machine (long n-megas))
(.saveSettings mutable-machine))))
; Evaluation aborted.
user> (defn demo-set-memory-task [n-megas]
(fn [session]
(let [mutable-machine (.getMachine session)]
(println (str"setting the memory to" n-megas "for machine-id" (.getId mutable-machine)))
(.setMemorySize mutable-machine (long n-megas))
(.saveSettings mutable-machine))))
#'user/demo-set-memory-task
user> (execute-task my-machine (demo-set-memory-task 1024))
#<Agent@2ac85c31: nil>
user> (execute-task my-machine (demo-set-memory-task 512))
#<Agent@2ac85c31: nil>
user> (execute-task my-machine (demo-set-memory-task 768))
#<Agent@2ac85c31: nil>
user> (doc with-open)
-------------------------
clojure.core/with-open
([bindings & body])
Macro
bindings => [name init ...]
Evaluates body in a try expression with names bound to the values
of the inits, and a finally clause that calls (.close name) on each
name in reverse order.
nil
user> (execute-task my-machine (demo-set-memory-task 768))
#<Agent@2ac85c31: nil>
user> (execute-task my-machine (demo-set-memory-task 1024))
#<Agent@2ac85c31: nil>
user> (execute-task my-machine (demo-set-memory-task 2048))
#<Agent@2ac85c31: nil>
user> (doc bean)
-------------------------
clojure.core/bean
([x])
Takes a Java object and returns a read-only implementation of the
map abstraction based upon its JavaBean properties.
nil
user> (use 'vmfest.virtualbox.host)
; Evaluation aborted.
user> (use 'vmfest.virtualbox.host)
nil
user> (start my-machine)
nil
user> (doc start)
-------------------------
vmfest.virtualbox.host/start
([vb-m] [hostname port username password machine-name-or-id])
nil
nil
user> (start my-machine)
; Evaluation aborted.
user> (doc intern)
-------------------------
clojure.core/intern
([ns name] [ns name val])
Finds or creates a var named by the symbol name in the namespace
ns (which can be a symbol or a namespace), setting its root binding
to val if supplied. The namespace must exist. The var will adopt any
metadata from the name symbol. Returns the var.
nil
user> (doc memfn)
-------------------------
clojure.core/memfn
([name & args])
Macro
Expands into code that creates a fn that expects to be passed an
object and any args and calls the named instance method on the
object passing the args. Use when you want to treat a Java method as
a first-class fn.
nil
user> (def my-to-string (memfn "toString"))
; Evaluation aborted.
user> (doc symbol)
-------------------------
clojure.core/symbol
([name] [ns name])
Returns a Symbol with the given namespace and name.
nil
user> (def my-to-string (memfn (symbol "toString")))
; Evaluation aborted.
user> (symbol "toString")
toString
user> (symbol ".toString")
.toString
user> (.toString 12)
"12"
user> ((symbol ".toString") 12)
nil
user> (. (symbol "toString") 12)
; Evaluation aborted.
user> (. (symbol "toString") 12)
WARNING: bean already refers to: #'clojure.core/bean in namespace: vmfest.sandbox, being replaced by: #'vmfest.sandbox/bean
; Evaluation aborted.
user> (vmfest.sandbox/bean (:machine my-machine))
; Evaluation aborted.
user> (.getMachine (get-session my-machine))
; Evaluation aborted.
user> (.getMachine (get-session my-machine))
; Evaluation aborted.
user> (clj-fields "Hello")
; Evaluation aborted.
user> (vmfest.sandbox/clj-fields "Hello")
; Evaluation aborted.
user> (vmfest.sandbox/clj-fields (String. "hello"))
; Evaluation aborted.
user> (vmfest.sandbox/clj-fields String)
()
user> (vmfest.sandbox/clj-fields IMachine)
; Evaluation aborted.
user> (import com.sun.xml.ws.commons.virtualbox_3_2.IMachine)
com.sun.xml.ws.commons.virtualbox_3_2.IMachine
user> (vmfest.sandbox/clj-fields IMachine)
()
user> (.getDeclaredField String)
; Evaluation aborted.
user> (.getDeclaredFields String)
#<Field[] [Ljava.lang.reflect.Field;@19db0a1d>
user> (.getDeclaredMethods String)
#<Method[] [Ljava.lang.reflect.Method;@779204f4>
user> (vmfest.sandbox/clj-fields IMachine)
; Evaluation aborted.
user> (vmfest.sandbox/clj-fields IMachine)
()
user> (vmfest.sandbox/clj-fields IMachine)
(:getName :cast :getParent :setName :getId :getState :getSettingsFilePath :getSharedFolders :createSharedFolder :removeSharedFolder :getExtraDataKeys :getExtraData :setExtraData :getMemorySize :getAccessible :getAccessError :getDescription :setDescription :getOSTypeId :setOSTypeId :getHardwareVersion :setHardwareVersion :getHardwareUUID :setHardwareUUID :getCPUCount :setCPUCount :getCPUHotPlugEnabled :setCPUHotPlugEnabled :setMemorySize :getMemoryBalloonSize :setMemoryBalloonSize :getPageFusionEnabled :setPageFusionEnabled :getVRAMSize :setVRAMSize :getAccelerate3DEnabled :setAccelerate3DEnabled :getAccelerate2DVideoEnabled :setAccelerate2DVideoEnabled :getMonitorCount :setMonitorCount :getBIOSSettings :getFirmwareType :setFirmwareType :getPointingHidType :setPointingHidType :getKeyboardHidType :setKeyboardHidType :getHpetEnabled :setHpetEnabled :getSnapshotFolder :setSnapshotFolder :getVRDPServer :getMediumAttachments :getUSBController :getAudioAdapter :getStorageControllers :getSettingsModified :getSessionState :getSessionType :getSessionPid :getLastStateChange :getStateFilePath :getLogFolder :getCurrentSnapshot :getSnapshotCount :getCurrentStateModified :getClipboardMode :setClipboardMode :getGuestPropertyNotificationPatterns :setGuestPropertyNotificationPatterns :getTeleporterEnabled :setTeleporterEnabled :getTeleporterPort :setTeleporterPort :getTeleporterAddress :setTeleporterAddress :getTeleporterPassword :setTeleporterPassword :getRTCUseUTC :setRTCUseUTC :getIoCacheEnabled :setIoCacheEnabled :getIoCacheSize :setIoCacheSize :getIoBandwidthMax :setIoBandwidthMax :setBootOrder :getBootOrder :attachDevice :detachDevice :passthroughDevice :mountMedium :getMedium :getMediumAttachmentsOfController :getMediumAttachment :getNetworkAdapter :addStorageController :getStorageControllerByName :getStorageControllerByInstance :removeStorageController :getSerialPort :getParallelPort :getCPUProperty :setCPUProperty :getCPUIDLeaf :setCPUIDLeaf :removeCPUIDLeaf :removeAllCPUIDLeaves :getHWVirtExProperty :setHWVirtExProperty :saveSettings :discardSettings :deleteSettings :export :getSnapshot :findSnapshot :setCurrentSnapshot :canShowConsoleWindow :showConsoleWindow :getGuestProperty :getGuestPropertyValue :getGuestPropertyTimestamp :setGuestProperty :setGuestPropertyValue :enumerateGuestProperties :querySavedThumbnailSize :readSavedThumbnailToArray :querySavedScreenshotPNGSize :readSavedScreenshotPNGToArray :hotPlugCPU :hotUnplugCPU :getCPUStatus :queryLogFilename :readLog)
user> (vmfest.sandbox/clj-fields IMachine)
(:getName :cast :getParent :setName :getId :getState :getSettingsFilePath :getSharedFolders :createSharedFolder :removeSharedFolder :getExtraDataKeys :getExtraData :setExtraData :getMemorySize :getAccessible :getAccessError :getDescription :setDescription :getOSTypeId :setOSTypeId :getHardwareVersion :setHardwareVersion :getHardwareUUID :setHardwareUUID :getCPUCount :setCPUCount :getCPUHotPlugEnabled :setCPUHotPlugEnabled :setMemorySize :getMemoryBalloonSize :setMemoryBalloonSize :getPageFusionEnabled :setPageFusionEnabled :getVRAMSize :setVRAMSize :getAccelerate3DEnabled :setAccelerate3DEnabled :getAccelerate2DVideoEnabled :setAccelerate2DVideoEnabled :getMonitorCount :setMonitorCount :getBIOSSettings :getFirmwareType :setFirmwareType :getPointingHidType :setPointingHidType :getKeyboardHidType :setKeyboardHidType :getHpetEnabled :setHpetEnabled :getSnapshotFolder :setSnapshotFolder :getVRDPServer :getMediumAttachments :getUSBController :getAudioAdapter :getStorageControllers :getSettingsModified :getSessionState :getSessionType :getSessionPid :getLastStateChange :getStateFilePath :getLogFolder :getCurrentSnapshot :getSnapshotCount :getCurrentStateModified :getClipboardMode :setClipboardMode :getGuestPropertyNotificationPatterns :setGuestPropertyNotificationPatterns :getTeleporterEnabled :setTeleporterEnabled :getTeleporterPort :setTeleporterPort :getTeleporterAddress :setTeleporterAddress :getTeleporterPassword :setTeleporterPassword :getRTCUseUTC :setRTCUseUTC :getIoCacheEnabled :setIoCacheEnabled :getIoCacheSize :setIoCacheSize :getIoBandwidthMax :setIoBandwidthMax :setBootOrder :getBootOrder :attachDevice :detachDevice :passthroughDevice :mountMedium :getMedium :getMediumAttachmentsOfController :getMediumAttachment :getNetworkAdapter :addStorageController :getStorageControllerByName :getStorageControllerByInstance :removeStorageController :getSerialPort :getParallelPort :getCPUProperty :setCPUProperty :getCPUIDLeaf :setCPUIDLeaf :removeCPUIDLeaf :removeAllCPUIDLeaves :getHWVirtExProperty :setHWVirtExProperty :saveSettings :discardSettings :deleteSettings :export :getSnapshot :findSnapshot :setCurrentSnapshot :canShowConsoleWindow :showConsoleWindow :getGuestProperty :getGuestPropertyValue :getGuestPropertyTimestamp :setGuestProperty :setGuestPropertyValue :enumerateGuestProperties :querySavedThumbnailSize :readSavedThumbnailToArray :querySavedScreenshotPNGSize :readSavedScreenshotPNGToArray :hotPlugCPU :hotUnplugCPU :getCPUStatus :queryLogFilename :readLog)
user> (vmfest.sandbox/clj-fields IMachine)
(:getName :cast :getParent :setName :getId :getState :getSettingsFilePath :getSharedFolders :createSharedFolder :removeSharedFolder :getExtraDataKeys :getExtraData :setExtraData :getMemorySize :getAccessible :getAccessError :getDescription :setDescription :getOSTypeId :setOSTypeId :getHardwareVersion :setHardwareVersion :getHardwareUUID :setHardwareUUID :getCPUCount :setCPUCount :getCPUHotPlugEnabled :setCPUHotPlugEnabled :setMemorySize :getMemoryBalloonSize :setMemoryBalloonSize :getPageFusionEnabled :setPageFusionEnabled :getVRAMSize :setVRAMSize :getAccelerate3DEnabled :setAccelerate3DEnabled :getAccelerate2DVideoEnabled :setAccelerate2DVideoEnabled :getMonitorCount :setMonitorCount :getBIOSSettings :getFirmwareType :setFirmwareType :getPointingHidType :setPointingHidType :getKeyboardHidType :setKeyboardHidType :getHpetEnabled :setHpetEnabled :getSnapshotFolder :setSnapshotFolder :getVRDPServer :getMediumAttachments :getUSBController :getAudioAdapter :getStorageControllers :getSettingsModified :getSessionState :getSessionType :getSessionPid :getLastStateChange :getStateFilePath :getLogFolder :getCurrentSnapshot :getSnapshotCount :getCurrentStateModified :getClipboardMode :setClipboardMode :getGuestPropertyNotificationPatterns :setGuestPropertyNotificationPatterns :getTeleporterEnabled :setTeleporterEnabled :getTeleporterPort :setTeleporterPort :getTeleporterAddress :setTeleporterAddress :getTeleporterPassword :setTeleporterPassword :getRTCUseUTC :setRTCUseUTC :getIoCacheEnabled :setIoCacheEnabled :getIoCacheSize :setIoCacheSize :getIoBandwidthMax :setIoBandwidthMax :setBootOrder :getBootOrder :attachDevice :detachDevice :passthroughDevice :mountMedium :getMedium :getMediumAttachmentsOfController :getMediumAttachment :getNetworkAdapter :addStorageController :getStorageControllerByName :getStorageControllerByInstance :removeStorageController :getSerialPort :getParallelPort :getCPUProperty :setCPUProperty :getCPUIDLeaf :setCPUIDLeaf :removeCPUIDLeaf :removeAllCPUIDLeaves :getHWVirtExProperty :setHWVirtExProperty :saveSettings :discardSettings :deleteSettings :export :getSnapshot :findSnapshot :setCurrentSnapshot :canShowConsoleWindow :showConsoleWindow :getGuestProperty :getGuestPropertyValue :getGuestPropertyTimestamp :setGuestProperty :setGuestPropertyValue :enumerateGuestProperties :querySavedThumbnailSize :readSavedThumbnailToArray :querySavedScreenshotPNGSize :readSavedScreenshotPNGToArray :hotPlugCPU :hotUnplugCPU :getCPUStatus :queryLogFilename :readLog)
user> (vmfest.sandbox/clj-fields IMachine)
(:getName :cast :getParent :setName :getId :getState :getSettingsFilePath :getSharedFolders :createSharedFolder :removeSharedFolder :getExtraDataKeys :getExtraData :setExtraData :getMemorySize :getAccessible :getAccessError :getDescription :setDescription :getOSTypeId :setOSTypeId :getHardwareVersion :setHardwareVersion :getHardwareUUID :setHardwareUUID :getCPUCount :setCPUCount :getCPUHotPlugEnabled :setCPUHotPlugEnabled :setMemorySize :getMemoryBalloonSize :setMemoryBalloonSize :getPageFusionEnabled :setPageFusionEnabled :getVRAMSize :setVRAMSize :getAccelerate3DEnabled :setAccelerate3DEnabled :getAccelerate2DVideoEnabled :setAccelerate2DVideoEnabled :getMonitorCount :setMonitorCount :getBIOSSettings :getFirmwareType :setFirmwareType :getPointingHidType :setPointingHidType :getKeyboardHidType :setKeyboardHidType :getHpetEnabled :setHpetEnabled :getSnapshotFolder :setSnapshotFolder :getVRDPServer :getMediumAttachments :getUSBController :getAudioAdapter :getStorageControllers :getSettingsModified :getSessionState :getSessionType :getSessionPid :getLastStateChange :getStateFilePath :getLogFolder :getCurrentSnapshot :getSnapshotCount :getCurrentStateModified :getClipboardMode :setClipboardMode :getGuestPropertyNotificationPatterns :setGuestPropertyNotificationPatterns :getTeleporterEnabled :setTeleporterEnabled :getTeleporterPort :setTeleporterPort :getTeleporterAddress :setTeleporterAddress :getTeleporterPassword :setTeleporterPassword :getRTCUseUTC :setRTCUseUTC :getIoCacheEnabled :setIoCacheEnabled :getIoCacheSize :setIoCacheSize :getIoBandwidthMax :setIoBandwidthMax :setBootOrder :getBootOrder :attachDevice :detachDevice :passthroughDevice :mountMedium :getMedium :getMediumAttachmentsOfController :getMediumAttachment :getNetworkAdapter :addStorageController :getStorageControllerByName :getStorageControllerByInstance :removeStorageController :getSerialPort :getParallelPort :getCPUProperty :setCPUProperty :getCPUIDLeaf :setCPUIDLeaf :removeCPUIDLeaf :removeAllCPUIDLeaves :getHWVirtExProperty :setHWVirtExProperty :saveSettings :discardSettings :deleteSettings :export :getSnapshot :findSnapshot :setCurrentSnapshot :canShowConsoleWindow :showConsoleWindow :getGuestProperty :getGuestPropertyValue :getGuestPropertyTimestamp :setGuestProperty :setGuestPropertyValue :enumerateGuestProperties :querySavedThumbnailSize :readSavedThumbnailToArray :querySavedScreenshotPNGSize :readSavedScreenshotPNGToArray :hotPlugCPU :hotUnplugCPU :getCPUStatus :queryLogFilename :readLog)
user> (vmfest.sandbox/gettable-fields IMachine)
()
user> (vmfest.sandbox/gettable-fields IMachine)
; Evaluation aborted.
user> (vmfest.sandbox/gettable-fields IMachine)
; Evaluation aborted.
user> (vmfest.sandbox/gettable-fields IMachine)
(:getName :getParent :getId :getState :getSettingsFilePath :getSharedFolders :getExtraDataKeys :getExtraData :getMemorySize :getAccessible :getAccessError :getDescription :getOSTypeId :getHardwareVersion :getHardwareUUID :getCPUCount :getCPUHotPlugEnabled :getMemoryBalloonSize :getPageFusionEnabled :getVRAMSize :getAccelerate3DEnabled :getAccelerate2DVideoEnabled :getMonitorCount :getBIOSSettings :getFirmwareType :getPointingHidType :getKeyboardHidType :getHpetEnabled :getSnapshotFolder :getVRDPServer :getMediumAttachments :getUSBController :getAudioAdapter :getStorageControllers :getSettingsModified :getSessionState :getSessionType :getSessionPid :getLastStateChange :getStateFilePath :getLogFolder :getCurrentSnapshot :getSnapshotCount :getCurrentStateModified :getClipboardMode :getGuestPropertyNotificationPatterns :getTeleporterEnabled :getTeleporterPort :getTeleporterAddress :getTeleporterPassword :getRTCUseUTC :getIoCacheEnabled :getIoCacheSize :getIoBandwidthMax :getBootOrder :getMedium :getMediumAttachmentsOfController :getMediumAttachment :getNetworkAdapter :getStorageControllerByName :getStorageControllerByInstance :getSerialPort :getParallelPort :getCPUProperty :getCPUIDLeaf :getHWVirtExProperty :getSnapshot :getGuestProperty :getGuestPropertyValue :getGuestPropertyTimestamp :getCPUStatus)
user> (pprint (vmfest.sandbox/gettable-fields IMachine))
(:getName
:getParent
:getId
:getState
:getSettingsFilePath
:getSharedFolders
:getExtraDataKeys
:getExtraData
:getMemorySize
:getAccessible
:getAccessError
:getDescription
:getOSTypeId
:getHardwareVersion
:getHardwareUUID
:getCPUCount
:getCPUHotPlugEnabled
:getMemoryBalloonSize
:getPageFusionEnabled
:getVRAMSize
:getAccelerate3DEnabled
:getAccelerate2DVideoEnabled
:getMonitorCount
:getBIOSSettings
:getFirmwareType
:getPointingHidType
:getKeyboardHidType
:getHpetEnabled
:getSnapshotFolder
:getVRDPServer
:getMediumAttachments
:getUSBController
:getAudioAdapter
:getStorageControllers
:getSettingsModified
:getSessionState
:getSessionType
:getSessionPid
:getLastStateChange
:getStateFilePath
:getLogFolder
:getCurrentSnapshot
:getSnapshotCount
:getCurrentStateModified
:getClipboardMode
:getGuestPropertyNotificationPatterns
:getTeleporterEnabled
:getTeleporterPort
:getTeleporterAddress
:getTeleporterPassword
:getRTCUseUTC
:getIoCacheEnabled
:getIoCacheSize
:getIoBandwidthMax
:getBootOrder
:getMedium
:getMediumAttachmentsOfController
:getMediumAttachment
:getNetworkAdapter
:getStorageControllerByName
:getStorageControllerByInstance
:getSerialPort
:getParallelPort
:getCPUProperty
:getCPUIDLeaf
:getHWVirtExProperty
:getSnapshot
:getGuestProperty
:getGuestPropertyValue
:getGuestPropertyTimestamp
:getCPUStatus)
nil
user> (count (vmfest.sandbox/gettable-fields IMachine))
71
user> (count (vmfest.sandbox/gettable-fields IVirtualBox))
; Evaluation aborted.
user> (import com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox)
com.sun.xml.ws.commons.virtualbox_3_2.IVirtualBox
user> (count (vmfest.sandbox/gettable-fields IVirtualBox))
23
user> (count (vmfest.sandbox/gettable-fields IVirtualBox))
23
user> (pprint (vmfest.sandbox/gettable-fields IVirtualBox))
("getHost"
"getVersion"
"getSystemProperties"
"getRevision"
"getPackageType"
"getHomeFolder"
"getSettingsFilePath"
"getMachines"
"getHardDisks"
"getDVDImages"
"getFloppyImages"
"getProgressOperations"
"getGuestOSTypes"
"getSharedFolders"
"getPerformanceCollector"
"getDHCPServers"
"getMachine"
"getHardDisk"
"getDVDImage"
"getFloppyImage"
"getGuestOSType"
"getExtraDataKeys"
"getExtraData")
nil
user> (rest (rest "hola"))
(\l \a)
user> (vmfest.sandbox.case-type 'a')
; Evaluation aborted.
user> (vmfest.sandbox.case-type \a)
; Evaluation aborted.
user> (class \a)
java.lang.Character
user> (vmfest.sandbox.case-type \a)
; Evaluation aborted.
user> (.isUpper \a)
; Evaluation aborted.
user> (vmfest.sandbox.case-type \a)
; Evaluation aborted.
user> (vmfest.sandbox.case-type \a)
; Evaluation aborted.
user> (vmfest.sandbox.case-type \a)
; Evaluation aborted.
user> (.isUpperCase \a)
; Evaluation aborted.
user> (class \a)
java.lang.Character
user> (Character/isUpperCase \a)
false
user> (Character/isUpperCase \A)
true
user> (vmfest.sandbox.case-type \a)
; Evaluation aborted.
user> (vmfest.sandbox.case-type \a)
; Evaluation aborted.
user> (vmfest.sandbox.case-type \a)
; Evaluation aborted.
user> (use 'vmfest.sandbox)
WARNING: bean already refers to: #'clojure.core/bean in namespace: vmfest.sandbox, being replaced by: #'vmfest.sandbox/bean
WARNING: bean already refers to: #'clojure.core/bean in namespace: user, being replaced by: #'vmfest.sandbox/bean
nil
user> (vmfest.sandbox.case-type \a)
; Evaluation aborted.
user> (when \a (println "hello"))
hello
nil
user> (if (Character/isUpperCase c) :U :L)
; Evaluation aborted.
user> (if (Character/isUpperCase \a) :U :L)
:L
user> (de8fn case-type [c]
(when-not (nil? c)
(if (Character/isUpperCase c) :U :L)))
; Evaluation aborted.
user> (defn case-type [c]
(when-not (nil? c)
(if (Character/isUpperCase c) :U :L)))
; Evaluation aborted.
user> (defn case [c]
(when-not (nil? c)
(if (Character/isUpperCase c) :U :L)))
WARNING: case already refers to: #'clojure.core/case in namespace: user, being replaced by: #'user/case
#'user/case
user> (case \a)
:L
user> (case \A)
:U
user> (case nil)
nil
user> (vmfest.sandbox.case-type \a)
; Evaluation aborted.
user> (vmfest.sandbox.case \a)
WARNING: case already refers to: #'clojure.core/case in namespace: vmfest.sandbox, being replaced by: #'vmfest.sandbox/case
; Evaluation aborted.
user> (vmfest.sandbox.case \a)
; Evaluation aborted.
user> (vmfest.util.case-type \a)
; Evaluation aborted.
user> (vmfest.util.case-type \a)
; Evaluation aborted.
user> (vmfest.util.case-type \a)
; Evaluation aborted.
user> (vmfest.util/case-type \a)
(vmfest.util/case-type \a)
; Evaluation aborted.
:L
user> (ns test)
user> (ns test)
nil
test> (doc case)
-------------------------
clojure.core/case
([e & clauses])
Macro
Takes an expression, and a set of clauses.
Each clause can take the form of either:
test-constant result-expr
(test-constant1 ... test-constantN) result-expr
The test-constants are not evaluated. They must be compile-time
literals, and need not be quoted. If the expression is equal to a
test-constant, the corresponding result-expr is returned. A single
default expression can follow the clauses, and its value will be
returned if no clause matches. If no default expression is provided
and no clause matches, an IllegalArgumentException is thrown.
Unlike cond and condp, case does a constant-time dispatch, the
clauses are not considered sequentially. All manner of constant
expressions are acceptable in case, including numbers, strings,
symbols, keywords, and (Clojure) composites thereof. Note that since
lists are used to group multiple constants that map to the same
expression, a vector can be used to match a list if needed. The
test-constants need not be all of the same type.
nil
test> (vmfest.util/camel-to-clojure-style [nil nil nil \a \A])
; Evaluation aborted.
test> (vmfest.util/camel-to-clojure-style [nil nil nil \a \A])
; Evaluation aborted.
test> (vmfest.util/camel-to-clojure-style nil nil nil \a \A)
"xxxa + parse (B, next)"
test> (vmfest.util/camel-to-clojure-style nil nil nil nil \A)
"parse (xxx*, next) should not happen"
test> (Exception.)
#<Exception java.lang.Exception>
test> (Exception. "this is impossible")
#<Exception java.lang.Exception: this is impossible>
test> (doc append)
; Evaluation aborted.
test> (conj "hol" \a)
; Evaluation aborted.
test> (conj \a "hol")
; Evaluation aborted.
test> (seq "hola")
(\h \o \l \a)
test> (conj (seq "hol") \a)
(\a \h \o \l)
test> (cons (seq "hol") \a)
; Evaluation aborted.
test> (cons \a (seq "hol"))
(\a \h \o \l)
test> (concat (seq "hol") \a)
; Evaluation aborted.
test> (concat (seq
"hol" '(a)))
; Evaluation aborted.
test> (concat (seq
"hol") '(a))
(\h \o \l a)
test> (concat (seq
"hol") '(a))
(\h \o \l a)
test> (vec "hola")
[\h \o \l \a]
test> (conj (vec "hol") \a)
[\h \o \l \a]
test> (vmfest.util/came-to-clojure-style "aTest")
; Evaluation aborted.
test> (vmfest.util/camel-to-clojure-style "aTest")
; Evaluation aborted.
test> (vmfest.util/camel-to-clojure-style "aTest")
; Evaluation aborted.
test> (vmfest.util/camel-to-clojure-style "aTest")
; Evaluation aborted.
test> (vmfest.util/camel-to-clojure-style "aTest")
; Evaluation aborted.
test> (vmfest.util/camel-to-clojure-style "aTest")
[] [] a T (e s t)
; Evaluation aborted.
test> (vmfest.util/camel-to-clojure-style "aTest")
[] [] (e s t) a T
[[]] [T] (s t) T e
[[] nil] (t) [T e] e s
[[] nil] (s t) (e) s T
[[] nil (s t)] [T] () T e
[[] nil (s t) nil] () [T e] e nil
[[] nil (\s \t) nil]
test> (vmfest.util/camel-to-clojure-style "aTest")
[] [] (e s t) a T
{:L :U}
[[]] [T] (s t) T e
{:U :L}
[[] nil] (t) [T e] e s
{:L :L}
[[] nil] (s t) (e) s T
{:L :U}
[[] nil (s t)] [T] () T e
{:U :L}
[[] nil (s t) nil] () [T e] e nil
{:L nil}
[[] nil (\s \t) nil]
test> (vmfest.util/camel-to-clojure-style "aTest")
[] [] (T e s t) nil a
{nil :L}
[] [a] (e s t) a T
{:L :U}
[[a]] [T] (s t) T e
{:U :L}
[[a] nil] (t) [T e] e s
{:L :L}
[[a] nil] (s t) (e) s T
{:L :U}
[[a] nil (s t)] [T] () T e
{:U :L}
[[a] nil (s t) nil] () [T e] e nil
{:L nil}
[[\a] nil (\s \t) nil]
test> (vmfest.util/camel-to-clojure-style "aTest")
[] [] (T e s t) nil a
{nil :L}
[] [a] (e s t) a T
{:L :U}
[[a]] [T] (s t) nil e
{nil :L}
[[a]] [T e] (t) e s
{:L :L}
[[a]] [T e s] () s t
{:L :L}
[[a]] [T e s t] () t nil
{:L nil}
[[\a]]
test> (vmfest.util/camel-to-clojure-style "aTest")
[] [] (T e s t) nil a
{nil :L}
[] [a] (e s t) a T
{:L :U}
[[a]] [T] (s t) nil e
{nil :L}
[[a]] [T e] (t) e s
{:L :L}
[[a]] [T e s] () s t
{:L :L}
[[a]] [T e s t] () t nil
{:L nil}
[[\a] [\T \e \s \t]]
test> (vmfest.util/camel-to-clojure-style "aCPUTest")
[] [] (C P U T e s t) nil a
{nil :L}
[] [a] (P U T e s t) a C
{:L :U}
[[a]] [C] (U T e s t) nil P
{nil :U}
[[a]] [C P] (T e s t) P U
{:U :U}
[[a]] [C P U] (e s t) U T
{:U :U}
[[a]] [C P U T] (s t) T e
{:U :L}
[[a] (C P U)] (t) [T e] e s
{:L :L}
[[a] (C P U)] (s t) (e) s T
{:L :U}
[[a] (C P U) (s t)] [T] () nil e
{nil :L}
[[a] (C P U) (s t)] [T e] () e nil
{:L nil}
[[\a] (\C \P \U) (\s \t) [\T \e]]
test> (vmfest.util/camel-to-clojure-style "aCPUTest")
[] [] (C P U T e s t) nil a
{nil :L}
[] [a] (P U T e s t) a C
{:L :U}
[[a]] [C] (U T e s t) nil P
{nil :U}
[[a]] [C P] (T e s t) P U
{:U :U}
[[a]] [C P U] (e s t) U T
{:U :U}
[[a]] [C P U T] (s t) T e
{:U :L}
[[a] [C P U]] [T e] (t) e s
{:L :L}
[[a] [C P U]] [T e s] () s t
{:L :L}
[[a] [C P U]] [T e s t] () t nil
{:L nil}
[[\a] [\C \P \U] [\T \e \s \t]]
test> (vmfest.util/camel-to-clojure-style "AWord")
[] [] (W o r d) nil A
{nil :U}
[] [A] (o r d) A W
{:U :U}
[] [A W] (r d) W o
{:U :L}
[[A]] [W o] (d) o r
{:L :L}
[[A]] [W o r] () r d
{:L :L}
[[A]] [W o r d] () d nil
{:L nil}
[[\A] [\W \o \r \d]]
test> (vmfest.util/camel-to-clojure-style "a")
[] [] () nil a
{nil :L}
[] [a] () a nil
{:L nil}
[[\a]]
test> (vmfest.util/camel-to-clojure-style "A")
[] [] () nil A
{nil :U}
[] [A] () A nil
{:U nil}
[[\A]]
test> (vmfest.util/camel-to-clojure-style "AbcDE")
[] [] (b c D E) nil A
{nil :U}
[] [A] (c D E) A b
{:U :L}
[[]] [A b] (D E) b c
{:L :L}
[[]] [A b c] (E) c D
{:L :U}
[[] [A b c]] [D] () nil E
{nil :U}
[[] [A b c]] [D E] () E nil
{:U nil}
[[] [\A \b \c] [\D \E]]
test> (vmfest.util/camel-to-clojure-style "AbcDE")
[] [] (b c D E) nil A
{nil :U}
[] [A] (c D E) A b
{:U :L}
nil [A b] (D E) b c
{:L :L}
nil [A b c] (E) c D
{:L :U}
([A b c]) [D] () nil E
{nil :U}
([A b c]) [D E] () E nil
{:U nil}
([\D \E] [\A \b \c])
test> (vmfest.util/camel-to-clojure-style "AbcDE")
[] [] (b c D E) nil A
{nil :U}
[] [A] (c D E) A b
{:U :L}
[] [A b] (D E) b c
{:L :L}
[] [A b c] (E) c D
{:L :U}
[[A b c]] [D] () nil E
{nil :U}
[[A b c]] [D E] () E nil
{:U nil}
[[\A \b \c] [\D \E]]
test>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment