Skip to content

Commit cf745d7

Browse files
committed
Fixed SiteUser patch request auth
1 parent 9d0ad27 commit cf745d7

File tree

1 file changed

+42
-82
lines changed

1 file changed

+42
-82
lines changed

src/main/java/org/computate/frFR/java/EcrireApiClasse.java

Lines changed: 42 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -1975,6 +1975,10 @@ public void ecrireGenApiServiceImpl2(String classeLangueNom) throws Exception {
19751975
if(StringUtils.equals(classeApiMethodeMethode, "GET")) {
19761976
tl(5, "{");
19771977
} else {
1978+
if(classeRoleUtilisateur) {
1979+
tl(5, "scopes.add(\"GET\");");
1980+
tl(5, "scopes.add(\"PATCH\");");
1981+
}
19781982
tl(5, "if(authorizationDecisionResponse.failed() || !scopes.contains(\"", classeApiMethodeMethode, "\")) {");
19791983
tl(6, "String msg = String.format(\"403 FORBIDDEN user %s to %s %s\", siteRequest.getUser().attributes().getJsonObject(\"accessToken\").getString(\"preferred_username\"), serviceRequest.getExtra().getString(\"method\"), serviceRequest.getExtra().getString(\"uri\"));");
19801984
tl(6, "eventHandler.handle(Future.succeededFuture(");
@@ -2190,7 +2194,11 @@ public void ecrireGenApiServiceImpl2(String classeLangueNom) throws Exception {
21902194
if(StringUtils.equals(classeApiMethodeMethode, "GET")) {
21912195
tl(5, "{");
21922196
} else {
2193-
tl(5, "if(authorizationDecisionResponse.failed() || !scopes.contains(\"", classeApiMethodeMethode, "\")) {");
2197+
if(classeRoleUtilisateur) {
2198+
tl(5, "scopes.add(\"GET\");");
2199+
tl(5, "scopes.add(\"PATCH\");");
2200+
}
2201+
tl(5, "if(authorizationDecisionResponse.failed() ", classeRoleUtilisateur && StringUtils.equals(classeApiMethodeMethode, "PATCH") ? "&&" : "||", " !scopes.contains(\"", classeApiMethodeMethode, "\")) {");
21942202
tl(6, "String msg = String.format(\"403 FORBIDDEN user %s to %s %s\", siteRequest.getUser().attributes().getJsonObject(\"accessToken\").getString(\"preferred_username\"), serviceRequest.getExtra().getString(\"method\"), serviceRequest.getExtra().getString(\"uri\"));");
21952203
tl(6, "eventHandler.handle(Future.succeededFuture(");
21962204
tl(7, "new ServiceResponse(403, \"FORBIDDEN\",");
@@ -3872,59 +3880,6 @@ else if(classeApiMethode.equals(i18nGlobale.getString(I18n.var_PUTCopie)))
38723880
tl(1, "public void ", classeApiOperationIdMethode, i18nGlobale.getString(I18n.var_Page), "Init(", classePageNomSimpleMethode, " page, ", classePartsListeRecherche.nomSimple(classeLangueNom), "<", classeApiClasseNomSimple, "> ", i18nGlobale.getString(I18n.var_liste), classeNomSimple, ") {");
38733881
tl(1, "}");
38743882
}
3875-
//
3876-
// /////////////
3877-
// // Reponse //
3878-
// /////////////
3879-
// if (!classeApiMethode.equals("PUTImport") && !classeApiMethode.equals(classeLangueConfig.getString(ConfigCles.var_PUTFusion))){
3880-
// String var;
3881-
// String type;
3882-
// if(classeApiMethode.contains("POST")) {
3883-
// type = classeNomSimple;
3884-
// var = uncapitalizeClasseNomSimple;
3885-
// }
3886-
// else if(classeApiMethode.contains("PATCH") || classeApiMethode.equals("PUTImport") || classeApiMethode.equals(classeLangueConfig.getString(ConfigCles.var_PUTFusion)) || classeApiMethode.equals(classeLangueConfig.getString(ConfigCles.var_PUTCopie))) {
3887-
// type = classePartsRequeteSite.getEtendBase() ? classePartsRequeteSite.getNomSimpleSuperGenerique() : classePartsRequeteSite.nomSimple(classeLangueNom);
3888-
// var = classeLangueConfig.getString(ConfigCles.var_requeteSite);
3889-
// }
3890-
// else if(classeApiMethode.contains("GET") || classeApiMethode.contains(classeLangueConfig.getString(ConfigCles.var_Recherche))) {
3891-
// type = classePartsListeRecherche.nomSimple(classeLangueNom) + "<" + classeNomSimple + ">";
3892-
// var = classeLangueConfig.getString(ConfigCles.var_liste) + classeNomSimple;
3893-
// }
3894-
// else {
3895-
// type = classePartsRequeteSite.getEtendBase() ? classePartsRequeteSite.getNomSimpleSuperGenerique() : classePartsRequeteSite.nomSimple(classeLangueNom);
3896-
// var = classeLangueConfig.getString(ConfigCles.var_requeteSite);
3897-
// }
3898-
//
3899-
// t(1, "public void ", classeApiOperationIdMethode, classeLangueConfig.getString(ConfigCles.var_Reponse), "(");
3900-
// s(type, " ", var);
3901-
// l(", Handler<AsyncResult<ServiceResponse>> ", classeLangueConfig.getString(ConfigCles.var_gestionnaireEvenements), ") {");
3902-
// if(classeApiMethode.contains("POST") || classeApiMethode.contains("GET") || classeApiMethode.contains(classeLangueConfig.getString(ConfigCles.var_Recherche)))
3903-
// tl(2, classePartsRequeteSite.nomSimple(classeLangueNom), " ", classeLangueConfig.getString(ConfigCles.var_requeteSite), " = ", var, ".get", classeLangueConfig.getString(ConfigCles.var_RequeteSite), "_();");
3904-
//
3905-
// tl(2, "try {");
3906-
// if("text/html".equals(classeApiTypeMedia200Methode)) {
3907-
// tl(3, "Buffer buffer = Buffer.buffer();");
3908-
// if(classePartsToutEcrivain == null)
3909-
// throw new RuntimeException(String.format("%s %s %s %s %s. ", classeLangueConfig.getString(ConfigCles.var_classe), classeLangueConfig.getString(ConfigCles.var_ToutEcrivain), classeLangueConfig.getString(ConfigCles.var_manquante), classeLangueConfig.getString(ConfigCles.var_dans), cheminSrcMainJava));
3910-
// tl(3, classePartsToutEcrivain.nomSimple(classeLangueNom), " w = ", classePartsToutEcrivain.nomSimple(classeLangueNom), ".", classeLangueConfig.getString(ConfigCles.var_creer), "(", classeLangueConfig.getString(ConfigCles.var_requeteSite), ", buffer);");
3911-
// tl(3, classeLangueConfig.getString(ConfigCles.var_requeteSite), ".setW(w);");
3912-
// }
3913-
//
3914-
// tl(3, classeLangueConfig.getString(ConfigCles.var_reponse), "200", classeApiMethode, classeNomSimple, "(", var, ", a -> {");
3915-
// tl(4, "if(a.succeeded()) {");
3916-
// tl(5, classeLangueConfig.getString(ConfigCles.var_gestionnaireEvenements), ".handle(Future.succeededFuture(a.result()));");
3917-
// tl(4, "} else {");
3918-
// tl(5, "LOG.error(String.format(\"", classeApiOperationIdMethode, classeLangueConfig.getString(ConfigCles.var_Reponse), " ", classeLangueConfig.getString(ConfigCles.str_a_échoué), ". \", a.cause()));");
3919-
// tl(5, classeLangueConfig.getString(ConfigCles.var_erreur), "(", classeLangueConfig.getString(ConfigCles.var_requeteSite), ", ", classeLangueConfig.getString(ConfigCles.var_gestionnaireEvenements), ", a);");
3920-
// tl(4, "}");
3921-
// tl(3, "});");
3922-
// tl(2, "} catch(Exception ex) {");
3923-
// tl(3, "LOG.error(String.format(\"", classeApiOperationIdMethode, classeLangueConfig.getString(ConfigCles.var_Reponse), " ", classeLangueConfig.getString(ConfigCles.str_a_échoué), ". \"), ex);");
3924-
// tl(3, classeLangueConfig.getString(ConfigCles.var_erreur), "(", classeLangueConfig.getString(ConfigCles.var_requeteSite), ", null, ex);");
3925-
// tl(2, "}");
3926-
// tl(1, "}");
3927-
// }
39283883

39293884
/////////////////
39303885
// Reponse 200 //
@@ -4160,44 +4115,49 @@ else if(classeApiMethode.contains(i18nGlobale.getString(I18n.var_Telechargement)
41604115
}
41614116
}
41624117
}
4118+
}
4119+
}
4120+
4121+
public void ecrireGenApiServiceImpl3(String classeLangueNom) throws Exception {
4122+
classeAutresLangues = ArrayUtils.removeAllOccurences(toutesLangues, classeLangueNom);
4123+
4124+
if(auteurGenApiServiceImpl != null) {
41634125

4164-
{
4165-
SolrQuery rechercheSolr = new SolrQuery();
4166-
rechercheSolr.setQuery("*:*");
4167-
rechercheSolr.setRows(1000000);
4168-
String fqClassesSuperEtMoi = "(" + classesSuperEtMoiSansGen.stream().map(c -> ClientUtils.escapeQueryChars(c)).collect(Collectors.joining(" OR ")) + ")";
4169-
rechercheSolr.addFilterQuery("partEstEntite_indexed_boolean:true");
4170-
rechercheSolr.addFilterQuery("entiteEstSubstitue_indexed_boolean:false");
4171-
rechercheSolr.addFilterQuery("classeNomCanonique_" + langueNomActuel + "_indexed_string:" + fqClassesSuperEtMoi);
4172-
rechercheSolr.addSort("partNumero_indexed_int", ORDER.asc);
4173-
QueryResponse rechercheReponse = clientSolrComputate.query(rechercheSolr);
4174-
SolrDocumentList rechercheListe = rechercheReponse.getResults();
4175-
Integer rechercheLignes = rechercheSolr.getRows();
4126+
SolrQuery rechercheSolr = new SolrQuery();
4127+
rechercheSolr.setQuery("*:*");
4128+
rechercheSolr.setRows(1000000);
4129+
String fqClassesSuperEtMoi = "(" + classesSuperEtMoiSansGen.stream().map(c -> ClientUtils.escapeQueryChars(c)).collect(Collectors.joining(" OR ")) + ")";
4130+
rechercheSolr.addFilterQuery("partEstEntite_indexed_boolean:true");
4131+
rechercheSolr.addFilterQuery("entiteEstSubstitue_indexed_boolean:false");
4132+
rechercheSolr.addFilterQuery("classeNomCanonique_" + langueNomActuel + "_indexed_string:" + fqClassesSuperEtMoi);
4133+
rechercheSolr.addSort("partNumero_indexed_int", ORDER.asc);
4134+
QueryResponse rechercheReponse = clientSolrComputate.query(rechercheSolr);
4135+
SolrDocumentList rechercheListe = rechercheReponse.getResults();
4136+
Integer rechercheLignes = rechercheSolr.getRows();
41764137

4177-
if(rechercheListe.size() > 0) {
4178-
for(Long i = rechercheListe.getStart(); i < rechercheListe.getNumFound(); i+=rechercheLignes) {
4179-
for(Integer j = 0; j < rechercheListe.size(); j++) {
4180-
SolrDocument entiteDocumentSolr = rechercheListe.get(j);
4181-
entiteVar = (String)entiteDocumentSolr.get("entiteVar_" + classeLangueNom + "_stored_string");
4182-
entiteVarCapitalise = (String)entiteDocumentSolr.get("entiteVarCapitalise_" + classeLangueNom + "_stored_string");
4183-
entiteSuffixeType = (String)entiteDocumentSolr.get("entiteSuffixeType_stored_string");
4184-
entiteIndexe = (Boolean)entiteDocumentSolr.get("entiteIndexe_stored_boolean");
4185-
entiteTexte = (Boolean)entiteDocumentSolr.get("entiteTexte_stored_boolean");
4186-
entiteLangue = (String)entiteDocumentSolr.get("entiteLangue_stored_string");
4187-
entiteSuggere = (Boolean)entiteDocumentSolr.get("entiteSuggere_stored_boolean");
4188-
}
4189-
rechercheSolr.setStart(i.intValue() + rechercheLignes);
4190-
rechercheReponse = clientSolrComputate.query(rechercheSolr);
4191-
rechercheListe = rechercheReponse.getResults();
4138+
if(rechercheListe.size() > 0) {
4139+
for(Long i = rechercheListe.getStart(); i < rechercheListe.getNumFound(); i+=rechercheLignes) {
4140+
for(Integer j = 0; j < rechercheListe.size(); j++) {
4141+
SolrDocument entiteDocumentSolr = rechercheListe.get(j);
4142+
entiteVar = (String)entiteDocumentSolr.get("entiteVar_" + classeLangueNom + "_stored_string");
4143+
entiteVarCapitalise = (String)entiteDocumentSolr.get("entiteVarCapitalise_" + classeLangueNom + "_stored_string");
4144+
entiteSuffixeType = (String)entiteDocumentSolr.get("entiteSuffixeType_stored_string");
4145+
entiteIndexe = (Boolean)entiteDocumentSolr.get("entiteIndexe_stored_boolean");
4146+
entiteTexte = (Boolean)entiteDocumentSolr.get("entiteTexte_stored_boolean");
4147+
entiteLangue = (String)entiteDocumentSolr.get("entiteLangue_stored_string");
4148+
entiteSuggere = (Boolean)entiteDocumentSolr.get("entiteSuggere_stored_boolean");
41924149
}
4150+
rechercheSolr.setStart(i.intValue() + rechercheLignes);
4151+
rechercheReponse = clientSolrComputate.query(rechercheSolr);
4152+
rechercheListe = rechercheReponse.getResults();
41934153
}
41944154
}
41954155
}
41964156
}
41974157

41984158
/**
41994159
*/
4200-
public void ecrireGenApiServiceImpl3(String classeLangueNom) throws Exception {
4160+
public void ecrireGenApiServiceImpl4(String classeLangueNom) throws Exception {
42014161
classeAutresLangues = ArrayUtils.removeAllOccurences(toutesLangues, classeLangueNom);
42024162

42034163
if(auteurGenApiServiceImpl != null) {

0 commit comments

Comments
 (0)