You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by ma...@apache.org on 2020/11/09 20:10:23 UTC
[archiva] branch master updated: Switching to snake case for v2
REST service
This is an automated email from the ASF dual-hosted git repository.
martin_s pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/archiva.git
The following commit(s) were added to refs/heads/master by this push:
new 544db79 Switching to snake case for v2 REST service
544db79 is described below
commit 544db792622e28ddeeb47f26735d7dd5a000a9b3
Author: Martin Stockhammer <ma...@apache.org>
AuthorDate: Mon Nov 9 21:10:16 2020 +0100
Switching to snake case for v2 REST service
---
.../main/archiva-web/src/app/app.component.html | 2 +-
.../archiva-web/src/app/model/error-message.ts | 2 +-
.../main/archiva-web/src/app/model/error-result.ts | 4 +-
.../main/archiva-web/src/app/model/operation.ts | 2 +-
.../archiva-web/src/app/model/pagination-info.ts | 2 +-
.../main/archiva-web/src/app/model/permission.ts | 2 +-
.../main/archiva-web/src/app/model/user-info.ts | 16 ++---
.../paginated-entities.component.ts | 3 +-
.../manage-users-list.component.html | 74 +++++++++++-----------
.../src/main/archiva-web/src/assets/i18n/en.json | 4 +-
.../src/test/resources/generate-users.sh | 5 +-
11 files changed, 60 insertions(+), 56 deletions(-)
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/app.component.html b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/app.component.html
index fd24fdc..7525842 100644
--- a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/app.component.html
+++ b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/app.component.html
@@ -30,7 +30,7 @@
<div class="collapse navbar-collapse" id="navbarsDefault">
<div class="navbar-nav ml-auto">
<span *ngIf="auth.authenticated" class="navbar-text border-right pr-2 mr-2">
- {{user.userInfo.fullName}}
+ {{user.userInfo.full_name}}
</span>
<ul class="navbar-nav">
<li class="nav-item active">
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/error-message.ts b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/error-message.ts
index 6e858cd..479f949 100644
--- a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/error-message.ts
+++ b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/error-message.ts
@@ -17,7 +17,7 @@
*/
export class ErrorMessage {
- errorKey: string;
+ error_key: string;
args: string[];
message: string;
}
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/error-result.ts b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/error-result.ts
index 6203792..64e9765 100644
--- a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/error-result.ts
+++ b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/error-result.ts
@@ -19,9 +19,9 @@
import {ErrorMessage} from "./error-message";
export class ErrorResult {
- errorMessages: Array<ErrorMessage>
+ error_messages: Array<ErrorMessage>
constructor(errorMessages: Array<ErrorMessage>) {
- this.errorMessages = errorMessages;
+ this.error_messages = errorMessages;
}
}
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/operation.ts b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/operation.ts
index eded8ae..af5138c 100644
--- a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/operation.ts
+++ b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/operation.ts
@@ -19,6 +19,6 @@
export class Operation {
name: string;
description: string;
- descriptionKey: string;
+ description_key: string;
permanent: boolean;
}
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/pagination-info.ts b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/pagination-info.ts
index 87b78e0..4d5c758 100644
--- a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/pagination-info.ts
+++ b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/pagination-info.ts
@@ -17,7 +17,7 @@
*/
export class PaginationInfo {
- totalCount : number;
+ total_count : number;
offset: number;
limit: number;
}
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/permission.ts b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/permission.ts
index 53d00cf..a5b3d0f 100644
--- a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/permission.ts
+++ b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/permission.ts
@@ -23,7 +23,7 @@ export class Permission {
name: string;
description: string;
permanent: boolean;
- descriptionKey: string;
+ description_key: string;
operation: Operation;
resource: Resource;
}
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/user-info.ts b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/user-info.ts
index 0ac142b..653a491 100644
--- a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/user-info.ts
+++ b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/model/user-info.ts
@@ -19,17 +19,17 @@
export class UserInfo {
user_id:string;
id:string;
- fullName:string;
+ full_name:string;
email:string;
validated:boolean;
locked:boolean;
- passwordChangeRequired:boolean;
+ password_change_required:boolean;
permanent:boolean;
- timestampAccountCreation:Date;
- timestampLastLogin:Date;
- timestampLastPasswordChange:Date;
- readOnly:boolean;
- userManagerId:string;
- validationToken:string;
+ timestamp_account_creation:Date;
+ timestamp_last_login:Date;
+ timestamp_last_password_change:Date;
+ read_only:boolean;
+ user_manager_id:string;
+ validation_token:string;
language:string;
}
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/modules/general/paginated-entities/paginated-entities.component.ts b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/modules/general/paginated-entities/paginated-entities.component.ts
index f563cec..a2b967a 100644
--- a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/modules/general/paginated-entities/paginated-entities.component.ts
+++ b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/modules/general/paginated-entities/paginated-entities.component.ts
@@ -132,7 +132,7 @@ export class PaginatedEntitiesComponent<T> implements OnInit, FieldToggle, After
mergeMap((params: { search: string, page: number }) => {
return this.service(params.search, (params.page - 1) * this.pageSize, this.pageSize, this.sortField, this.sortOrder);
}), share());
- this.total$ = source.pipe(pluck('pagination', 'totalCount'));
+ this.total$ = source.pipe(pluck('pagination', 'total_count'));
this.items$ = source.pipe(pluck('data'));
}
@@ -189,6 +189,7 @@ export class PaginatedEntitiesComponent<T> implements OnInit, FieldToggle, After
this.sortFieldChange.emit(this.sortField);
}
if (sortFieldChanged || sortOrderChanged) {
+ this.page = 1;
this.changePage(1);
}
}
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/modules/user/users/manage-users-list/manage-users-list.component.html b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/modules/user/users/manage-users-list/manage-users-list.component.html
index 5293a0f..b64f182 100644
--- a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/modules/user/users/manage-users-list/manage-users-list.component.html
+++ b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/app/modules/user/users/manage-users-list/manage-users-list.component.html
@@ -18,43 +18,45 @@
-->
<app-paginated-entities [service]="service" pageSize="5" [(sortField)]="sortField" [(sortOrder)]="sortOrder"
- #parent>
+ #parent>
-<table class="table table-striped table-bordered">
- <thead class="thead-light">
- <tr sorted [sortFieldEmitter]="parent.sortFieldChange" [sortOrderEmitter]="parent.sortOrderChange"
- [toggleObserver]="parent" >
- <app-th-sorted [fieldArray]="['user_id']" contentText="users.list.table.head.user_id"></app-th-sorted>
- <app-th-sorted contentText="users.list.table.head.fullName" [fieldArray]="['fullName']" ></app-th-sorted>
- <app-th-sorted contentText="users.list.table.head.email" [fieldArray]="['email']"></app-th-sorted>
- <app-th-sorted [fieldArray]="['validated','user_id']">
+ <table class="table table-striped table-bordered">
+ <thead class="thead-light">
+ <tr sorted [sortFieldEmitter]="parent.sortFieldChange" [sortOrderEmitter]="parent.sortOrderChange"
+ [toggleObserver]="parent">
+ <app-th-sorted [fieldArray]="['user_id']" contentText="users.list.table.head.user_id"></app-th-sorted>
+ <app-th-sorted [fieldArray]="['full_name']" contentText="users.list.table.head.full_name" ></app-th-sorted>
+ <app-th-sorted [fieldArray]="['email']" contentText="users.list.table.head.email" ></app-th-sorted>
+ <app-th-sorted [fieldArray]="['validated','user_id']">
<span class="fas fa-check" placement="top"
- [ngbTooltip]="heads.validated" [attr.aria-label]="heads.validated">
- </span>
- </app-th-sorted>
- <th scope="col"><span class="fas fa-lock" placement="top"
- [ngbTooltip]="heads.locked" [attr.aria-label]="heads.locked"></span></th>
- <th scope="col"><span class="fa fa-chevron-circle-right" placement="top"
- [ngbTooltip]="heads.pwchange" [attr.aria-label]="heads.pwchange"></span>
- </th>
- <th scope="col">{{'users.list.table.head.lastLogin' | translate}}</th>
- <app-th-sorted contentText="users.list.table.head.created" [fieldArray]="['created']" ></app-th-sorted>
- <th scope="col">{{'users.list.table.head.lastPwChange' | translate}}</th>
- </tr>
- </thead>
- <tbody>
- <tr *ngFor="let user of parent.items$ | async" [ngClass]="(user.permanent||user.readOnly)?'table-secondary':''" >
- <td><span data-toggle="tooltip" placement="left" ngbTooltip="{{user.id}}">{{user.user_id}}</span></td>
- <td>{{user.fullName}}</td>
- <td>{{user.email}}</td>
- <td><span class="far" [attr.aria-valuetext]="user.validated" [ngClass]="user.validated?'fa-check-circle':'fa-circle'"></span></td>
- <td><span class="far" [attr.aria-valuetext]="user.locked" [ngClass]="user.locked?'fa-check-circle':'fa-circle'"></span></td>
- <td><span class="far" [attr.aria-valuetext]="user.passwordChangeRequired" [ngClass]="user.passwordChangeRequired?'fa-check-circle':'fa-circle'"></span></td>
- <td>{{user.timestampLastLogin | date:'yyyy-MM-ddTHH:mm:ss'}}</td>
- <td>{{user.timestampAccountCreation | date : 'yyyy-MM-ddTHH:mm:ss'}}</td>
- <td>{{user.timestampLastPasswordChange| date : 'yyyy-MM-ddTHH:mm:ss'}}</td>
- </tr>
- </tbody>
-</table>
+ [ngbTooltip]="heads.validated" [attr.aria-label]="heads.validated"></span>
+ </app-th-sorted>
+ <app-th-sorted [fieldArray]="['locked','user_id']"><span class="fas fa-lock" placement="top"
+ [ngbTooltip]="heads.locked" [attr.aria-label]="heads.locked"></span></app-th-sorted>
+ <app-th-sorted [fieldArray]="['password_change_required','user_id']"><span class="fa fa-chevron-circle-right" placement="top"
+ [ngbTooltip]="heads.pwchange" [attr.aria-label]="heads.pwchange"></span>
+ </app-th-sorted>
+ <app-th-sorted [fieldArray]="['last_login']" contentText="users.list.table.head.last_login"></app-th-sorted>
+ <app-th-sorted [fieldArray]="['created']" contentText="users.list.table.head.created" ></app-th-sorted>
+ <app-th-sorted [fieldArray]="['last_password_change']" contentText="users.list.table.head.last_password_change"></app-th-sorted>
+ </tr>
+ </thead>
+ <tbody>
+ <tr *ngFor="let user of parent.items$ | async" [ngClass]="(user.permanent||user.readOnly)?'table-secondary':''">
+ <td><span data-toggle="tooltip" placement="left" ngbTooltip="{{user.id}}">{{user.user_id}}</span></td>
+ <td>{{user.full_name}}</td>
+ <td>{{user.email}}</td>
+ <td><span class="far" [attr.aria-valuetext]="user.validated"
+ [ngClass]="user.validated?'fa-check-circle':'fa-circle'"></span></td>
+ <td><span class="far" [attr.aria-valuetext]="user.locked"
+ [ngClass]="user.locked?'fa-check-circle':'fa-circle'"></span></td>
+ <td><span class="far" [attr.aria-valuetext]="user.passwordChangeRequired"
+ [ngClass]="user.password_change_required?'fa-check-circle':'fa-circle'"></span></td>
+ <td>{{user.timestamp_last_login | date:'yyyy-MM-ddTHH:mm:ss'}}</td>
+ <td>{{user.timestamp_account_creation | date : 'yyyy-MM-ddTHH:mm:ss'}}</td>
+ <td>{{user.timestamp_last_password_change| date : 'yyyy-MM-ddTHH:mm:ss'}}</td>
+ </tr>
+ </tbody>
+ </table>
</app-paginated-entities>
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/assets/i18n/en.json b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/assets/i18n/en.json
index f54e4d5..bfb2709 100644
--- a/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/assets/i18n/en.json
+++ b/archiva-modules/archiva-web/archiva-webapp/src/main/archiva-web/src/assets/i18n/en.json
@@ -57,13 +57,13 @@
"id": "ID",
"user_id": "Login Name",
"email": "Email",
- "fullName": "Name",
+ "full_name": "Name",
"validated": "User Validated",
"locked": "User Locked",
"pwchange": "Password Change Required",
"lastLogin": "Last Login",
"created": "Created",
- "lastPwChange": "Last Password Change"
+ "last_password_change": "Last Password Change"
}
}
},
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/test/resources/generate-users.sh b/archiva-modules/archiva-web/archiva-webapp/src/test/resources/generate-users.sh
index 4f52aaf..8e22450 100644
--- a/archiva-modules/archiva-web/archiva-webapp/src/test/resources/generate-users.sh
+++ b/archiva-modules/archiva-web/archiva-webapp/src/test/resources/generate-users.sh
@@ -21,7 +21,7 @@
BASE_URL="http://localhost:8080/archiva"
USER_NAME="admin"
PASSWD="admin456"
-USERS=25
+USERS=50
#Authenticate
TOKEN=$(curl -s -X POST "${BASE_URL}/api/v2/redback/auth/authenticate" -H "accept: application/json" -H "Content-Type: application/json" \
@@ -40,7 +40,8 @@ while [ $NUM -ge 0 ]; do
curl -s -w ' - %{http_code}' -X POST "${BASE_URL}/api/v2/redback/users" -H "accept: application/json" \
-H "Authorization: Bearer ${TOKEN}" \
-H "Content-Type: application/json" \
- -d "{\"user_id\":\"test${SUFFIX}\",\"fullName\":\"Test User ${SUFFIX}\",\"email\":\"test${SUFFIX}@test.org\",\"validated\":true,\"locked\":false,\"passwordChangeRequired\":false,\"password\":\"test123\"}"
+ -d "{\"user_id\":\"test${SUFFIX}\",\"full_name\":\"Test User ${SUFFIX}\",\"email\":\"test${SUFFIX}@test.org\",\"validated\":true,\"locked\":false,\"password_change_required\":false,\"password\":\"test123\"}"
NUM=$((NUM-1))
echo " "
+ sleep 0.2 # Sleeping to get different creation timestamps
done
\ No newline at end of file