forked from community/device-mgt-core
commit
00686e75d1
@ -0,0 +1,149 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2018 - 2024, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. licenses this file to you 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
|
||||||
|
*
|
||||||
|
* http://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.
|
||||||
|
*/
|
||||||
|
package io.entgra.device.mgt.core.device.mgt.core.internal;
|
||||||
|
|
||||||
|
import com.google.gson.Gson;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.common.exceptions.MetadataManagementException;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.common.exceptions.TransactionManagementException;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.common.metadata.mgt.Metadata;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.common.metadata.mgt.MetadataManagementService;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.core.DeviceManagementConstants;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.core.operation.change.status.task.dto.OperationConfig;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.core.operation.mgt.dao.OperationDAO;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.core.operation.mgt.dao.OperationManagementDAOException;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.core.operation.mgt.dao.OperationManagementDAOFactory;
|
||||||
|
import org.apache.commons.logging.Log;
|
||||||
|
import org.apache.commons.logging.LogFactory;
|
||||||
|
import org.wso2.carbon.core.ServerStartupObserver;
|
||||||
|
import org.wso2.carbon.user.api.AuthorizationManager;
|
||||||
|
import org.wso2.carbon.user.api.Permission;
|
||||||
|
import org.wso2.carbon.user.api.UserStoreException;
|
||||||
|
import org.wso2.carbon.user.api.UserStoreManager;
|
||||||
|
import org.wso2.carbon.utils.multitenancy.MultitenantConstants;
|
||||||
|
|
||||||
|
public class DeviceManagementStartupHandler implements ServerStartupObserver {
|
||||||
|
private static final Log log = LogFactory.getLog(DeviceManagementStartupHandler.class);
|
||||||
|
private static final Gson gson = new Gson();
|
||||||
|
private static final String OPERATION_CONFIG = "OPERATION_CONFIG";
|
||||||
|
private static final String tenantDomain = MultitenantConstants.SUPER_TENANT_DOMAIN_NAME;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void completingServerStartup() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void completedServerStartup() {
|
||||||
|
userRoleCreateObserver();
|
||||||
|
operationStatusChangeObserver();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void userRoleCreateObserver() {
|
||||||
|
try {
|
||||||
|
UserStoreManager userStoreManager =
|
||||||
|
DeviceManagementDataHolder.getInstance().getRealmService().getTenantUserRealm(
|
||||||
|
MultitenantConstants.SUPER_TENANT_ID).getUserStoreManager();
|
||||||
|
String tenantAdminName =
|
||||||
|
DeviceManagementDataHolder.getInstance().getRealmService().getTenantUserRealm(
|
||||||
|
MultitenantConstants.SUPER_TENANT_ID).getRealmConfiguration().getAdminUserName();
|
||||||
|
AuthorizationManager authorizationManager = DeviceManagementDataHolder.getInstance().getRealmService()
|
||||||
|
.getTenantUserRealm(MultitenantConstants.SUPER_TENANT_ID).getAuthorizationManager();
|
||||||
|
|
||||||
|
if (!userStoreManager.isExistingRole(DeviceManagementConstants.User.DEFAULT_DEVICE_ADMIN)) {
|
||||||
|
userStoreManager.addRole(
|
||||||
|
DeviceManagementConstants.User.DEFAULT_DEVICE_ADMIN,
|
||||||
|
null,
|
||||||
|
DeviceManagementConstants.User.PERMISSIONS_FOR_DEVICE_ADMIN);
|
||||||
|
} else {
|
||||||
|
for (Permission permission : DeviceManagementConstants.User.PERMISSIONS_FOR_DEVICE_ADMIN) {
|
||||||
|
authorizationManager.authorizeRole(DeviceManagementConstants.User.DEFAULT_DEVICE_ADMIN,
|
||||||
|
permission.getResourceId(), permission.getAction());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!userStoreManager.isExistingRole(DeviceManagementConstants.User.DEFAULT_DEVICE_USER)) {
|
||||||
|
userStoreManager.addRole(
|
||||||
|
DeviceManagementConstants.User.DEFAULT_DEVICE_USER,
|
||||||
|
null,
|
||||||
|
DeviceManagementConstants.User.PERMISSIONS_FOR_DEVICE_USER);
|
||||||
|
} else {
|
||||||
|
for (Permission permission : DeviceManagementConstants.User.PERMISSIONS_FOR_DEVICE_USER) {
|
||||||
|
authorizationManager.authorizeRole(DeviceManagementConstants.User.DEFAULT_DEVICE_USER,
|
||||||
|
permission.getResourceId(), permission.getAction());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
userStoreManager.updateRoleListOfUser(tenantAdminName, null,
|
||||||
|
new String[]{DeviceManagementConstants.User.DEFAULT_DEVICE_ADMIN,
|
||||||
|
DeviceManagementConstants.User.DEFAULT_DEVICE_USER});
|
||||||
|
|
||||||
|
if (log.isDebugEnabled()) {
|
||||||
|
log.debug("Device management roles: " + DeviceManagementConstants.User.DEFAULT_DEVICE_USER + ", " +
|
||||||
|
DeviceManagementConstants.User.DEFAULT_DEVICE_ADMIN + " created for the tenant:" + tenantDomain + "."
|
||||||
|
);
|
||||||
|
log.debug("Tenant administrator: " + tenantAdminName + "@" + tenantDomain +
|
||||||
|
" is assigned to the role:" + DeviceManagementConstants.User.DEFAULT_DEVICE_ADMIN + "."
|
||||||
|
);
|
||||||
|
}
|
||||||
|
} catch (UserStoreException e) {
|
||||||
|
log.error("Error occurred while creating roles for the tenant: " + tenantDomain + ".");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void operationStatusChangeObserver () {
|
||||||
|
MetadataManagementService metadataManagementService = DeviceManagementDataHolder
|
||||||
|
.getInstance().getMetadataManagementService();
|
||||||
|
OperationDAO operationDAO = OperationManagementDAOFactory.getOperationDAO();
|
||||||
|
Metadata metadata;
|
||||||
|
int numOfRecordsUpdated;
|
||||||
|
try {
|
||||||
|
metadata = metadataManagementService.retrieveMetadata(OPERATION_CONFIG);
|
||||||
|
if (metadata != null) {
|
||||||
|
OperationConfig operationConfiguration = gson.fromJson(metadata.getMetaValue(), OperationConfig.class);
|
||||||
|
String[] deviceTypes = operationConfiguration.getDeviceTypes();
|
||||||
|
String initialOperationStatus = operationConfiguration.getInitialOperationStatus();
|
||||||
|
String requiredStatusChange = operationConfiguration.getRequiredStatusChange();
|
||||||
|
|
||||||
|
for (String deviceType : deviceTypes) {
|
||||||
|
try {
|
||||||
|
OperationManagementDAOFactory.beginTransaction();
|
||||||
|
try {
|
||||||
|
numOfRecordsUpdated = operationDAO.updateOperationByDeviceTypeAndInitialStatus(deviceType,
|
||||||
|
initialOperationStatus, requiredStatusChange);
|
||||||
|
log.info(numOfRecordsUpdated + " operations updated successfully for the" + deviceType);
|
||||||
|
OperationManagementDAOFactory.commitTransaction();
|
||||||
|
} catch (OperationManagementDAOException e) {
|
||||||
|
OperationManagementDAOFactory.rollbackTransaction();
|
||||||
|
String msg = "Error occurred while updating operation status. DeviceType : " + deviceType + ", " +
|
||||||
|
"Initial operation status: " + initialOperationStatus + ", Required status:" + requiredStatusChange;
|
||||||
|
log.error(msg, e);
|
||||||
|
}
|
||||||
|
} catch (TransactionManagementException e) {
|
||||||
|
String msg = "Transactional error occurred while updating the operation status";
|
||||||
|
log.error(msg, e);
|
||||||
|
} finally {
|
||||||
|
OperationManagementDAOFactory.closeConnection();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
log.info("Operation configuration not provided");
|
||||||
|
}
|
||||||
|
} catch (MetadataManagementException e) {
|
||||||
|
String msg = "Error occurred while retrieving the operation configuration";
|
||||||
|
log.error(msg, e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1,89 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (c) 2018 - 2023, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
|
||||||
*
|
|
||||||
* Entgra (Pvt) Ltd. licenses this file to you 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
|
|
||||||
*
|
|
||||||
* http://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.
|
|
||||||
*/
|
|
||||||
package io.entgra.device.mgt.core.device.mgt.core.internal;
|
|
||||||
|
|
||||||
import io.entgra.device.mgt.core.device.mgt.core.DeviceManagementConstants;
|
|
||||||
import org.apache.commons.logging.Log;
|
|
||||||
import org.apache.commons.logging.LogFactory;
|
|
||||||
import org.wso2.carbon.core.ServerStartupObserver;
|
|
||||||
import org.wso2.carbon.user.api.AuthorizationManager;
|
|
||||||
import org.wso2.carbon.user.api.Permission;
|
|
||||||
import org.wso2.carbon.user.api.UserStoreException;
|
|
||||||
import org.wso2.carbon.user.api.UserStoreManager;
|
|
||||||
import org.wso2.carbon.utils.multitenancy.MultitenantConstants;
|
|
||||||
|
|
||||||
public class UserRoleCreateObserver implements ServerStartupObserver {
|
|
||||||
private static final Log log = LogFactory.getLog(UserRoleCreateObserver.class);
|
|
||||||
@Override
|
|
||||||
public void completingServerStartup() {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void completedServerStartup() {
|
|
||||||
String tenantDomain = MultitenantConstants.SUPER_TENANT_DOMAIN_NAME;
|
|
||||||
|
|
||||||
try {
|
|
||||||
UserStoreManager userStoreManager =
|
|
||||||
DeviceManagementDataHolder.getInstance().getRealmService().getTenantUserRealm(
|
|
||||||
MultitenantConstants.SUPER_TENANT_ID).getUserStoreManager();
|
|
||||||
String tenantAdminName =
|
|
||||||
DeviceManagementDataHolder.getInstance().getRealmService().getTenantUserRealm(
|
|
||||||
MultitenantConstants.SUPER_TENANT_ID).getRealmConfiguration().getAdminUserName();
|
|
||||||
AuthorizationManager authorizationManager = DeviceManagementDataHolder.getInstance().getRealmService()
|
|
||||||
.getTenantUserRealm(MultitenantConstants.SUPER_TENANT_ID).getAuthorizationManager();
|
|
||||||
|
|
||||||
if (!userStoreManager.isExistingRole(DeviceManagementConstants.User.DEFAULT_DEVICE_ADMIN)) {
|
|
||||||
userStoreManager.addRole(
|
|
||||||
DeviceManagementConstants.User.DEFAULT_DEVICE_ADMIN,
|
|
||||||
null,
|
|
||||||
DeviceManagementConstants.User.PERMISSIONS_FOR_DEVICE_ADMIN);
|
|
||||||
} else {
|
|
||||||
for (Permission permission : DeviceManagementConstants.User.PERMISSIONS_FOR_DEVICE_ADMIN) {
|
|
||||||
authorizationManager.authorizeRole(DeviceManagementConstants.User.DEFAULT_DEVICE_ADMIN,
|
|
||||||
permission.getResourceId(), permission.getAction());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (!userStoreManager.isExistingRole(DeviceManagementConstants.User.DEFAULT_DEVICE_USER)) {
|
|
||||||
userStoreManager.addRole(
|
|
||||||
DeviceManagementConstants.User.DEFAULT_DEVICE_USER,
|
|
||||||
null,
|
|
||||||
DeviceManagementConstants.User.PERMISSIONS_FOR_DEVICE_USER);
|
|
||||||
} else {
|
|
||||||
for (Permission permission : DeviceManagementConstants.User.PERMISSIONS_FOR_DEVICE_USER) {
|
|
||||||
authorizationManager.authorizeRole(DeviceManagementConstants.User.DEFAULT_DEVICE_USER,
|
|
||||||
permission.getResourceId(), permission.getAction());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
userStoreManager.updateRoleListOfUser(tenantAdminName, null,
|
|
||||||
new String[] {DeviceManagementConstants.User.DEFAULT_DEVICE_ADMIN,
|
|
||||||
DeviceManagementConstants.User.DEFAULT_DEVICE_USER});
|
|
||||||
|
|
||||||
if (log.isDebugEnabled()) {
|
|
||||||
log.debug("Device management roles: " + DeviceManagementConstants.User.DEFAULT_DEVICE_USER + ", " +
|
|
||||||
DeviceManagementConstants.User.DEFAULT_DEVICE_ADMIN + " created for the tenant:" + tenantDomain + "."
|
|
||||||
);
|
|
||||||
log.debug("Tenant administrator: " + tenantAdminName + "@" + tenantDomain +
|
|
||||||
" is assigned to the role:" + DeviceManagementConstants.User.DEFAULT_DEVICE_ADMIN + "."
|
|
||||||
);
|
|
||||||
}
|
|
||||||
} catch (UserStoreException e) {
|
|
||||||
log.error("Error occurred while creating roles for the tenant: " + tenantDomain + ".");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -0,0 +1,113 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2018 - 2024, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. licenses this file to you 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
|
||||||
|
*
|
||||||
|
* http://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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.entgra.device.mgt.core.device.mgt.core.operation.change.status.task;
|
||||||
|
|
||||||
|
import com.google.gson.Gson;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.common.exceptions.MetadataKeyAlreadyExistsException;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.common.exceptions.MetadataKeyNotFoundException;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.common.exceptions.MetadataManagementException;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.common.metadata.mgt.Metadata;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.common.metadata.mgt.MetadataManagementService;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.core.internal.DeviceManagementDataHolder;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.core.operation.change.status.task.dto.OperationConfig;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.core.operation.change.status.task.exceptions.OperationConfigAlreadyExistsException;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.core.operation.change.status.task.exceptions.OperationConfigException;
|
||||||
|
import io.entgra.device.mgt.core.device.mgt.core.operation.change.status.task.exceptions.OperationConfigNotFoundException;
|
||||||
|
import org.apache.commons.logging.Log;
|
||||||
|
import org.apache.commons.logging.LogFactory;
|
||||||
|
|
||||||
|
public class OperationConfigurationService {
|
||||||
|
|
||||||
|
private static final Log log = LogFactory.getLog(OperationConfigurationService.class);
|
||||||
|
private static final Gson gson = new Gson();
|
||||||
|
private static final String STRING = "STRING";
|
||||||
|
private static final String OPERATION_CONFIG = "OPERATION_CONFIG";
|
||||||
|
static MetadataManagementService metadataManagementService = DeviceManagementDataHolder.getInstance().getMetadataManagementService();
|
||||||
|
|
||||||
|
|
||||||
|
public static OperationConfig getOperationConfig() throws OperationConfigException {
|
||||||
|
|
||||||
|
Metadata metadata;
|
||||||
|
try {
|
||||||
|
metadata = metadataManagementService.retrieveMetadata(OPERATION_CONFIG);
|
||||||
|
} catch (MetadataManagementException e) {
|
||||||
|
String msg = "Error occurred while retrieving operation configuration";
|
||||||
|
log.error(msg, e);
|
||||||
|
throw new OperationConfigException(msg, e);
|
||||||
|
}
|
||||||
|
if (metadata != null) {
|
||||||
|
return gson.fromJson(metadata.getMetaValue(), OperationConfig.class);
|
||||||
|
} else {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void addOperationConfiguration(OperationConfig config) throws OperationConfigException,
|
||||||
|
OperationConfigAlreadyExistsException {
|
||||||
|
|
||||||
|
Metadata metadata = new Metadata();
|
||||||
|
metadata.setDataType(STRING);
|
||||||
|
metadata.setMetaKey(OPERATION_CONFIG);
|
||||||
|
metadata.setMetaValue(gson.toJson(config));
|
||||||
|
|
||||||
|
try {
|
||||||
|
metadataManagementService.createMetadata(metadata);
|
||||||
|
} catch (MetadataManagementException e) {
|
||||||
|
String msg = "Error occurred while adding operation configuration";
|
||||||
|
log.error(msg, e);
|
||||||
|
throw new OperationConfigException(msg, e);
|
||||||
|
} catch (MetadataKeyAlreadyExistsException e) {
|
||||||
|
String msg = "Operation configuration already exists";
|
||||||
|
log.error(msg, e);
|
||||||
|
throw new OperationConfigAlreadyExistsException(msg, e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void updateOperationConfiguration(OperationConfig config) throws OperationConfigException {
|
||||||
|
|
||||||
|
Metadata metadata = new Metadata();
|
||||||
|
metadata.setDataType(STRING);
|
||||||
|
metadata.setMetaKey(OPERATION_CONFIG);
|
||||||
|
metadata.setMetaValue(gson.toJson(config));
|
||||||
|
|
||||||
|
try {
|
||||||
|
metadataManagementService.updateMetadata(metadata);
|
||||||
|
} catch (MetadataManagementException e) {
|
||||||
|
String msg = "Error occurred while updating operation configuration";
|
||||||
|
log.error(msg, e);
|
||||||
|
throw new OperationConfigException(msg, e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void deleteOperationConfiguration() throws OperationConfigException, OperationConfigNotFoundException {
|
||||||
|
|
||||||
|
try {
|
||||||
|
metadataManagementService.deleteMetadata(OPERATION_CONFIG);
|
||||||
|
} catch (MetadataManagementException e) {
|
||||||
|
String msg = "Error occurred while deleting operation configuration";
|
||||||
|
log.error(msg, e);
|
||||||
|
throw new OperationConfigException(msg, e);
|
||||||
|
} catch (MetadataKeyNotFoundException e) {
|
||||||
|
String msg = "Operation configuration already exists";
|
||||||
|
log.error(msg, e);
|
||||||
|
throw new OperationConfigNotFoundException(msg, e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,55 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2018 - 2024, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. licenses this file to you 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
|
||||||
|
*
|
||||||
|
* http://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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.entgra.device.mgt.core.device.mgt.core.operation.change.status.task.dto;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* DTO for Operation configuration.
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class OperationConfig {
|
||||||
|
|
||||||
|
private String[] deviceTypes;
|
||||||
|
private String initialOperationStatus;
|
||||||
|
private String requiredStatusChange;
|
||||||
|
|
||||||
|
public String[] getDeviceTypes() {
|
||||||
|
return deviceTypes;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeviceTypes(String[] deviceTypes) {
|
||||||
|
this.deviceTypes = deviceTypes;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInitialOperationStatus() {
|
||||||
|
return initialOperationStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInitialOperationStatus(String initialOperationStatus) {
|
||||||
|
this.initialOperationStatus = initialOperationStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getRequiredStatusChange() {
|
||||||
|
return requiredStatusChange;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRequiredStatusChange(String requiredStatusChange) {
|
||||||
|
this.requiredStatusChange = requiredStatusChange;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,60 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2018 - 2024, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. licenses this file to you 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
|
||||||
|
*
|
||||||
|
* http://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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.entgra.device.mgt.core.device.mgt.core.operation.change.status.task.exceptions;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Custom exception class to be used in operation configuration service related functionalities.
|
||||||
|
*/
|
||||||
|
public class OperationConfigAlreadyExistsException extends Exception {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = -1814347544027733436L;
|
||||||
|
private String errorMessage;
|
||||||
|
|
||||||
|
public String getErrorMessage() {
|
||||||
|
return errorMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setErrorMessage(String errorMessage) {
|
||||||
|
this.errorMessage = errorMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigAlreadyExistsException(String msg, Exception nestedEx) {
|
||||||
|
super(msg, nestedEx);
|
||||||
|
setErrorMessage(msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigAlreadyExistsException(String message, Throwable cause) {
|
||||||
|
super(message, cause);
|
||||||
|
setErrorMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigAlreadyExistsException(String msg) {
|
||||||
|
super(msg);
|
||||||
|
setErrorMessage(msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigAlreadyExistsException() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigAlreadyExistsException(Throwable cause) {
|
||||||
|
super(cause);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,60 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2018 - 2024, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. licenses this file to you 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
|
||||||
|
*
|
||||||
|
* http://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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.entgra.device.mgt.core.device.mgt.core.operation.change.status.task.exceptions;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Custom exception class to be used in operation configuration related functionalities.
|
||||||
|
*/
|
||||||
|
public class OperationConfigException extends Exception {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = -8933146283800122661L;
|
||||||
|
private String errorMessage;
|
||||||
|
|
||||||
|
public String getErrorMessage() {
|
||||||
|
return errorMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setErrorMessage(String errorMessage) {
|
||||||
|
this.errorMessage = errorMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigException(String msg, Exception nestedEx) {
|
||||||
|
super(msg, nestedEx);
|
||||||
|
setErrorMessage(msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigException(String message, Throwable cause) {
|
||||||
|
super(message, cause);
|
||||||
|
setErrorMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigException(String msg) {
|
||||||
|
super(msg);
|
||||||
|
setErrorMessage(msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigException() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigException(Throwable cause) {
|
||||||
|
super(cause);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,60 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2018 - 2023, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. licenses this file to you 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
|
||||||
|
*
|
||||||
|
* http://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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.entgra.device.mgt.core.device.mgt.core.operation.change.status.task.exceptions;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Custom exception class to be used in Operation configuration related functionalities.
|
||||||
|
*/
|
||||||
|
public class OperationConfigNotFoundException extends Exception {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 5260831982626354815L;
|
||||||
|
private String errorMessage;
|
||||||
|
|
||||||
|
public String getErrorMessage() {
|
||||||
|
return errorMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setErrorMessage(String errorMessage) {
|
||||||
|
this.errorMessage = errorMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigNotFoundException(String msg, Exception nestedEx) {
|
||||||
|
super(msg, nestedEx);
|
||||||
|
setErrorMessage(msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigNotFoundException(String message, Throwable cause) {
|
||||||
|
super(message, cause);
|
||||||
|
setErrorMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigNotFoundException(String msg) {
|
||||||
|
super(msg);
|
||||||
|
setErrorMessage(msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigNotFoundException() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationConfigNotFoundException(Throwable cause) {
|
||||||
|
super(cause);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in new issue