From 2d73d32bf024a8d6ee0db1a52d3bd609c2781ae9 Mon Sep 17 00:00:00 2001 From: "shingil.kang" Date: Mon, 9 Dec 2013 21:37:57 +0900 Subject: [PATCH] CLI: add progresslog, log, message use progresslog to show path of the created project. use log, message to process exception. Change-Id: Ie9e07b22843b436ad7389e6ae5655e2f558e712e Signed-off-by: shingil.kang --- .../tizen/ncli/ide/messages/TizenCLIMessages.java | 4 ++ .../ncli/ide/messages/TizenCLIMessages.properties | 3 ++ .../ncli/ide/shell/CreateNativeProjectCLI.java | 11 ++--- .../tizen/ncli/ide/shell/CreateWebProjectCLI.java | 19 ++++---- .../subcommands/CreateNativeProjectCommand.java | 41 ++++++++++++++--- .../ide/subcommands/CreateWebProjectCommand.java | 52 +++++----------------- 6 files changed, 68 insertions(+), 62 deletions(-) diff --git a/org.tizen.ncli.ide/src/org/tizen/ncli/ide/messages/TizenCLIMessages.java b/org.tizen.ncli.ide/src/org/tizen/ncli/ide/messages/TizenCLIMessages.java index ad6b7af..6879a36 100644 --- a/org.tizen.ncli.ide/src/org/tizen/ncli/ide/messages/TizenCLIMessages.java +++ b/org.tizen.ncli.ide/src/org/tizen/ncli/ide/messages/TizenCLIMessages.java @@ -18,6 +18,10 @@ public class TizenCLIMessages extends NLS { public static String MANY_CONNECTED_TARGETS; public static String FAIL_TARGET; + + //CR(Create project) + public static String CR_CANNOT_CREATE_OUTDIR; + public static String CR_CANNOT_COPY_PROJECT; //BN(Build-Native) public static String BN_CANNOT_CREATE_BUILD_TARGET; diff --git a/org.tizen.ncli.ide/src/org/tizen/ncli/ide/messages/TizenCLIMessages.properties b/org.tizen.ncli.ide/src/org/tizen/ncli/ide/messages/TizenCLIMessages.properties index 14a26a7..7f53fc2 100644 --- a/org.tizen.ncli.ide/src/org/tizen/ncli/ide/messages/TizenCLIMessages.properties +++ b/org.tizen.ncli.ide/src/org/tizen/ncli/ide/messages/TizenCLIMessages.properties @@ -10,6 +10,9 @@ MANY_CONNECTED_TARGETS = There are many connected targets. FAIL_TARGET = [Fail]Can not get target . +CR_CANNOT_FIND_OUTDIR = Can not create output directory. +CR_CANNOT_COPY_PROJECT = Can not copy project file. + BN_CANNOT_CREATE_BUILD_TARGET = Can not create the build target. BN_CANNOT_FIND_CPROJECT = Can not find the .cproject file in {0}. BN_CANNOT_GET_ARTIFACT_TYPE = Can not get the artifact type. diff --git a/org.tizen.ncli.ide/src/org/tizen/ncli/ide/shell/CreateNativeProjectCLI.java b/org.tizen.ncli.ide/src/org/tizen/ncli/ide/shell/CreateNativeProjectCLI.java index 68eac4f..4c6f65b 100644 --- a/org.tizen.ncli.ide/src/org/tizen/ncli/ide/shell/CreateNativeProjectCLI.java +++ b/org.tizen.ncli.ide/src/org/tizen/ncli/ide/shell/CreateNativeProjectCLI.java @@ -7,12 +7,12 @@ import org.kohsuke.args4j.Option; import org.slf4j.Logger; import org.slf4j.LoggerFactory; //import org.tizen.ncli.ide.subcommands.CreateNativeProjectCommand; +import org.tizen.ncli.ide.messages.TizenCLIMessages; import org.tizen.ncli.ide.subcommands.CreateNativeProjectCommand; +import org.tizen.ncli.ide.subcommands.CreateNativeProjectCommandData; public class CreateNativeProjectCLI extends AbstractCLI { - private Logger logger = LoggerFactory.getLogger(getClass()); - @Option(name = "-t", aliases = { "--type" }, usage = "Specify template name") private String templateName; @@ -42,12 +42,13 @@ public class CreateNativeProjectCLI extends AbstractCLI nativeCommand.setOutputName(outputDirectory.getCanonicalPath() + File.separatorChar + nativeCommand.getProjectName()); } catch (IOException e) { - logger.error(e.getMessage()); + log.error(TizenCLIMessages.CR_CANNOT_CREATE_OUTDIR); } - nativeCommand.runCommand(); + CreateNativeProjectCommandData data = nativeCommand.runCommand(); - System.out.println("Creating native project succeeded!"); + progressLog.info("Project Location : {}",data.getOutputName()); + progressLog.info("Creating native project succeeded!"); } } diff --git a/org.tizen.ncli.ide/src/org/tizen/ncli/ide/shell/CreateWebProjectCLI.java b/org.tizen.ncli.ide/src/org/tizen/ncli/ide/shell/CreateWebProjectCLI.java index b0706ee..e05b755 100644 --- a/org.tizen.ncli.ide/src/org/tizen/ncli/ide/shell/CreateWebProjectCLI.java +++ b/org.tizen.ncli.ide/src/org/tizen/ncli/ide/shell/CreateWebProjectCLI.java @@ -29,19 +29,15 @@ import java.io.File; import java.io.IOException; import org.kohsuke.args4j.Option; -import org.kohsuke.args4j.spi.StringOptionHandler; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -//import org.tizen.ncli.ide.subcommands.CreateNativeProjectCommand; +import org.tizen.ncli.ide.messages.TizenCLIMessages; +import org.tizen.ncli.ide.subcommands.CreateProjectCommandData; import org.tizen.ncli.ide.subcommands.CreateWebProjectCommand; /** - * @author Harry Hyeongseok Heo{@literal } (S-core) + * @author Shingil Kang{@literal } (S-core) */ public class CreateWebProjectCLI extends AbstractCLI { - private Logger logger = LoggerFactory.getLogger(getClass()); - @Option(name = "-t", aliases = { "--type" }, usage = "Specify template name") private String templateName; @@ -56,7 +52,7 @@ public class CreateWebProjectCLI extends AbstractCLI @Override public void execute() { - logger.info("Template Name:{}", templateName); + log.info("Template Name:{}", templateName); CreateWebProjectCommand webCommand = new CreateWebProjectCommand(); @@ -78,11 +74,12 @@ public class CreateWebProjectCLI extends AbstractCLI webCommand.setOutputName(outputDirectory.getCanonicalPath() + File.separatorChar + webCommand.getProjectName()); } catch (IOException e) { - logger.error(e.getMessage()); + log.error(TizenCLIMessages.CR_CANNOT_CREATE_OUTDIR); } - webCommand.runCommand(); + CreateProjectCommandData data = webCommand.runCommand(); - System.out.println("Creating web project succeeded!"); + progressLog.info("project Location : {}",data.getOutputName()); + progressLog.info("Creating web project succeeded!"); } } diff --git a/org.tizen.ncli.ide/src/org/tizen/ncli/ide/subcommands/CreateNativeProjectCommand.java b/org.tizen.ncli.ide/src/org/tizen/ncli/ide/subcommands/CreateNativeProjectCommand.java index 47e6744..d6f4c41 100644 --- a/org.tizen.ncli.ide/src/org/tizen/ncli/ide/subcommands/CreateNativeProjectCommand.java +++ b/org.tizen.ncli.ide/src/org/tizen/ncli/ide/subcommands/CreateNativeProjectCommand.java @@ -1,3 +1,28 @@ +/* + * IDE + * + * Copyright (c) 2000 - 2013 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: + * Shingil Kang + * Hyeongseok Heo + * Kangho Kim + * + * 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 + * + * 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. + * + * Contributors: + * - S-Core Co., Ltd + */ package org.tizen.ncli.ide.subcommands; import java.io.File; @@ -20,7 +45,7 @@ import org.tizen.nativecommon.templateengine.util.TemplateUtil; import org.tizen.nativecpp.wizards.TemplateTizenCppNewWizard; import org.tizen.nativecpp.wizards.build.ExpressProjectGenerator; -public class CreateNativeProjectCommand extends AbstractSubCommand +public class CreateNativeProjectCommand extends AbstractSubCommand { private CreateNativeProjectCommandData data = new CreateNativeProjectCommandData(); @@ -62,7 +87,7 @@ public class CreateNativeProjectCommand extends AbstractSubCommand