Re: [ovirt-devel] FW: add a ***Command for a button

2014-08-10 Thread Moti Asayag
Hi,

Would you mind posting the code as a draft patch to gerrit.ovirt.org ?
It will allow full transparency of the the code, will allow a better
feedback and also will allow developers to apply the patch locally and
even upload a fixed version of it.

Thanks,
Moti

- Original Message -
 From: 力波 王 wlblea...@126.com
 To: Devel@ovirt.org
 Sent: Friday, August 8, 2014 11:17:15 AM
 Subject: [ovirt-devel] FW:  add a ***Command for a button
 
 
 
 发件人: 力波 王  wlblea...@126.com 
 日期: Fri, 08 Aug 2014 16:10:48 +0800
 至:  devel@ovirt.org 
 主题: [ovirt-devel] add a ***Command for a button
 
 Hi, everyone:
 I added a button on the Template Tab, in the client side, It’s OK,
 
 Added the button’s callback like this:
 ===
 private void backup()
 {
 BackupInfoParameters param = new BackupInfoParameters();
 Frontend.RunAction(VdcActionType.Unknown, param, new
 IFrontendActionAsyncCallback() {
 @Override
 public void executed(FrontendActionAsyncResult result) {
 
 }
 });
 }
 ===
 
 The BackupInfoCommand.java is :
 ===
 package org.ovirt.engine.core.bll;
 
 import org.ovirt.engine.core.bll.utils.PermissionSubject;
 import org.ovirt.engine.core.common.action.BackupInfoParameters;
 
 
 import java.io.IOException;
 import java.util.Collections;
 import java.util.List;
 
 /**
 * Created by leaboy on 8/7/14.
 */
 public class BackupInfoCommand T extends BackupInfoParameters extends
 CommandBaseT{
 public BackupInfoCommand(T parameters){
 super(parameters);
 }
 
 @Override
 public ListPermissionSubject getPermissionCheckSubjects() {
 return Collections.emptyList();
 }
 
 @Override
 protected boolean canDoAction() {
 return true;
 }
 
 
 @Override
 protected void executeCommand() {
 int a;
 a = 1;
 try{
 Runtime.getRuntime().exec(touch /tmp/tmp.txt);
 }catch (IOException e){
 e.printStackTrace();
 }
 
 }
 }
 ===
 
 And the BackupInfoParameters.java is:
 ===
 package org.ovirt.engine.core.common.action;
 
 /**
 * Created by leaboy on 8/7/14.
 */
 public class BackupInfoParameters extends VdcActionParametersBase implements
 java.io.Serializable{
 private static final long serialVersionUID = -1363077467684414051L;
 private VdcActionType _actionType;
 
 //public BackupInfoParameters(){}
 
 public BackupInfoParameters(){_actionType = VdcActionType.Unknown;}
 
 public VdcActionType getActionType() {
 return _actionType;
 }
 }
 ===
 
 Built the code success, but when I clicked the button, got a dialog with the
 error info:
 
 Error while executing action: A Request to the Server failed with the
 following Status Code: 500
 
 I debug it , find the error is raised at :
 
 protected VdcReturnValueBase evaluateCorrelationId(CommandBase?
 commandBase) {
 VdcReturnValueBase returnValue = null;
 
 // Evaluate and set the correlationId on the parameters, fails on invalid
 correlation id
 returnValue =
 ExecutionHandler.evaluateCorrelationId(commandBase.getParameters());
 if (returnValue != null) {
 log.warnFormat(CanDoAction of action {0} failed. Reasons: {1},
 commandBase.getActionType(),
 StringUtils.join(returnValue.getCanDoActionMessages(), ','));
 
 }
 // Set the correlation-id on the command
 commandBase.setCorrelationId(commandBase.getParameters().getCorrelationId());
 return returnValue;
 }
 ___ Devel mailing list
 Devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/devel
 
 ___
 Devel mailing list
 Devel@ovirt.org
 http://lists.ovirt.org/mailman/listinfo/devel
___
Devel mailing list
Devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/devel

[ovirt-devel] FW: add a ***Command for a button

2014-08-08 Thread 力波 王


发件人:  力波 王 wlblea...@126.com
日期:  Fri, 08 Aug 2014 16:10:48 +0800
至:  devel@ovirt.org
主题:  [ovirt-devel] add a ***Command for a button

Hi, everyone:
I added a button on the Template Tab, in the client side, It’s OK,

Added the button’s callback like this:
===
 private void backup()
{
BackupInfoParameters param = new BackupInfoParameters();
Frontend.RunAction(VdcActionType.Unknown, param, new
IFrontendActionAsyncCallback() {
@Override
public void executed(FrontendActionAsyncResult result) {

}
});
}
===

The BackupInfoCommand.java is :
===
package org.ovirt.engine.core.bll;

import org.ovirt.engine.core.bll.utils.PermissionSubject;
import org.ovirt.engine.core.common.action.BackupInfoParameters;


import java.io.IOException;
import java.util.Collections;
import java.util.List;

/**
 * Created by leaboy on 8/7/14.
 */
public class BackupInfoCommand T extends BackupInfoParameters extends
CommandBaseT{
public BackupInfoCommand(T parameters){
super(parameters);
}

@Override
public ListPermissionSubject getPermissionCheckSubjects() {
return Collections.emptyList();
}

@Override
protected boolean canDoAction() {
return true;
}


@Override
protected void executeCommand() {
int a;
a = 1;
try{
Runtime.getRuntime().exec(touch /tmp/tmp.txt);
}catch (IOException e){
e.printStackTrace();
}

}
}
===

And the BackupInfoParameters.java is:
===
package org.ovirt.engine.core.common.action;

/**
 * Created by leaboy on 8/7/14.
 */
public class BackupInfoParameters extends VdcActionParametersBase implements
java.io.Serializable{
private static final long serialVersionUID = -1363077467684414051L;
private VdcActionType _actionType;

//public BackupInfoParameters(){}

public BackupInfoParameters(){_actionType = VdcActionType.Unknown;}

public VdcActionType getActionType() {
return _actionType;
}
}
===

Built the code success, but when I clicked the button, got a dialog with the
error info:

Error while executing action: A Request to the Server failed with the
following Status Code: 500

I debug it , find the error is raised at :

protected VdcReturnValueBase evaluateCorrelationId(CommandBase?
commandBase) {
VdcReturnValueBase returnValue = null;

// Evaluate and set the correlationId on the parameters, fails on
invalid correlation id
returnValue =
ExecutionHandler.evaluateCorrelationId(commandBase.getParameters());
if (returnValue != null) {
log.warnFormat(CanDoAction of action {0} failed. Reasons: {1},
commandBase.getActionType(),
StringUtils.join(returnValue.getCanDoActionMessages(),
','));

}
// Set the correlation-id on the command

commandBase.setCorrelationId(commandBase.getParameters().getCorrelationId())
;
return returnValue;
}
___ Devel mailing list
Devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/devel

___
Devel mailing list
Devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/devel