Skip to content

Commit

Permalink
fix param
Browse files Browse the repository at this point in the history
  • Loading branch information
MecBoc committed Dec 13, 2019
1 parent e9b2751 commit 3cfd9dc
Show file tree
Hide file tree
Showing 7 changed files with 95 additions and 42 deletions.
23 changes: 13 additions & 10 deletions RScripts/selemix/IS2_selemix.R
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ library("rjson")


#stima completa
is2_mlest <- function( workset, roles, wsparams,...) {
is2_mlest <- function( workset, roles, wsparams=NULL,...) {

stdout <- vector('character')
con <- textConnection('stdout', 'wr', local = TRUE)
Expand All @@ -110,15 +110,18 @@ is2_mlest <- function( workset, roles, wsparams,...) {

#Parameter check
print(wsparams)
if(exists(wsparams)){
if(exists(wsparams$model)) model=wsparams$model
if(exists(wsparams$t.outl)) t.outl=wsparams$t.outl
if(exists(wsparams$lambda)) lambda=wsparams$lambda
if(exists(wsparams$w)) w=wsparams$w
if(exists(wsparams$lambda.fix)) lambda.fix=wsparams$lambda.fix
if(exists(wsparams$w.fix)) w.fix=wsparams$w.fix
if(exists(wsparams$eps)) eps=wsparams$eps
if(exists(wsparams$max.iter)) max.iter=wsparams$max.iter
if(!is.null(wsparams)){

print("asdfffffffffffffffffffffffffffffffffffffffffffff")
print(wsparams$model)
if(exists("wsparams$model")) model=wsparams$model
if(exists("wsparams$t.outl")) t.outl=wsparams$t.outl
if(exists("wsparams$lambda")) lambda=wsparams$lambda
if(exists("wsparams$w")) w=wsparams$w
if(exists("wsparams$lambda.fix")) lambda.fix=wsparams$lambda.fix
if(exists("wsparams$w.fix")) w.fix=wsparams$w.fix
if(exists("wsparams$eps")) eps=wsparams$eps
if(exists("wsparams$max.iter")) max.iter=wsparams$max.iter
}

#Execute algorithm (mettere un try catch)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,7 @@ public String eliminaAssociazioneVar(HttpSession session, Model model,

@GetMapping(value = "/cleanallworkset/{dataProcessingId}/{flagIO}")
public String cleanAllWorkset(HttpSession session, Model model, RedirectAttributes ra,
@PathVariable("dataProcessingId") Long dataProcessingId,@PathVariable("flagIO")Integer flagIO) {
@PathVariable("dataProcessingId") Long dataProcessingId,@PathVariable("flagIO")Short flagIO) {
notificationService.removeAllMessages();

try {
Expand Down Expand Up @@ -270,7 +270,7 @@ public String editWorkingSet(HttpSession session, Model model, @ModelAttribute("
// Carica i Ruoli di input e output
List<AppRole> listaRuoliInOut = workflowService.findAppRolesByProcess(businessProcessParent, 1,new DataTypeCls (IS2Const.DATA_TYPE_VARIABLE));

List<StepInstanceSignature> paramsNotAssignedList = new ArrayList<>();
List<AppRole> paramsNotAssignedList = new ArrayList<>();
List<StepRuntime> sVParamsAssignedList = workflowService.getStepRuntimeParameters(dataProcessingId);
Map<String, StepRuntime> stepParamMap=new HashMap<>();
ArrayList<String> paramAssigned = new ArrayList<>();
Expand All @@ -281,16 +281,16 @@ public String editWorkingSet(HttpSession session, Model model, @ModelAttribute("

Map<Long, List<StepInstanceSignature>> paramsAllBPPMap = workflowService
.findParametriAndSubProcessesByProcess(businessProcessParent);
List<StepInstanceSignature> paramsAllBPPList = new ArrayList<>();
List<AppRole> paramsAllBPPList = new ArrayList<>();

for (Map.Entry<Long, List<StepInstanceSignature>> entry : paramsAllBPPMap.entrySet()) {

List<StepInstanceSignature> listparams = entry.getValue();

paramsAllBPPList.addAll(listparams);
for (StepInstanceSignature stepInstanceSignature : listparams) {
if(!paramsAllBPPList.contains(stepInstanceSignature.getAppRole())) paramsAllBPPList.add(stepInstanceSignature.getAppRole());
if (!paramAssigned.contains(stepInstanceSignature.getAppRole().getParameter().getName())) {
paramsNotAssignedList.add(stepInstanceSignature);
paramsNotAssignedList.add(stepInstanceSignature.getAppRole());

}

Expand Down Expand Up @@ -325,7 +325,7 @@ public String editWorkingSet(HttpSession session, Model model, @ModelAttribute("

model.addAttribute("listaRuoliInput", listaRuoliInput);
model.addAttribute("listaRuoliInOut", listaRuoliInOut);
model.addAttribute("parameterList", paramsNotAssignedList);
//model.addAttribute("parameterList", paramsNotAssignedList);
model.addAttribute("parameterListAll", paramsAllBPPList);
model.addAttribute("datasetfiles", datasetfiles);
model.addAttribute("dataProcessing", dataProcessing);
Expand Down
33 changes: 33 additions & 0 deletions src/main/java/it/istat/is2/workflow/domain/AppRole.java
Original file line number Diff line number Diff line change
Expand Up @@ -80,4 +80,37 @@ public AppRole(Integer id) {
this.id = id;
}


@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
AppRole other = (AppRole) obj;
if (businessServices == null) {
if (other.businessServices != null)
return false;
} else if (!businessServices.equals(other.businessServices))
return false;
if (code == null) {
if (other.code != null)
return false;
} else if (!code.equals(other.code))
return false;
return true;
}


@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((businessServices == null) ? 0 : businessServices.hashCode());
result = prime * result + ((code == null) ? 0 : code.hashCode());
return result;
}

}
27 changes: 27 additions & 0 deletions src/main/java/it/istat/is2/workflow/domain/BusinessService.java
Original file line number Diff line number Diff line change
Expand Up @@ -50,4 +50,31 @@ public class BusinessService implements Serializable {
@OneToMany(mappedBy = "businessService")
private List<AppService> appServices;


@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
BusinessService other = (BusinessService) obj;
if (id == null) {
if (other.id != null)
return false;
} else if (!id.equals(other.id))
return false;
return true;
}


@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((id == null) ? 0 : id.hashCode());
return result;
}

}
23 changes: 6 additions & 17 deletions src/main/java/it/istat/is2/workflow/engine/EngineR.java
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ public void init(DataProcessing dataProcessing, StepInstance stepInstance) throw
prepareEnv();
createConnection(serverRHost, serverRPort);
bindInputColumns(worksetVariables, WORKSET_IN);
bindInputColumns(parametersMap, PARAMETERS_IN);
bindInputColumnsParams(parametersMap, PARAMETERS_IN);
bindInputColumns(ruleset, RULESET);
setRuoli(variablesRolesMap);

Expand Down Expand Up @@ -179,13 +179,7 @@ public void bindInputColumns(LinkedHashMap<String, ArrayList<String>> workset, S
listaCampiLabel = listaCampiLabel.substring(0, listaCampiLabel.length() - 1);

connection.eval(varR + " <- data.frame(" + listaCampi + ")"); // Create a data frame

// Assign the correct name to each vector in the data frame
// String namecols = "colnames(" + varR + ") = c(" + listaCampiLabel + ")";

// Logger.getRootLogger().debug("Bind input columns names " + namecols);
// connection.eval(namecols);


}
}

Expand All @@ -210,13 +204,8 @@ public void bindInputColumnsParams(LinkedHashMap<String, ArrayList<String>> work
}
listaCampi = listaCampi.substring(0, listaCampi.length() - 1);
listaCampiLabel = listaCampiLabel.substring(0, listaCampiLabel.length() - 1);
connection.eval(varR + " <- c(" + listaCampi + ")");

// assegnazione nome dei campi alle colonne
String namecols = ((size > 1) ? "col" : "") + "names(" + varR + ") = c(" + listaCampiLabel + ")";
// String exec = "colnames(" + varR + ") = c(" + listaCampi + ")";
Logger.getRootLogger().debug("Bind input columns names " + namecols);
// connection.eval(namecols);
connection.eval(varR + " <- list(" + listaCampi + ")");


}
}
Expand Down Expand Up @@ -280,12 +269,12 @@ public void doAction() throws RserveException {
// mlest <- ml.est (workset, y=Y,";
// Aggiunto il workset e params nella lista degli argomenti della funzione (by
// paolinux)
command = RESULTSET + " <- " + fname + "( " + WORKSET_IN + "," + ROLES_IN + ", ";
command = RESULTSET + " <- " + fname + "( " + WORKSET_IN + "," + ROLES_IN + ",";
if (!parametersMap.isEmpty()) {
command += PARAMETERS_IN + ",";
}
if (!ruleset.isEmpty()) {
command += RULESET + ", ";
command += RULESET + ",";
}
/*
* for (Map.Entry<String, ArrayList<String>> entry :
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -464,7 +464,7 @@ public Map<Long, List<StepInstanceSignature>> findParametriAndSubProcessesByProc
StepInstance stepInstance = (StepInstance) iterator.next();
List<StepInstanceSignature> sxsetpppList = stepInstanceSignatureDao
.findAllStepSignaturesByStepAndTypeIO(stepInstance, new TypeIO(IS2Const.TYPE_IO_INPUT),
new DataTypeCls(Integer.valueOf(IS2Const.DATA_TYPE_PARAMETER))); // INPUT 1; 1 PARAMETRO
new DataTypeCls(Integer.valueOf(IS2Const.DATA_TYPE_PARAMETER))); // INPUT 1; 1 PARAMETER
paramsList.addAll(sxsetpppList);
}
ret.put(suBusinessProcess.getId(), paramsList);
Expand Down Expand Up @@ -587,11 +587,12 @@ public void creaAssociazionVarRole(DataProcessing dataProcessing,
}

@Transactional
public void cleanAllWorkset(Long idDataProcessing, Integer flagIO) {
public void cleanAllWorkset(Long idDataProcessing, Short flagIO) {


List<StepRuntime> list = getStepRuntimes(idDataProcessing);
for (StepRuntime step : list) {
if (flagIO.equals(Integer.valueOf(0)) || step.getDataType().getId().equals(flagIO)) {
if (flagIO.equals( new Short("0")) || step.getTypeIO().equals(new TypeIO(flagIO))) {
stepRuntimeDao.deleteById(step.getId());
}
}
Expand Down
12 changes: 6 additions & 6 deletions src/main/resources/templates/workflow/edit.html
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
var _paramTemplateMap = {};
var _paramList = [[${parameterListAll}]]
for (i = 0; i < _paramList.length; i++) {
_paramTemplateMap[_paramList[i].appRole.parameter.name] = _paramList[i].appRole.parameter.jsonTemplate;
_paramTemplateMap[_paramList[i].parameter.name] = _paramList[i].parameter.jsonTemplate;
}
$(document).ready(function () {
setMenuActive([[${session.sessionBean.businessFunction.id}]]);
Expand Down Expand Up @@ -178,10 +178,10 @@
</tr>
</thead>
<tbody>
<tr th:each="paramSignInstance,stats: ${parameterListAll}" th:unless="${(parameterListAll == null) or (parameterListAll.size() == 0) }">
<tr th:each="paramSignInstanceAppRole,stats: ${parameterListAll}" th:unless="${(parameterListAll == null) or (parameterListAll.size() == 0) }">
<td><span th:text="${stats.index+1}"></span></td>
<td th:text="${paramSignInstance.appRole.parameter.name}"></td>
<th:block th:if="${stepParamMap.get(paramSignInstance.appRole.parameter.name)}" th:with="stepP=${stepParamMap.get(paramSignInstance.appRole.parameter.name)}">
<td th:text="${paramSignInstanceAppRole.parameter.name}"></td>
<th:block th:if="${stepParamMap.get(paramSignInstanceAppRole.parameter.name)}" th:with="stepP=${stepParamMap.get(paramSignInstanceAppRole.parameter.name)}">
<td><span th:utext="${T(it.istat.is2.app.util.Utility).printJsonToHtml(stepP.workset.paramValue)}"></span></td>
<td>
<a href="javascript:void(0);" title="Modifica parametro"
Expand All @@ -195,11 +195,11 @@
</a>
</td>
</th:block>
<th:block th:unless="${stepParamMap.get(paramSignInstance.appRole.parameter.name)}">
<th:block th:unless="${stepParamMap.get(paramSignInstanceAppRole.parameter.name)}">
<td><i class="fa fa-times" style="color: #f86c6b;"></i></td>
<td>
<a href="javascript:void(0);" title="Modifica parametro"
th:attr="data-role-id=${paramSignInstance.appRole.id},data-param-id=${paramSignInstance.appRole.parameter.id},data-param-name=${paramSignInstance.appRole.parameter.name},onclick='javascript:openAddParameter(this);'">
th:attr="data-role-id=${paramSignInstanceAppRole.id},data-param-id=${paramSignInstanceAppRole.parameter.id},data-param-name=${paramSignInstanceAppRole.parameter.name},onclick='javascript:openAddParameter(this);'">
<i class="fa fa-pencil"></i>
</a>
</td>
Expand Down

0 comments on commit 3cfd9dc

Please sign in to comment.