Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * Copyright (C) 2009 the original author(s).
  *
  * 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.
 */
package org.sonatype.gshell.commands.standard;
Unset a variable or property.

Author(s):
Jason Dillon
Since:
2.5
@Command(name="unset")
public class UnsetCommand
    extends CommandActionSupport
    @Option(name = "m", longName = "mode")
    private SetCommand.Mode mode = ..;
    @Argument(required = true)
    private List<Stringargs;
    @Inject
    public UnsetCommand installCompleters(@Named("variable-name"final Completer c1) {
        assert c1 != null;
        setCompleters(c1null);
        return this;
    }
    public Object execute(final CommandContext contextthrows Exception {
        assert context != null;
        Variables variables = context.getVariables();
        for (String arg : ) {
            String name = String.valueOf(arg);
            switch () {
                case :
                    unsetProperty(name);
                    break;
                case :
                    unsetVariable(variablesname);
                    break;
            }
        }
        return .;
    }
    private void unsetProperty(final String name) {
        .info("Un-setting system property: {}"name);
        System.getProperties().remove(name);
    }
    private void unsetVariable(final Variables varsfinal String name) {
        .info("Un-setting variable: {}"name);
        vars.unset(name);
    }
New to GrepCode? Check out our FAQ X