renameTo wasn't updating some fields

This commit is contained in:
Kohsuke Kawaguchi
2011-03-16 17:12:22 -07:00
parent f6e7ee3253
commit cffa552ba1
2 changed files with 18 additions and 2 deletions

View File

@@ -33,6 +33,7 @@ import com.gargoylesoftware.htmlunit.html.HtmlInput;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import java.io.IOException;
import java.lang.reflect.Field;
import java.net.URL;
import java.text.ParseException;
import java.text.SimpleDateFormat;
@@ -236,7 +237,18 @@ 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()) {
fi.setAccessible(true);
try {
fi.set(this,fi.get(r));
} catch (IllegalAccessException e) {
throw (IllegalAccessError)new IllegalAccessError().initCause(e);
}
}
return;
} catch (ElementNotFoundException e) {
// continue