Compare commits

...

5 Commits

Author SHA1 Message Date
Kohsuke Kawaguchi
b953d0c831 [maven-release-plugin] prepare release github-api-1.7 2011-05-28 15:25:37 +02:00
Kohsuke Kawaguchi
ecb71006d8 ignore static fields 2011-03-16 22:03:55 -07:00
Kohsuke Kawaguchi
cffa552ba1 renameTo wasn't updating some fields 2011-03-16 17:12:22 -07:00
Kohsuke Kawaguchi
f6e7ee3253 Merge commit 'github-api-1.6' 2011-03-15 19:11:01 -07:00
Kohsuke Kawaguchi
ab2d0cebaf [maven-release-plugin] prepare for next development iteration 2011-03-15 19:03:49 -07:00
3 changed files with 21 additions and 3 deletions

View File

@@ -3,7 +3,7 @@
<groupId>org.kohsuke</groupId>
<artifactId>github-api</artifactId>
<packaging>jar</packaging>
<version>1.6</version>
<version>1.7</version>
<name>GitHub API for Java</name>
<url>http://kohsuke.org/github-api/</url>
<description>GitHub API for Java</description>

View File

@@ -43,11 +43,15 @@ public abstract class GHPerson {
*/
protected GHRepository refreshRepository(String name) throws IOException {
if (repositories==null) getRepositories(); // fetch the base first
GHRepository r = root.retrieve("/repos/show/" + login + '/' + name, JsonRepository.class).wrap(root);
GHRepository r = fetchRepository(name);
repositories.put(name,r);
return r;
}
protected GHRepository fetchRepository(String name) throws IOException {
return root.retrieve("/repos/show/" + login + '/' + name, JsonRepository.class).wrap(root);
}
public GHRepository getRepository(String name) throws IOException {
return getRepositories().get(name);
}

View File

@@ -33,6 +33,8 @@ import com.gargoylesoftware.htmlunit.html.HtmlInput;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import java.io.IOException;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.net.URL;
import java.text.ParseException;
import java.text.SimpleDateFormat;
@@ -236,7 +238,19 @@ public class GHRepository {
try {
f.getInputByName("name").setValueAttribute(newName);
f.submit((HtmlButton)f.getElementsByTagName("button").get(0));
name = newName;
// overwrite fields
final GHRepository r = getOwner().fetchRepository(newName);
for (Field fi : getClass().getDeclaredFields()) {
if (Modifier.isStatic(fi.getModifiers())) continue;
fi.setAccessible(true);
try {
fi.set(this,fi.get(r));
} catch (IllegalAccessException e) {
throw (IllegalAccessError)new IllegalAccessError().initCause(e);
}
}
return;
} catch (ElementNotFoundException e) {
// continue