gen-jhipster
Version:
VHipster - Spring Boot + Angular/React/Vue in one handy generator
79 lines (78 loc) • 2.8 kB
JavaScript
/**
* Copyright 2013-2026 the original author or authors from the JHipster project.
*
* This file is part of the JHipster project, see https://www.jhipster.tech/
* for more information.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { asWritingEntitiesTask, asWritingTask } from "../base-application/support/task-type-inference.js";
import { SERVER_LIB_DIR, SERVER_MAIN_RES_DIR, SERVER_MAIN_SRC_DIR } from "../generator-constants.js";
import { moveToJavaPackageSrcDir } from "../java/support/index.js";
export const vauthzFiles = {
serverResource: [
{
path: `${SERVER_MAIN_SRC_DIR}_package_/`,
renameTo: moveToJavaPackageSrcDir,
templates: [
'config/VauthzCheck.java',
'config/VauthzClientConfig.java',
'config/VauthzConstants.java',
'config/VauthzProperties.java',
],
},
{
path: `${SERVER_LIB_DIR}/`,
transform: false,
templates: ['vauthz-java-1.1.jar'],
},
],
};
export const vauthzSyncPoliciesFiles = {
vauthzResource: [
{
path: `${SERVER_MAIN_SRC_DIR}_package_/`,
renameTo: moveToJavaPackageSrcDir,
templates: ['web/rest/VauthzController.java'],
},
{
path: `${SERVER_MAIN_SRC_DIR}_package_/`,
renameTo: moveToJavaPackageSrcDir,
templates: ['service/VauthzService.java'],
},
{
path: `${SERVER_MAIN_RES_DIR}`,
templates: ['config/vauthz.yml'],
},
],
};
export default asWritingTask(async function writeVauthzFilesTask({ application }) {
await this.writeFiles({
sections: vauthzFiles,
context: application,
});
});
export const writeVauthzPoliciesFiles = function () {
return {
writeServerFiles: asWritingEntitiesTask(async function ({ application, entities }) {
await this.writeFiles({
sections: vauthzSyncPoliciesFiles,
context: {
...application,
entities,
allowVauthzUserRelationship: application.allowVauthzUserRelationship ?? true,
},
});
}),
};
};