1 package org.apache.continuum.scm; 2 3 import java.io.File; 4 import java.util.Date; 5 6 /* 7 * Licensed to the Apache Software Foundation (ASF) under one 8 * or more contributor license agreements. See the NOTICE file 9 * distributed with this work for additional information 10 * regarding copyright ownership. The ASF licenses this file 11 * to you under the Apache License, Version 2.0 (the 12 * "License"); you may not use this file except in compliance 13 * with the License. You may obtain a copy of the License at 14 * 15 * http://www.apache.org/licenses/LICENSE-2.0 16 * 17 * Unless required by applicable law or agreed to in writing, 18 * software distributed under the License is distributed on an 19 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 20 * KIND, either express or implied. See the License for the 21 * specific language governing permissions and limitations 22 * under the License. 23 */ 24 25 /** 26 * Configuration for a project's source control. 27 * 28 * @version $Id: ContinuumScmConfiguration.java 1372260 2012-08-13 04:29:09Z brett $ 29 * @todo JAXB for persistence 30 */ 31 public class ContinuumScmConfiguration 32 { 33 /** 34 * The SCM URL, in the format specified by Maven SCM. 35 */ 36 private String url; 37 38 /** 39 * The SCM username to use in connecting. 40 */ 41 private String username; 42 43 /** 44 * The SCM password to use in connecting. 45 * 46 * @todo using some service to obtain this rather than configuring it would be preferable 47 */ 48 private String password; 49 50 /** 51 * The tag, branch, or equivalent to check out from. 52 */ 53 private String tag; 54 55 /** 56 * The location of the working directory. 57 * 58 * @todo is this a File that is absolute, or is it a relative path under the working directories? How will JAXB 59 * manage? Don't want to store absolute path in the config unless that's what the user configured, so the base 60 * can be relocated. 61 */ 62 private File workingDirectory; 63 64 /** 65 * For SCM clients that support it, use cached credentials on the system to avoid needing to pass them in. 66 * 67 * @todo using some service to obtain them rather than configuring it would be preferable 68 */ 69 private boolean useCredentialsCache; 70 71 /** 72 * What was the last time this checkout was updated. 73 * 74 * @todo we need to improve on the techniques to achieve this 75 */ 76 private Date latestUpdateDate; 77 78 public String getUsername() 79 { 80 return username; 81 } 82 83 public void setUsername( String username ) 84 { 85 this.username = username; 86 } 87 88 public String getPassword() 89 { 90 return password; 91 } 92 93 public void setPassword( String password ) 94 { 95 this.password = password; 96 } 97 98 public String getTag() 99 { 100 return tag; 101 } 102 103 public void setTag( String tag ) 104 { 105 this.tag = tag; 106 } 107 108 public boolean isUseCredentialsCache() 109 { 110 return useCredentialsCache; 111 } 112 113 public void setUseCredentialsCache( boolean useCredentialsCache ) 114 { 115 this.useCredentialsCache = useCredentialsCache; 116 } 117 118 public String getUrl() 119 { 120 return url; 121 } 122 123 public void setUrl( String url ) 124 { 125 this.url = url; 126 } 127 128 public File getWorkingDirectory() 129 { 130 return workingDirectory; 131 } 132 133 public void setWorkingDirectory( File workingDirectory ) 134 { 135 this.workingDirectory = workingDirectory; 136 } 137 138 public Date getLatestUpdateDate() 139 { 140 return latestUpdateDate; 141 } 142 143 public void setLatestUpdateDate( Date latestUpdateDate ) 144 { 145 this.latestUpdateDate = latestUpdateDate; 146 } 147 }