cloudstack-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From aprat...@apache.org
Subject git commit: updated refs/heads/master to 5dd1a1d
Date Fri, 12 Jul 2013 09:56:58 GMT
Updated Branches:
  refs/heads/master b948bbd55 -> 5dd1a1dd8


CLOUDSTACK-2987: Fixing dynamicallyScalable flag in register and update template API Previuos
commit: 7b6b8d7a077478620232ea1ac4ec2304289e8661 This fix is due to some changes made by the
merges after this commit.

Signed-off-by: Abhinandan Prateek <aprateek@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/5dd1a1dd
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/5dd1a1dd
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/5dd1a1dd

Branch: refs/heads/master
Commit: 5dd1a1dd8eec0a37db36b5c86d847fbbe4fcc41d
Parents: b948bbd
Author: Harikrishna Patnala <harikrishna.patnala@citrix.com>
Authored: Fri Jul 12 13:22:41 2013 +0530
Committer: Abhinandan Prateek <aprateek@apache.org>
Committed: Fri Jul 12 15:19:25 2013 +0530

----------------------------------------------------------------------
 .../src/com/cloud/storage/VMTemplateVO.java     |  3 ++-
 .../com/cloud/template/TemplateAdapterBase.java |  2 +-
 .../com/cloud/template/TemplateManagerImpl.java | 21 +++++++++++++++++++-
 3 files changed, 23 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/5dd1a1dd/engine/schema/src/com/cloud/storage/VMTemplateVO.java
----------------------------------------------------------------------
diff --git a/engine/schema/src/com/cloud/storage/VMTemplateVO.java b/engine/schema/src/com/cloud/storage/VMTemplateVO.java
index 3e71191..60c1a4e 100755
--- a/engine/schema/src/com/cloud/storage/VMTemplateVO.java
+++ b/engine/schema/src/com/cloud/storage/VMTemplateVO.java
@@ -175,12 +175,13 @@ public class VMTemplateVO implements VirtualMachineTemplate {
     public VMTemplateVO(long id, String name, ImageFormat format, boolean isPublic, boolean
featured,
             boolean isExtractable, TemplateType type, String url, boolean requiresHvm, int
bits, long accountId,
             String cksum, String displayText, boolean enablePassword, long guestOSId, boolean
bootable,
-            HypervisorType hyperType, String templateTag, Map details, boolean sshKeyEnabled)
{
+            HypervisorType hyperType, String templateTag, Map details, boolean sshKeyEnabled,
boolean isDynamicallyScalable) {
         this(id, name, format, isPublic, featured, isExtractable, type, url, requiresHvm,
bits, accountId, cksum,
                 displayText, enablePassword, guestOSId, bootable, hyperType, details);
         this.templateTag = templateTag;
         this.uuid = UUID.randomUUID().toString();
         this.enableSshKey = sshKeyEnabled;
+        this.dynamicallyScalable = isDynamicallyScalable;
     }
 
 

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/5dd1a1dd/server/src/com/cloud/template/TemplateAdapterBase.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/template/TemplateAdapterBase.java b/server/src/com/cloud/template/TemplateAdapterBase.java
index fce2506..4f29fcd 100755
--- a/server/src/com/cloud/template/TemplateAdapterBase.java
+++ b/server/src/com/cloud/template/TemplateAdapterBase.java
@@ -258,7 +258,7 @@ public abstract class TemplateAdapterBase extends AdapterBase implements
Templat
 				profile.getFeatured(), profile.getIsExtractable(), profile.getTemplateType(), profile.getUrl(),
profile.getRequiresHVM(),
 				profile.getBits(), profile.getAccountId(), profile.getCheckSum(), profile.getDisplayText(),
 				profile.getPasswordEnabled(), profile.getGuestOsId(), profile.getBootable(), profile.getHypervisorType(),
profile.getTemplateTag(),
-				profile.getDetails(), profile.getSshKeyEnabled());
+				profile.getDetails(), profile.getSshKeyEnabled(), profile.IsDynamicallyScalable());
 
 
 		if (zoneId == null || zoneId.longValue() == -1) {

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/5dd1a1dd/server/src/com/cloud/template/TemplateManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/template/TemplateManagerImpl.java b/server/src/com/cloud/template/TemplateManagerImpl.java
index 5a54656..8dcb0ed 100755
--- a/server/src/com/cloud/template/TemplateManagerImpl.java
+++ b/server/src/com/cloud/template/TemplateManagerImpl.java
@@ -1686,6 +1686,8 @@ public class TemplateManagerImpl extends ManagerBase implements TemplateManager,
         String format = cmd.getFormat();
         Long guestOSId = cmd.getOsTypeId();
         Boolean passwordEnabled = cmd.isPasswordEnabled();
+        Boolean isDynamicallyScalable = cmd.isDynamicallyScalable();
+        Boolean isRoutingTemplate = cmd.isRoutingType();
         Boolean bootable = cmd.isBootable();
         Integer sortKey = cmd.getSortKey();
         Account account = UserContext.current().getCaller();
@@ -1707,9 +1709,14 @@ public class TemplateManagerImpl extends ManagerBase implements TemplateManager,
 
         // do a permission check
         _accountMgr.checkAccess(account, AccessType.ModifyEntry, true, template);
+        if(cmd.isRoutingType() != null){
+            if(!_accountService.isRootAdmin(account.getType())){
+                throw new PermissionDeniedException("Parameter isrouting can only be specified
by a Root Admin, permission denied");
+            }
+        }
 
         boolean updateNeeded = !(name == null && displayText == null && format
== null && guestOSId == null && passwordEnabled == null
-                && bootable == null && sortKey == null);
+                && bootable == null && sortKey == null && isDynamicallyScalable
== null && isRoutingTemplate == null);
         if (!updateNeeded) {
             return template;
         }
@@ -1758,6 +1765,18 @@ public class TemplateManagerImpl extends ManagerBase implements TemplateManager,
             template.setBootable(bootable);
         }
 
+        if (isDynamicallyScalable != null) {
+            template.setDynamicallyScalable(isDynamicallyScalable);
+        }
+
+        if (isRoutingTemplate != null) {
+            if (isRoutingTemplate) {
+                template.setTemplateType(TemplateType.ROUTING);
+            } else {
+                template.setTemplateType(TemplateType.USER);
+            }
+        }
+
         _tmpltDao.update(id, template);
 
         return _tmpltDao.findById(id);


Mime
View raw message