772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper/**
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper *
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * Copyright (c) 2008 Sun Microsystems Inc. All Rights Reserved
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper *
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * The contents of this file are subject to the terms
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * of the Common Development and Distribution License
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * (the License). You may not use this file except in
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * compliance with the License.
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper *
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * You can obtain a copy of the License at
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * https://opensso.dev.java.net/public/CDDLv1.0.html or
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * opensso/legal/CDDLv1.0.txt
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * See the License for the specific language governing
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * permission and limitations under the License.
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper *
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * When distributing Covered Code, include this CDDL
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * Header Notice in each file and include the License file
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * at opensso/legal/CDDLv1.0.txt.
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * If applicable, add the following below the CDDL Header,
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * with the fields enclosed by brackets [] replaced by
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * your own identifying information:
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper * "Portions Copyrighted [year] [name of copyright owner]"
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper *
fd87861d2571a856db2b9d6dc149c3b64e989cc9Peter Major * $Id: AgentAppBase.java,v 1.1 2008/12/11 15:01:54 naghaon Exp $
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper *
674e10429cb2fdee6c7824699294a75d68d31f7aMark de Reeper * Portions Copyrighted 2013-2014 ForgeRock AS.
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper */
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeperpackage com.sun.identity.agents.tools.jboss;
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeperimport com.sun.identity.install.tools.configurator.IStateAccess;
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeperimport com.sun.identity.install.tools.util.ConfigUtil;
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeperimport com.sun.identity.install.tools.util.Debug;
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeperimport com.sun.identity.install.tools.util.FileUtils;
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeperimport java.io.File;
fd87861d2571a856db2b9d6dc149c3b64e989cc9Peter Majorimport static org.forgerock.agents.tools.jboss.CommonConstants.*;
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper/**
674e10429cb2fdee6c7824699294a75d68d31f7aMark de Reeper * Deploy/un-deploy agentapp.war to JBoss server instance's deploy directory.
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper */
fd87861d2571a856db2b9d6dc149c3b64e989cc9Peter Majorpublic class AgentAppBase {
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper protected boolean copyAgentAppWarFile(IStateAccess stateAccess) {
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper boolean status = false;
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper String srcDir = ConfigUtil.getEtcDirPath();
fd87861d2571a856db2b9d6dc149c3b64e989cc9Peter Major String destDir = (String) stateAccess.get(STR_KEY_JB_INST_DEPLOY_DIR);
fd87861d2571a856db2b9d6dc149c3b64e989cc9Peter Major
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper try {
674e10429cb2fdee6c7824699294a75d68d31f7aMark de Reeper FileUtils.copyFile(srcDir + File.separator + STR_AGENT_APP_WAR_FILE,
674e10429cb2fdee6c7824699294a75d68d31f7aMark de Reeper destDir + File.separator + STR_AGENT_APP_WAR_FILE);
fd87861d2571a856db2b9d6dc149c3b64e989cc9Peter Major Debug.log("ConfigureAgentAppTask.copyAgentAppWarFile() - copy " + STR_AGENT_APP_WAR_FILE
fd87861d2571a856db2b9d6dc149c3b64e989cc9Peter Major + " from " + srcDir + " to " + destDir);
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper status = true;
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper } catch (Exception e) {
674e10429cb2fdee6c7824699294a75d68d31f7aMark de Reeper Debug.log("ConfigureAgentAppTask.copyAgentAppWarFile() - Error occurred while copying "
fd87861d2571a856db2b9d6dc149c3b64e989cc9Peter Major + STR_AGENT_APP_WAR_FILE + " from " + srcDir + " to " + destDir, e);
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper }
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper return status;
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper }
fd87861d2571a856db2b9d6dc149c3b64e989cc9Peter Major
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper protected boolean removeAgentAppWar(IStateAccess stateAccess) {
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper boolean status = false;
fd87861d2571a856db2b9d6dc149c3b64e989cc9Peter Major String destDir = (String) stateAccess.get(STR_KEY_JB_INST_DEPLOY_DIR);
fd87861d2571a856db2b9d6dc149c3b64e989cc9Peter Major String agentAppWar = destDir + File.separator + STR_AGENT_APP_WAR_FILE;
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper try {
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper File file = new File(agentAppWar);
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper status = file.delete();
fd87861d2571a856db2b9d6dc149c3b64e989cc9Peter Major Debug.log("ConfigureAgentAppTask.removeAgentAppWar(): Removed file " + agentAppWar);
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper } catch (Exception e) {
fd87861d2571a856db2b9d6dc149c3b64e989cc9Peter Major Debug.log("ConfigureAgentAppTask.removeAgentAppWar(): Failed to remove file " + agentAppWar, e);
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper }
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper return status;
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper }
772e6948bd1fe23ee7d309da6df96d9f99f04b46Mark de Reeper}