java/code/src/com/redhat/rhn/frontend/xmlrpc/NoSuchCobblerSystemRecordException.java |
58 ++++++++++
java/code/src/com/redhat/rhn/frontend/xmlrpc/kickstart/profile/ProfileHandler.java |
22 ++-
java/code/src/com/redhat/rhn/frontend/xmlrpc/system/SystemHandler.java |
24 +++-
java/code/src/com/redhat/rhn/manager/kickstart/cobbler/CobblerVirtualSystemCommand.java |
8 -
4 files changed, 92 insertions(+), 20 deletions(-)
New commits:
commit 268907eb29b62d6ffd9c86af48c3cd2c9db4d79e
Author: Tomas Lestach <tlestach(a)redhat.com>
Date: Tue Feb 23 21:15:33 2010 +0100
562881 - save cobbler object after setting kickstart variables
diff --git
a/java/code/src/com/redhat/rhn/frontend/xmlrpc/kickstart/profile/ProfileHandler.java
b/java/code/src/com/redhat/rhn/frontend/xmlrpc/kickstart/profile/ProfileHandler.java
index a5a9f6c..8f83e83 100644
--- a/java/code/src/com/redhat/rhn/frontend/xmlrpc/kickstart/profile/ProfileHandler.java
+++ b/java/code/src/com/redhat/rhn/frontend/xmlrpc/kickstart/profile/ProfileHandler.java
@@ -52,6 +52,8 @@ import com.redhat.rhn.manager.kickstart.KickstartFormatter;
import com.redhat.rhn.manager.kickstart.KickstartIpCommand;
import com.redhat.rhn.manager.kickstart.KickstartOptionsCommand;
+import org.cobbler.Profile;
+
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
@@ -1039,7 +1041,10 @@ public class ProfileHandler extends BaseHandler {
User loggedInUser = getLoggedInUser(sessionKey);
KickstartData ksData = lookupKsData(ksLabel, loggedInUser.getOrg());
- ksData.getCobblerObject(loggedInUser).setKsMeta(variables);
+ Profile profile = ksData.getCobblerObject(loggedInUser);
+ profile.setKsMeta(variables);
+ profile.save();
+
return 1;
}
}
diff --git a/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/SystemHandler.java
b/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/SystemHandler.java
index 730c3ca..41f78b4 100644
--- a/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/SystemHandler.java
+++ b/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/SystemHandler.java
@@ -4251,6 +4251,8 @@ public class SystemHandler extends BaseHandler {
rec.enableNetboot(netboot);
rec.setKsMeta(variables);
+ rec.save();
+
return 1;
}
}
commit eb0ec53e6e9af526d64061a675604d2add332712
Author: Tomas Lestach <tlestach(a)redhat.com>
Date: Tue Feb 23 13:40:32 2010 +0100
562881 - apidoc fixes
diff --git
a/java/code/src/com/redhat/rhn/frontend/xmlrpc/kickstart/profile/ProfileHandler.java
b/java/code/src/com/redhat/rhn/frontend/xmlrpc/kickstart/profile/ProfileHandler.java
index 45e7bdc..a5a9f6c 100644
--- a/java/code/src/com/redhat/rhn/frontend/xmlrpc/kickstart/profile/ProfileHandler.java
+++ b/java/code/src/com/redhat/rhn/frontend/xmlrpc/kickstart/profile/ProfileHandler.java
@@ -993,10 +993,11 @@ public class ProfileHandler extends BaseHandler {
* @xmlrpc.param #param("string", "sessionKey")
* @xmlrpc.param #param("string", "ksLabel")
* @xmlrpc.returntype
- * #array("kickstart variables")
* #array()
- * #prop("string", "key")
- * #prop("string or int", "value")
+ * #struct("kickstart variable")
+ * #prop("string", "key")
+ * #prop("string or int", "value")
+ * #struct_end()
* #array_end()
*/
public Map<String, Object> getVariables(String sessionKey, String ksLabel) {
@@ -1023,10 +1024,12 @@ public class ProfileHandler extends BaseHandler {
*
* @xmlrpc.param #param("string", "sessionKey")
* @xmlrpc.param #param("string", "ksLabel")
- * @xmlrpc.param #param("array", "variables")
+ * @xmlrpc.param
* #array()
- * #prop("string", "key")
- * #prop("string or int", "value")
+ * #struct("kickstart variable")
+ * #prop("string", "key")
+ * #prop("string or int", "value")
+ * #struct_end()
* #array_end()
* @xmlrpc.returntype #return_int_success()
*/
diff --git a/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/SystemHandler.java
b/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/SystemHandler.java
index a4aeb2d..730c3ca 100644
--- a/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/SystemHandler.java
+++ b/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/SystemHandler.java
@@ -4164,11 +4164,12 @@ public class SystemHandler extends BaseHandler {
* @xmlrpc.returntype
* #struct("System kickstart variables")
* #prop_desc("boolean" "netboot" "netboot
enabled")
- * #prop_desc("array" "kickstart variables")
- * #array()
+ * #prop_array_begin("kickstart variables")
+ * #struct("kickstart variable")
* #prop("string", "key")
* #prop("string or int", "value")
- * #array_end()
+ * #struct_end()
+ * #prop_array_end()
* #struct_end()
*/
public Map getVariables(String sessionKey, Integer serverId) {
@@ -4215,10 +4216,12 @@ public class SystemHandler extends BaseHandler {
* @xmlrpc.param #param("string", "sessionKey")
* @xmlrpc.param #param("int", "serverId")
* @xmlrpc.param #param("boolean","netboot")
- * @xmlrpc.param #param("array", "kickstart variables")
+ * @xmlrpc.param
* #array()
- * #prop("string", "key")
- * #prop("string or int", "value")
+ * #struct("kickstart variable")
+ * #prop("string", "key")
+ * #prop("string or int", "value")
+ * #struct_end()
* #array_end()
* @xmlrpc.returntype #return_int_success()
*/
commit cdd1c75f89ab346e5eff998dc235096bf62ff23c
Author: Tomas Lestach <tlestach(a)redhat.com>
Date: Tue Feb 23 11:55:34 2010 +0100
562881 - cobbler system record check
diff --git
a/java/code/src/com/redhat/rhn/frontend/xmlrpc/NoSuchCobblerSystemRecordException.java
b/java/code/src/com/redhat/rhn/frontend/xmlrpc/NoSuchCobblerSystemRecordException.java
new file mode 100644
index 0000000..5da52fd
--- /dev/null
+++
b/java/code/src/com/redhat/rhn/frontend/xmlrpc/NoSuchCobblerSystemRecordException.java
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2009--2010 Red Hat, Inc.
+ *
+ * This software is licensed to you under the GNU General Public License,
+ * version 2 (GPLv2). There is NO WARRANTY for this software, express or
+ * implied, including the implied warranties of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. You should have received a copy of GPLv2
+ * along with this software; if not, see
+ *
http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.
+ *
+ * Red Hat trademarks are not licensed under GPLv2. No permission is
+ * granted to use or replicate Red Hat trademarks that are incorporated
+ * in this software or its documentation.
+ */
+
+package com.redhat.rhn.frontend.xmlrpc;
+
+import com.redhat.rhn.FaultException;
+
+/**
+ * no such cobbler system record
+ * <p>
+ *
+ *
+ * @version definition($Rev: 76724 $)/template($Rev: 67725 $)
+ */
+public class NoSuchCobblerSystemRecordException extends FaultException {
+
+ /**
+ * Comment for <code>serialVersionUID</code>
+ */
+ private static final long serialVersionUID = 4245255424549337483L;
+
+ /**
+ * Constructor
+ */
+ public NoSuchCobblerSystemRecordException() {
+ this("No such cobbler system record");
+ }
+
+ /**
+ * Constructor
+ * @param cause the cause (which is saved for later retrieval by the
+ * Throwable.getCause() method). (A null value is permitted, and indicates
+ * that the cause is nonexistent or unknown.)
+ */
+ public NoSuchCobblerSystemRecordException(Throwable cause) {
+ super(-214, "noSuchCobblerSystemRecord", "No such cobbler system
record", cause);
+ }
+
+ /**
+ * Constructor
+ * @param message exception message
+ */
+ public NoSuchCobblerSystemRecordException(String message) {
+ super(-214, "noSuchCobblerSystemRecord", message);
+ }
+}
diff --git a/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/SystemHandler.java
b/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/SystemHandler.java
index c20b8b8..a4aeb2d 100644
--- a/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/SystemHandler.java
+++ b/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/SystemHandler.java
@@ -84,6 +84,7 @@ import com.redhat.rhn.frontend.xmlrpc.InvalidSystemException;
import com.redhat.rhn.frontend.xmlrpc.MethodInvalidParamException;
import com.redhat.rhn.frontend.xmlrpc.NoSuchActionException;
import com.redhat.rhn.frontend.xmlrpc.NoSuchChannelException;
+import com.redhat.rhn.frontend.xmlrpc.NoSuchCobblerSystemRecordException;
import com.redhat.rhn.frontend.xmlrpc.NoSuchPackageException;
import com.redhat.rhn.frontend.xmlrpc.NoSuchSystemException;
import com.redhat.rhn.frontend.xmlrpc.NotEnoughEntitlementsException;
@@ -4189,6 +4190,9 @@ public class SystemHandler extends BaseHandler {
SystemRecord rec = SystemRecord.lookupById(
CobblerXMLRPCHelper.getConnection(loggedInUser), server.getCobblerId());
+ if (rec == null) {
+ throw new NoSuchCobblerSystemRecordException();
+ }
Map vars = new HashMap();
vars.put("netboot", rec.isNetbootEnabled());
@@ -4238,6 +4242,9 @@ public class SystemHandler extends BaseHandler {
SystemRecord rec = SystemRecord.lookupById(
CobblerXMLRPCHelper.getConnection(loggedInUser), server.getCobblerId());
+ if (rec == null) {
+ throw new NoSuchCobblerSystemRecordException();
+ }
rec.enableNetboot(netboot);
rec.setKsMeta(variables);
commit 0ee558e8c42b5c48a2388db9b6a3aca604b2065f
Author: Tomas Lestach <tlestach(a)redhat.com>
Date: Tue Feb 23 14:26:03 2010 +0100
make code more simple
diff --git
a/java/code/src/com/redhat/rhn/manager/kickstart/cobbler/CobblerVirtualSystemCommand.java
b/java/code/src/com/redhat/rhn/manager/kickstart/cobbler/CobblerVirtualSystemCommand.java
index d078f35..8fb6860 100644
---
a/java/code/src/com/redhat/rhn/manager/kickstart/cobbler/CobblerVirtualSystemCommand.java
+++
b/java/code/src/com/redhat/rhn/manager/kickstart/cobbler/CobblerVirtualSystemCommand.java
@@ -109,14 +109,8 @@ public class CobblerVirtualSystemCommand extends
CobblerSystemCreateCommand {
protected SystemRecord lookupExisting() {
log.debug("lookupExisting called.");
- SystemRecord rec = SystemRecord.lookupByName(
+ return SystemRecord.lookupByName(
CobblerXMLRPCHelper.getConnection(user), getCobblerSystemRecordName());
- if (rec == null) {
- return null;
- }
- else {
- return rec;
- }
}