1 package org.apache.maven.mkslib;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.util.Date;
23
24 import org.apache.maven.changelog.AbstractChangeLogGenerator;
25 import org.apache.maven.util.RepositoryUtils;
26 import org.apache.tools.ant.types.Commandline;
27
28 /**
29 * A log-generator for the mks commandline tool.
30 *
31 * It supports an input file with <code>
32 *
33 * @author <a href="mailto:c.jerolimov@tarent.de">Christoph Jerolimov</a>
34 * @version $Id: MksChangeLogGenerator.java 532339 2007-04-25 12:28:56Z ltheussl $
35 */
36 public class MksChangeLogGenerator extends AbstractChangeLogGenerator
37 {
38
39 /**
40 * @return the mks command line to be executed.
41 */
42 protected Commandline getScmLogCommand()
43 {
44 String[] tokens =
45 RepositoryUtils.splitSCMConnection( getConnection() );
46
47 Commandline commandline = new Commandline();
48
49 commandline.setExecutable( tokens[2] );
50
51 for ( int i = 3; i < tokens.length; i++ )
52 {
53 commandline.createArgument().setValue( tokens[i] );
54 }
55
56 return commandline;
57 }
58
59 /**
60 * Construct the MKS command-line argument that is used to specify the
61 * appropriate date range. Currently always returns null.
62 *
63 * @param before The starting point.
64 * @param to The ending point.
65 * @return A string that can be used to specify a date to a scm system.
66 */
67 protected String getScmDateArgument( Date before, Date to )
68 {
69 return null;
70 }
71
72 /**
73 * Currently always returns null.
74 * @see AbstractChangeLogGenerator#getScmTagArgument(String, String)
75 */
76 protected String getScmTagArgument( String tagStart, String tagEnd )
77 {
78 return null;
79 }
80 }