You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@deltacloud.apache.org by mf...@apache.org on 2012/11/30 09:48:25 UTC
[4/8] git commit: CIMI: Added MachineTemplate database model
CIMI: Added MachineTemplate database model
* Added BaseEntity as a parent model for Entity
Project: http://git-wip-us.apache.org/repos/asf/deltacloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/deltacloud/commit/d81bd207
Tree: http://git-wip-us.apache.org/repos/asf/deltacloud/tree/d81bd207
Diff: http://git-wip-us.apache.org/repos/asf/deltacloud/diff/d81bd207
Branch: refs/heads/master
Commit: d81bd2071749410f672db481c8685fdd441cb1e5
Parents: 106f62b
Author: Michal Fojtik <mf...@redhat.com>
Authored: Thu Nov 29 13:55:06 2012 +0100
Committer: Michal fojtik <mf...@redhat.com>
Committed: Fri Nov 30 09:42:20 2012 +0100
----------------------------------------------------------------------
server/lib/db.rb | 1 +
server/lib/db/entity.rb | 11 +++++++++--
server/lib/db/machine_template.rb | 13 +++++++++++++
server/lib/db/provider.rb | 1 +
4 files changed, 24 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d81bd207/server/lib/db.rb
----------------------------------------------------------------------
diff --git a/server/lib/db.rb b/server/lib/db.rb
index e0f28d4..db98709 100644
--- a/server/lib/db.rb
+++ b/server/lib/db.rb
@@ -4,6 +4,7 @@ module Deltacloud
require_relative './db/provider'
require_relative './db/entity'
+ require_relative './db/machine_template'
DATABASE_LOCATION = ENV['DATABASE_LOCATION'] || "/var/tmp/deltacloud-mock-#{ENV['USER']}/db.sqlite"
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d81bd207/server/lib/db/entity.rb
----------------------------------------------------------------------
diff --git a/server/lib/db/entity.rb b/server/lib/db/entity.rb
index b220f9e..c9845a4 100644
--- a/server/lib/db/entity.rb
+++ b/server/lib/db/entity.rb
@@ -1,19 +1,26 @@
module Deltacloud
module Database
- class Entity
+ class BaseEntity
include DataMapper::Resource
belongs_to :provider
property :id, Serial
+ property :type, Discriminator
+
property :be_kind, String, :required => true # => Machine, MachineImage, ...
property :be_id, String, :required => true # => Original Machine 'id'
- property :ent_properties, Json
+ end
+
+ class Entity < BaseEntity
+
+ belongs_to :provider
property :name, String
property :description, String
+ property :ent_properties, Json
def to_hash
retval = {}
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d81bd207/server/lib/db/machine_template.rb
----------------------------------------------------------------------
diff --git a/server/lib/db/machine_template.rb b/server/lib/db/machine_template.rb
new file mode 100644
index 0000000..813588d
--- /dev/null
+++ b/server/lib/db/machine_template.rb
@@ -0,0 +1,13 @@
+module Deltacloud
+ module Database
+
+ class MachineTemplateEntity < Entity
+ belongs_to :provider
+
+ property :machine_config, String
+ property :machine_image, String
+
+ end
+
+ end
+end
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d81bd207/server/lib/db/provider.rb
----------------------------------------------------------------------
diff --git a/server/lib/db/provider.rb b/server/lib/db/provider.rb
index 6a761e5..e227a73 100644
--- a/server/lib/db/provider.rb
+++ b/server/lib/db/provider.rb
@@ -9,6 +9,7 @@ module Deltacloud
property :url, Text
has n, :entities
+ has n, :machine_template_entities
end
end