1   package com.atlassian.maven.plugins.amps.codegen.prompter.jira;
2   
3   import com.atlassian.maven.plugins.amps.codegen.annotations.ModuleCreatorClass;
4   import com.atlassian.maven.plugins.amps.codegen.prompter.AbstractModulePrompter;
5   import com.atlassian.plugins.codegen.modules.PluginModuleLocation;
6   import com.atlassian.plugins.codegen.modules.jira.JqlFunctionModuleCreator;
7   import com.atlassian.plugins.codegen.modules.jira.JqlFunctionProperties;
8   import com.atlassian.plugins.codegen.util.ClassnameUtil;
9   
10  import org.codehaus.plexus.components.interactivity.Prompter;
11  import org.codehaus.plexus.components.interactivity.PrompterException;
12  
13  /**
14   * @since 3.5
15   */
16  @ModuleCreatorClass(JqlFunctionModuleCreator.class)
17  public class JqlFunctionPrompter extends AbstractModulePrompter<JqlFunctionProperties>
18  {
19  
20      public JqlFunctionPrompter(Prompter prompter)
21      {
22          super(prompter);
23  
24      }
25  
26      @Override
27      public JqlFunctionProperties promptForBasicProperties(PluginModuleLocation moduleLocation) throws PrompterException
28      {
29          String className = promptJavaClassname("Enter New Classname", "MyJqlFunction");
30          String packageName = promptJavaPackagename("Enter Package Name", getDefaultBasePackage() + ".jira.jql");
31  
32          String fqClass = ClassnameUtil.fullyQualifiedName(packageName, className);
33  
34          return new JqlFunctionProperties(fqClass);
35      }
36  
37      @Override
38      public void promptForAdvancedProperties(JqlFunctionProperties props, PluginModuleLocation moduleLocation) throws PrompterException
39      {
40  
41      }
42  }