/* * Copyright 2011-16 Fraunhofer ISE * * This file is part of OpenMUC. * For more information visit http://www.openmuc.org * * OpenMUC is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * OpenMUC is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with OpenMUC. If not, see <http://www.gnu.org/licenses/>. * */ package org.openmuc.framework.lib.json.restObjects; import org.openmuc.framework.config.DeviceConfig; import org.openmuc.framework.config.IdCollisionException; import org.openmuc.framework.lib.json.exceptions.RestConfigIsNotCorrectException; public class RestDeviceConfigMapper { public static RestDeviceConfig getRestDeviceConfig(DeviceConfig dc) { RestDeviceConfig rdc = new RestDeviceConfig(); rdc.setConnectRetryInterval(dc.getConnectRetryInterval()); rdc.setDescription(dc.getDescription()); rdc.setDeviceAddress(dc.getDeviceAddress()); rdc.isDisabled(dc.isDisabled()); rdc.setId(dc.getId()); rdc.setSamplingTimeout(dc.getSamplingTimeout()); rdc.setSettings(dc.getSettings()); return rdc; } public static void setDeviceConfig(DeviceConfig dc, RestDeviceConfig rdc, String idFromUrl) throws IdCollisionException, RestConfigIsNotCorrectException { if (dc == null) { throw new RestConfigIsNotCorrectException("DriverConfig is null!"); } else { if (rdc != null) { if (rdc.getId() != null && !rdc.getId().equals("") && !idFromUrl.equals(rdc.getId())) { dc.setId(rdc.getId()); } dc.setConnectRetryInterval(rdc.getConnectRetryInterval()); dc.setDescription(rdc.getDescription()); dc.setDeviceAddress(rdc.getDeviceAddress()); dc.setDisabled(rdc.getDisabled()); dc.setSamplingTimeout(rdc.getSamplingTimeout()); dc.setSettings(rdc.getSettings()); } else { throw new RestConfigIsNotCorrectException(); } } } }