diff options
author | Martin Spielmann <martin.spielmann@pingunaut.com> | 2016-07-29 19:00:46 +0200 |
---|---|---|
committer | Martin Spielmann <martin.spielmann@pingunaut.com> | 2016-07-29 19:00:46 +0200 |
commit | 20f61441ca08ea3136504cb9e55f92929d81226b (patch) | |
tree | 42c59bbbd470495a530b94f445679a42a6667e67 | |
parent | 317c6b79051ff20d71287f2f4d60e7dd63a903df (diff) | |
download | gitblit-20f61441ca08ea3136504cb9e55f92929d81226b.tar.gz gitblit-20f61441ca08ea3136504cb9e55f92929d81226b.zip |
Replaced HeaderContributors by Behaviors and fixed PageParameter methods
20 files changed, 188 insertions, 240 deletions
diff --git a/src/main/java/com/gitblit/wicket/Html5DateField.java b/src/main/java/com/gitblit/wicket/Html5DateField.java index 66b273dd..e606272a 100644 --- a/src/main/java/com/gitblit/wicket/Html5DateField.java +++ b/src/main/java/com/gitblit/wicket/Html5DateField.java @@ -105,8 +105,8 @@ public class Html5DateField extends TextField<Date> implements ITextFormatProvid * @return A pattern-specific converter */ @Override - public IConverter getConverter(Class<?> type) - { + public <C> IConverter<C> getConverter(Class<C> type) { + if (converter == null) { return super.getConverter(type); @@ -148,9 +148,8 @@ public class Html5DateField extends TextField<Date> implements ITextFormatProvid } @Override - protected String getInputType() - { - return "date"; + protected String[] getInputTypes() { + return new String[]{"date"}; } }
\ No newline at end of file diff --git a/src/main/java/com/gitblit/wicket/WicketUtils.java b/src/main/java/com/gitblit/wicket/WicketUtils.java index 9a778291..356b35b6 100644 --- a/src/main/java/com/gitblit/wicket/WicketUtils.java +++ b/src/main/java/com/gitblit/wicket/WicketUtils.java @@ -33,8 +33,9 @@ import org.apache.wicket.request.http.WebRequest; import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.apache.wicket.request.resource.ContextRelativeResource;
import org.apache.wicket.behavior.AttributeAppender;
-import org.apache.wicket.behavior.HeaderContributor;
-import org.apache.wicket.markup.html.IHeaderContributor;
+import org.apache.wicket.behavior.Behavior;
+import org.apache.wicket.markup.head.IHeaderResponse;
+import org.apache.wicket.markup.head.StringHeaderItem;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.image.ContextImage;
import org.apache.wicket.model.Model;
@@ -48,6 +49,7 @@ import com.gitblit.Keys; import com.gitblit.models.FederationModel;
import com.gitblit.models.Metric;
import com.gitblit.utils.DiffUtils.DiffComparator;
+import com.gitblit.utils.GitBlitRequestUtils;
import com.gitblit.utils.HttpUtils;
import com.gitblit.utils.StringUtils;
import com.gitblit.utils.TimeUtils;
@@ -67,8 +69,7 @@ public class WicketUtils { }
public static void setCssBackground(Component container, String value) {
- String background = MessageFormat.format("background-color:{0};",
- StringUtils.getColor(value));
+ String background = MessageFormat.format("background-color:{0};", StringUtils.getColor(value));
container.add(new AttributeModifier("style", background));
}
@@ -174,8 +175,7 @@ public class WicketUtils { return newImage(wicketId, "file_h_16x16.png");
} else if (filename.endsWith(".sln")) {
return newImage(wicketId, "file_vs_16x16.png");
- } else if (filename.endsWith(".csv") || filename.endsWith(".xls")
- || filename.endsWith(".xlsx")) {
+ } else if (filename.endsWith(".csv") || filename.endsWith(".xls") || filename.endsWith(".xlsx")) {
return newImage(wicketId, "file_excel_16x16.png");
} else if (filename.endsWith(".doc") || filename.endsWith(".docx")) {
return newImage(wicketId, "file_doc_16x16.png");
@@ -201,14 +201,11 @@ public class WicketUtils { return newImage(wicketId, "file_16x16.png");
}
- public static ContextImage getRegistrationImage(String wicketId, FederationModel registration,
- Component c) {
+ public static ContextImage getRegistrationImage(String wicketId, FederationModel registration, Component c) {
if (registration.isResultData()) {
- return WicketUtils.newImage(wicketId, "information_16x16.png",
- c.getString("gb.federationResults"));
+ return WicketUtils.newImage(wicketId, "information_16x16.png", c.getString("gb.federationResults"));
} else {
- return WicketUtils.newImage(wicketId, "arrow_left.png",
- c.getString("gb.federationRegistration"));
+ return WicketUtils.newImage(wicketId, "arrow_left.png", c.getString("gb.federationRegistration"));
}
}
@@ -250,17 +247,16 @@ public class WicketUtils { }
public static String getGitblitURL(Request request) {
- HttpServletRequest req = ((WebRequest) request).getHttpServletRequest();
+ HttpServletRequest req = GitBlitRequestUtils.getServletRequest();
return HttpUtils.getGitblitURL(req);
}
- public static HeaderContributor syndicationDiscoveryLink(final String feedTitle,
- final String url) {
- return new HeaderContributor(new IHeaderContributor() {
+ public static Behavior syndicationDiscoveryLink(final String feedTitle, final String url) {
+ return new Behavior() {
private static final long serialVersionUID = 1L;
@Override
- public void renderHead(IHeaderResponse response) {
+ public void renderHead(Component c, IHeaderResponse response) {
String contentType = "application/rss+xml";
StringBuilder buffer = new StringBuilder();
@@ -268,226 +264,154 @@ public class WicketUtils { buffer.append("type=\"").append(contentType).append("\" ");
buffer.append("title=\"").append(feedTitle).append("\" ");
buffer.append("href=\"").append(url).append("\" />");
- response.renderString(buffer.toString());
+ response.render(StringHeaderItem.forString(buffer.toString()));
}
- });
+ };
}
public static PageParameters newTokenParameter(String token) {
- Map<String, String> parameterMap = new HashMap<String, String>();
- parameterMap.put("t", token);
- return new PageParameters(parameterMap);
+ return new PageParameters().add("t", token);
}
- public static PageParameters newRegistrationParameter(String url,
- String name) {
- Map<String, String> parameterMap = new HashMap<String, String>();
- parameterMap.put("u", url);
- parameterMap.put("n", name);
- return new PageParameters(parameterMap);
+ public static PageParameters newRegistrationParameter(String url, String name) {
+ return new PageParameters().add("u", url).add("n", name);
}
public static PageParameters newUsernameParameter(String username) {
- Map<String, String> parameterMap = new HashMap<String, String>();
- parameterMap.put("user", username);
- return new PageParameters(parameterMap);
+ return new PageParameters().add("user", username);
}
public static PageParameters newTeamnameParameter(String teamname) {
- Map<String, String> parameterMap = new HashMap<String, String>();
- parameterMap.put("team", teamname);
- return new PageParameters(parameterMap);
+ return new PageParameters().add("team", teamname);
}
public static PageParameters newProjectParameter(String projectName) {
- Map<String, String> parameterMap = new HashMap<String, String>();
- parameterMap.put("p", projectName);
- return new PageParameters(parameterMap);
+ return new PageParameters().add("p", projectName);
}
public static PageParameters newRepositoryParameter(String repositoryName) {
- Map<String, String> parameterMap = new HashMap<String, String>();
- if (!StringUtils.isEmpty(repositoryName)) {
- parameterMap.put("r", repositoryName);
- }
- return new PageParameters(parameterMap);
+ return new PageParameters().add("r", repositoryName);
}
public static PageParameters newObjectParameter(String objectId) {
- Map<String, String> parameterMap = new HashMap<String, String>();
- parameterMap.put("h", objectId);
- return new PageParameters(parameterMap);
+ return new PageParameters().add("h", objectId);
}
- public static PageParameters newObjectParameter(String repositoryName,
- String objectId) {
- Map<String, String> parameterMap = new HashMap<String, String>();
+ public static PageParameters newObjectParameter(String repositoryName, String objectId) {
if (StringUtils.isEmpty(objectId)) {
return newRepositoryParameter(repositoryName);
}
- parameterMap.put("r", repositoryName);
- parameterMap.put("h", objectId);
- return new PageParameters(parameterMap);
+ return new PageParameters().add("r", repositoryName).add("h", objectId);
}
- public static PageParameters newDiffParameter(String repositoryName,
- String objectId, DiffComparator diffComparator) {
- Map<String, String> parameterMap = new HashMap<String, String>();
+ public static PageParameters newDiffParameter(String repositoryName, String objectId,
+ DiffComparator diffComparator) {
if (StringUtils.isEmpty(objectId)) {
return newRepositoryParameter(repositoryName);
}
- parameterMap.put("r", repositoryName);
- parameterMap.put("h", objectId);
- parameterMap.put("w", "" + diffComparator.ordinal());
- return new PageParameters(parameterMap);
+ return new PageParameters().add("r", repositoryName).add("h", objectId).add("w", "" + diffComparator.ordinal());
}
- public static PageParameters newDiffParameter(String repositoryName,
- String objectId, DiffComparator diffComparator, String blobPath) {
- Map<String, String> parameterMap = new HashMap<String, String>();
+ public static PageParameters newDiffParameter(String repositoryName, String objectId, DiffComparator diffComparator,
+ String blobPath) {
if (StringUtils.isEmpty(objectId)) {
return newRepositoryParameter(repositoryName);
}
- parameterMap.put("r", repositoryName);
- parameterMap.put("h", objectId);
- parameterMap.put("w", "" + diffComparator.ordinal());
- parameterMap.put("f", blobPath);
- return new PageParameters(parameterMap);
+ return newDiffParameter(repositoryName, objectId, diffComparator).add("f", blobPath);
}
- public static PageParameters newRangeParameter(String repositoryName,
- String startRange, String endRange) {
- Map<String, String> parameterMap = new HashMap<String, String>();
- parameterMap.put("r", repositoryName);
- parameterMap.put("h", startRange + ".." + endRange);
- return new PageParameters(parameterMap);
+ public static PageParameters newRangeParameter(String repositoryName, String startRange, String endRange) {
+ return new PageParameters().add("r", repositoryName).add("h", startRange + ".." + endRange);
}
- public static PageParameters newPathParameter(String repositoryName,
- String objectId, String path) {
- Map<String, String> parameterMap = new HashMap<String, String>();
+ public static PageParameters newPathParameter(String repositoryName, String objectId, String path) {
if (StringUtils.isEmpty(path)) {
return newObjectParameter(repositoryName, objectId);
}
if (StringUtils.isEmpty(objectId)) {
- parameterMap.put("r", repositoryName);
- parameterMap.put("f", path);
- return new PageParameters(parameterMap);
+ return new PageParameters().add("r", repositoryName).add("f", path);
}
- parameterMap.put("r", repositoryName);
- parameterMap.put("h", objectId);
- parameterMap.put("f", path);
- return new PageParameters(parameterMap);
+ return new PageParameters().add("r", repositoryName).add("h", objectId).add("f", path);
}
- public static PageParameters newLogPageParameter(String repositoryName,
- String objectId, int pageNumber) {
- Map<String, String> parameterMap = new HashMap<String, String>();
+ public static PageParameters newLogPageParameter(String repositoryName, String objectId, int pageNumber) {
if (pageNumber <= 1) {
return newObjectParameter(repositoryName, objectId);
}
if (StringUtils.isEmpty(objectId)) {
- parameterMap.put("r", repositoryName);
- parameterMap.put("pg", String.valueOf(pageNumber));
- return new PageParameters(parameterMap);
+ return new PageParameters().add("r", repositoryName).add("pg", String.valueOf(pageNumber));
}
- parameterMap.put("r", repositoryName);
- parameterMap.put("h", objectId);
- parameterMap.put("pg", String.valueOf(pageNumber));
- return new PageParameters(parameterMap);
+ return new PageParameters().add("r", repositoryName).add("h", objectId).add("pg", String.valueOf(pageNumber));
}
- public static PageParameters newHistoryPageParameter(String repositoryName,
- String objectId, String path, int pageNumber) {
- Map<String, String> parameterMap = new HashMap<String, String>();
+ public static PageParameters newHistoryPageParameter(String repositoryName, String objectId, String path, int pageNumber) {
if (pageNumber <= 1) {
return newObjectParameter(repositoryName, objectId);
}
- if (StringUtils.isEmpty(objectId)) {
- parameterMap.put("r", repositoryName);
- parameterMap.put("f", path);
- parameterMap.put("pg", String.valueOf(pageNumber));
- return new PageParameters(parameterMap);
+
+ PageParameters pp = new PageParameters();
+ pp.add("r", repositoryName);
+ pp.add("f", path);
+ pp.add("pg", String.valueOf(pageNumber));
+ if (!StringUtils.isEmpty(objectId)) {
+ pp.add("h", objectId);
}
- parameterMap.put("r", repositoryName);
- parameterMap.put("h", objectId);
- parameterMap.put("f", path);
- parameterMap.put("pg", String.valueOf(pageNumber));
- return new PageParameters(parameterMap);
+ return pp;
}
public static PageParameters newFilestorePageParameter(int pageNumber, String filter) {
- Map<String, String> parameterMap = new HashMap<String, String>();
-
+ PageParameters pp = new PageParameters();
if (pageNumber > 1) {
- parameterMap.put("pg", String.valueOf(pageNumber));
+ pp.add("pg", String.valueOf(pageNumber));
}
if (filter != null) {
- parameterMap.put("s", String.valueOf(filter));
+ pp.add("s", String.valueOf(filter));
}
-
- return new PageParameters(parameterMap);
- }
-
- public static PageParameters newBlobDiffParameter(String repositoryName,
- String baseCommitId, String commitId, String path) {
- Map<String, String> parameterMap = new HashMap<String, String>();
- if (StringUtils.isEmpty(commitId)) {
- parameterMap.put("r", repositoryName);
- parameterMap.put("f", path);
- parameterMap.put("hb", baseCommitId);
- return new PageParameters(parameterMap);
- }
- parameterMap.put("r", repositoryName);
- parameterMap.put("h", commitId);
- parameterMap.put("f", path);
- parameterMap.put("hb", baseCommitId);
- return new PageParameters(parameterMap);
- }
-
- public static PageParameters newSearchParameter(String repositoryName,
- String commitId, String search, Constants.SearchType type) {
- Map<String, String> parameterMap = new HashMap<String, String>();
- if (StringUtils.isEmpty(commitId)) {
- parameterMap.put("r", repositoryName);
- parameterMap.put("s", search);
- parameterMap.put("st", type.name());
- return new PageParameters(parameterMap);
- }
- parameterMap.put("r", repositoryName);
- parameterMap.put("h", commitId);
- parameterMap.put("s", search);
- parameterMap.put("st", type.name());
- return new PageParameters(parameterMap);
- }
-
- public static PageParameters newSearchParameter(String repositoryName,
- String commitId, String search, Constants.SearchType type,
- int pageNumber) {
- Map<String, String> parameterMap = new HashMap<String, String>();
- if (StringUtils.isEmpty(commitId)) {
- parameterMap.put("r", repositoryName);
- parameterMap.put("s", search);
- parameterMap.put("st", type.name());
- parameterMap.put("pg", String.valueOf(pageNumber));
- return new PageParameters(parameterMap);
- }
- parameterMap.put("r", repositoryName);
- parameterMap.put("h", commitId);
- parameterMap.put("s", search);
- parameterMap.put("st", type.name());
- parameterMap.put("pg", String.valueOf(pageNumber));
- return new PageParameters(parameterMap);
- }
-
- public static PageParameters newBlameTypeParameter(String repositoryName,
- String commitId, String path, String blameType) {
- Map<String, String> parameterMap = new HashMap<String, String>();
- parameterMap.put("r", repositoryName);
- parameterMap.put("h", commitId);
- parameterMap.put("f", path);
- parameterMap.put("blametype", blameType);
- return new PageParameters(parameterMap);
+
+ return pp;
+ }
+
+ public static PageParameters newBlobDiffParameter(String repositoryName, String baseCommitId, String commitId,
+ String path) {
+ PageParameters pp = new PageParameters();
+ pp.add("r", repositoryName);
+ pp.add("f", path);
+ pp.add("hb", baseCommitId);
+ if (!StringUtils.isEmpty(commitId)) {
+ pp.add("h", commitId);
+ }
+ return pp;
+ }
+
+ public static PageParameters newSearchParameter(String repositoryName, String commitId, String search,
+ Constants.SearchType type) {
+ PageParameters pp = new PageParameters();
+ pp.add("r", repositoryName);
+ pp.add("s", search);
+ pp.add("st", type.name());
+ if (!StringUtils.isEmpty(commitId)) {
+ pp.add("h", commitId);
+ }
+ return pp;
+ }
+
+ public static PageParameters newSearchParameter(String repositoryName, String commitId, String search,
+ Constants.SearchType type, int pageNumber) {
+ PageParameters pp = new PageParameters();
+ pp.add("r", repositoryName);
+ pp.add("s", search);
+ pp.add("st", type.name());
+ pp.add("pg", String.valueOf(pageNumber));
+ if (!StringUtils.isEmpty(commitId)) {
+ pp.add("h", commitId);
+ }
+ return pp;
+ }
+
+ public static PageParameters newBlameTypeParameter(String repositoryName, String commitId, String path,
+ String blameType) {
+ return new PageParameters().add("r", repositoryName).add("h", commitId).add("f", path).add("blametype",
+ blameType);
}
public static PageParameters newTicketsParameters(String repositoryName, String... states) {
@@ -513,27 +437,27 @@ public class WicketUtils { }
public static String getObject(PageParameters params) {
- return params.getString("h", null);
+ return params.get("h").toString(null);
}
public static String getPath(PageParameters params) {
- return params.getString("f", null);
+ return params.get("f").toString(null);
}
public static String getBaseObjectId(PageParameters params) {
- return params.getString("hb", null);
+ return params.get("hb").toString(null);
}
public static String getSearchString(PageParameters params) {
- return params.getString("s", null);
+ return params.get("s").toString(null);
}
public static String getSearchType(PageParameters params) {
- return params.getString("st", null);
+ return params.get("st").toString(null);
}
public static DiffComparator getDiffComparator(PageParameters params) {
- int ordinal = params.getInt("w", 0);
+ int ordinal = params.get("w").toInt(0);
return DiffComparator.values()[ordinal];
}
@@ -543,35 +467,35 @@ public class WicketUtils { }
public static String getRegEx(PageParameters params) {
- return params.getString("x", "");
+ return params.get("x").toString("");
}
public static String getSet(PageParameters params) {
- return params.getString("set", "");
+ return params.get("set").toString("");
}
public static String getTeam(PageParameters params) {
- return params.getString("team", "");
+ return params.get("team").toString("");
}
public static int getDaysBack(PageParameters params) {
- return params.getInt("db", 0);
+ return params.get("db").toInt(0);
}
public static String getUsername(PageParameters params) {
- return params.getString("user", "");
+ return params.get("user").toString("");
}
public static String getTeamname(PageParameters params) {
- return params.getString("team", "");
+ return params.get("team").toString("");
}
public static String getToken(PageParameters params) {
- return params.getString("t", "");
+ return params.get("t").toString("");
}
public static String getUrlParameter(PageParameters params) {
- return params.getString("u", "");
+ return params.get("u").toString("");
}
public static String getNameParameter(PageParameters params) {
@@ -582,7 +506,8 @@ public class WicketUtils { return createDateLabel(wicketId, date, timeZone, timeUtils, true);
}
- public static Label createDateLabel(String wicketId, Date date, TimeZone timeZone, TimeUtils timeUtils, boolean setCss) {
+ public static Label createDateLabel(String wicketId, Date date, TimeZone timeZone, TimeUtils timeUtils,
+ boolean setCss) {
String format = GitBlitWebApp.get().settings().getString(Keys.web.datestampShortFormat, "MM/dd/yy");
DateFormat df = new SimpleDateFormat(format);
if (timeZone == null) {
diff --git a/src/main/java/com/gitblit/wicket/charting/Charts.java b/src/main/java/com/gitblit/wicket/charting/Charts.java index 54a7689b..fa765bbd 100644 --- a/src/main/java/com/gitblit/wicket/charting/Charts.java +++ b/src/main/java/com/gitblit/wicket/charting/Charts.java @@ -18,6 +18,7 @@ package com.gitblit.wicket.charting; import java.util.ArrayList; import java.util.List; +import org.apache.wicket.behavior.Behavior; import org.apache.wicket.markup.html.IHeaderContributor; /** @@ -26,7 +27,7 @@ import org.apache.wicket.markup.html.IHeaderContributor; * @author Tim Ryan * */ -public abstract class Charts implements IHeaderContributor { +public abstract class Charts extends Behavior { private static final long serialVersionUID = 1L; diff --git a/src/main/java/com/gitblit/wicket/charting/Flotr2Charts.java b/src/main/java/com/gitblit/wicket/charting/Flotr2Charts.java index 62bec934..f6b99426 100644 --- a/src/main/java/com/gitblit/wicket/charting/Flotr2Charts.java +++ b/src/main/java/com/gitblit/wicket/charting/Flotr2Charts.java @@ -17,6 +17,7 @@ package com.gitblit.wicket.charting; import javax.servlet.ServletContext; +import org.apache.wicket.Component; import org.apache.wicket.markup.head.IHeaderResponse; import org.apache.wicket.markup.head.JavaScriptHeaderItem; import org.apache.wicket.markup.head.OnDomReadyHeaderItem; @@ -35,7 +36,7 @@ public class Flotr2Charts extends Charts { private static final long serialVersionUID = 1L; @Override - public void renderHead(IHeaderResponse response) { + public void renderHead(Component component, IHeaderResponse response) { // add Google Chart JS API reference ServletContext servletContext = WebApplication.get().getServletContext(); diff --git a/src/main/java/com/gitblit/wicket/ng/NgController.java b/src/main/java/com/gitblit/wicket/ng/NgController.java index ea15dcf2..648a12d9 100644 --- a/src/main/java/com/gitblit/wicket/ng/NgController.java +++ b/src/main/java/com/gitblit/wicket/ng/NgController.java @@ -19,9 +19,10 @@ import java.text.MessageFormat; import java.util.HashMap;
import java.util.Map;
+import org.apache.wicket.Component;
+import org.apache.wicket.behavior.Behavior;
import org.apache.wicket.markup.head.IHeaderResponse;
import org.apache.wicket.markup.head.JavaScriptHeaderItem;
-import org.apache.wicket.markup.html.IHeaderContributor;
import org.apache.wicket.request.resource.PackageResourceReference;
import com.google.gson.Gson;
@@ -35,7 +36,7 @@ import com.google.gson.GsonBuilder; * @author James Moger
*
*/
-public class NgController implements IHeaderContributor {
+public class NgController extends Behavior {
private static final long serialVersionUID = 1L;
@@ -53,7 +54,7 @@ public class NgController implements IHeaderContributor { }
@Override
- public void renderHead(IHeaderResponse response) {
+ public void renderHead(Component component, IHeaderResponse response) {
// add Google AngularJS reference
response.render(JavaScriptHeaderItem.forReference(new PackageResourceReference(NgController.class, "angular.js")));
diff --git a/src/main/java/com/gitblit/wicket/pages/ActivityPage.java b/src/main/java/com/gitblit/wicket/pages/ActivityPage.java index af4e39f7..f7c8ccf1 100644 --- a/src/main/java/com/gitblit/wicket/pages/ActivityPage.java +++ b/src/main/java/com/gitblit/wicket/pages/ActivityPage.java @@ -25,7 +25,6 @@ import java.util.Map; import java.util.Set;
import org.apache.wicket.request.mapper.parameter.PageParameters;
-import org.apache.wicket.behavior.HeaderContributor;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.panel.Fragment;
@@ -118,7 +117,7 @@ public class ActivityPage extends RootPage { // create the activity charts
if (app().settings().getBoolean(Keys.web.generateActivityGraph, true)) {
Charts charts = createCharts(recentActivity);
- add(new HeaderContributor(charts));
+ add(charts);
add(new Fragment("chartsPanel", "chartsFragment", this));
} else {
add(new Label("chartsPanel").setVisible(false));
diff --git a/src/main/java/com/gitblit/wicket/pages/ComparePage.java b/src/main/java/com/gitblit/wicket/pages/ComparePage.java index 910c1467..2d1be64f 100644 --- a/src/main/java/com/gitblit/wicket/pages/ComparePage.java +++ b/src/main/java/com/gitblit/wicket/pages/ComparePage.java @@ -33,7 +33,7 @@ import org.apache.wicket.markup.repeater.data.ListDataProvider; import org.apache.wicket.model.IModel; import org.apache.wicket.model.Model; import org.apache.wicket.protocol.http.RequestUtils; -import org.apache.wicket.request.target.basic.RedirectRequestTarget; +//import org.apache.wicket.request.target.basic.RedirectRequestTarget; import org.eclipse.jgit.diff.DiffEntry.ChangeType; import org.eclipse.jgit.lib.Repository; import org.eclipse.jgit.revwalk.RevCommit; diff --git a/src/main/java/com/gitblit/wicket/pages/DashboardPage.java b/src/main/java/com/gitblit/wicket/pages/DashboardPage.java index 73c6686f..0b247334 100644 --- a/src/main/java/com/gitblit/wicket/pages/DashboardPage.java +++ b/src/main/java/com/gitblit/wicket/pages/DashboardPage.java @@ -29,7 +29,6 @@ import java.util.TimeZone; import java.util.TreeSet;
import org.apache.wicket.request.mapper.parameter.PageParameters;
-import org.apache.wicket.behavior.HeaderContributor;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.panel.Fragment;
import org.eclipse.jgit.lib.Repository;
@@ -240,7 +239,7 @@ public abstract class DashboardPage extends RootPage { chart.setShowLegend(false);
charts.addChart(chart);
- add(new HeaderContributor(charts));
+ add(charts);
frag.add(new Fragment("charts", "chartsFragment", this));
} else {
frag.add(new Label("charts").setVisible(false));
diff --git a/src/main/java/com/gitblit/wicket/pages/EditRepositoryPage.java b/src/main/java/com/gitblit/wicket/pages/EditRepositoryPage.java index ae12d02f..b7b3d817 100644 --- a/src/main/java/com/gitblit/wicket/pages/EditRepositoryPage.java +++ b/src/main/java/com/gitblit/wicket/pages/EditRepositoryPage.java @@ -27,6 +27,7 @@ import java.util.Map; import java.util.Set;
import org.apache.wicket.request.mapper.parameter.PageParameters;
+import org.apache.wicket.AttributeModifier;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.form.AjaxFormChoiceComponentUpdatingBehavior;
import org.apache.wicket.extensions.markup.html.form.palette.Palette;
@@ -775,6 +776,11 @@ public class EditRepositoryPage extends RootSubPage { public String getIdValue(FederationStrategy type, int index) {
return Integer.toString(index);
}
+
+ @Override
+ public FederationStrategy getObject(String id, IModel<? extends List<? extends FederationStrategy>> choices) {
+ return choices.getObject().get(Integer.valueOf(id));
+ }
}
private class GCPeriodRenderer implements IChoiceRenderer<Integer> {
@@ -797,6 +803,11 @@ public class EditRepositoryPage extends RootSubPage { public String getIdValue(Integer value, int index) {
return Integer.toString(index);
}
+
+ @Override
+ public Integer getObject(String id, IModel<? extends List<? extends Integer>> choices) {
+ return choices.getObject().get(Integer.valueOf(id));
+ }
}
private class MaxActivityCommitsRenderer implements IChoiceRenderer<Integer> {
@@ -821,5 +832,10 @@ public class EditRepositoryPage extends RootSubPage { public String getIdValue(Integer value, int index) {
return Integer.toString(index);
}
+
+ @Override
+ public Integer getObject(String id, IModel<? extends List<? extends Integer>> choices) {
+ return choices.getObject().get(Integer.valueOf(id));
+ }
}
}
diff --git a/src/main/java/com/gitblit/wicket/pages/MetricsPage.java b/src/main/java/com/gitblit/wicket/pages/MetricsPage.java index 630e38fe..bf8a474a 100644 --- a/src/main/java/com/gitblit/wicket/pages/MetricsPage.java +++ b/src/main/java/com/gitblit/wicket/pages/MetricsPage.java @@ -26,7 +26,6 @@ import java.util.Date; import java.util.List;
import org.apache.wicket.request.mapper.parameter.PageParameters;
-import org.apache.wicket.behavior.HeaderContributor;
import org.apache.wicket.markup.html.basic.Label;
import org.eclipse.jgit.lib.Repository;
@@ -72,7 +71,7 @@ public class MetricsPage extends RepositoryPage { createBarChart(charts, "dayOfWeekChart", getDayOfWeekMetrics(r, objectId));
createPieChart(charts, "authorsChart", getAuthorMetrics(r, objectId));
- add(new HeaderContributor(charts));
+ add(charts);
}
diff --git a/src/main/java/com/gitblit/wicket/pages/OverviewPage.java b/src/main/java/com/gitblit/wicket/pages/OverviewPage.java index d9dd10fa..4ec54691 100644 --- a/src/main/java/com/gitblit/wicket/pages/OverviewPage.java +++ b/src/main/java/com/gitblit/wicket/pages/OverviewPage.java @@ -20,7 +20,6 @@ import java.util.ArrayList; import java.util.List;
import org.apache.wicket.request.mapper.parameter.PageParameters;
-import org.apache.wicket.behavior.HeaderContributor;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.BookmarkablePageLink;
import org.apache.wicket.markup.repeater.Item;
@@ -147,7 +146,7 @@ public class OverviewPage extends RepositoryPage { chart.setHeight(150);
charts.addChart(chart);
- add(new HeaderContributor(charts));
+ add(charts);
}
}
}
diff --git a/src/main/java/com/gitblit/wicket/pages/RepositoryPage.java b/src/main/java/com/gitblit/wicket/pages/RepositoryPage.java index c484e074..d351bc70 100644 --- a/src/main/java/com/gitblit/wicket/pages/RepositoryPage.java +++ b/src/main/java/com/gitblit/wicket/pages/RepositoryPage.java @@ -37,7 +37,7 @@ import org.apache.wicket.markup.html.link.ExternalLink; import org.apache.wicket.markup.html.panel.Fragment;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
-import org.apache.wicket.request.target.basic.RedirectRequestTarget;
+//import org.apache.wicket.request.target.basic.RedirectRequestTarget;
import org.eclipse.jgit.diff.DiffEntry.ChangeType;
import org.eclipse.jgit.lib.PersonIdent;
import org.eclipse.jgit.lib.Repository;
diff --git a/src/main/java/com/gitblit/wicket/pages/RootPage.java b/src/main/java/com/gitblit/wicket/pages/RootPage.java index 9a28a1f7..08c4e30b 100644 --- a/src/main/java/com/gitblit/wicket/pages/RootPage.java +++ b/src/main/java/com/gitblit/wicket/pages/RootPage.java @@ -34,12 +34,14 @@ import java.util.regex.Pattern; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.wicket.Component; import org.apache.wicket.MarkupContainer; +import org.apache.wicket.behavior.Behavior; import org.apache.wicket.request.cycle.RequestCycle; import org.apache.wicket.request.http.WebRequest; import org.apache.wicket.request.http.WebResponse; import org.apache.wicket.request.mapper.parameter.PageParameters; -import org.apache.wicket.behavior.HeaderContributor; +import org.apache.wicket.markup.head.CssHeaderItem; import org.apache.wicket.markup.head.IHeaderResponse; import org.apache.wicket.markup.html.IHeaderContributor; import org.apache.wicket.markup.html.basic.Label; @@ -68,6 +70,7 @@ import com.gitblit.models.NavLink.PageNavLink; import com.gitblit.models.RepositoryModel; import com.gitblit.models.TeamModel; import com.gitblit.models.UserModel; +import com.gitblit.utils.GitBlitRequestUtils; import com.gitblit.utils.ModelUtils; import com.gitblit.utils.StringUtils; import com.gitblit.wicket.GitBlitWebSession; @@ -78,6 +81,8 @@ import com.gitblit.wicket.panels.AvatarImage; import com.gitblit.wicket.panels.LinkPanel; import com.gitblit.wicket.panels.NavigationPanel; +import de.akquinet.devops.GitBlitServer4UITests; + /** * Root page is a topbar, navigable page like Repositories, Users, or * Federation. @@ -105,13 +110,13 @@ public abstract class RootPage extends BasePage { protected void setupPage(String repositoryName, String pageName) { // CSS header overrides - add(new HeaderContributor(new IHeaderContributor() { + add(new Behavior() { private static final long serialVersionUID = 1L; @Override - public void renderHead(IHeaderResponse response) { + public void renderHead(Component component, IHeaderResponse response) { StringBuilder buffer = new StringBuilder(); - buffer.append("<style type=\"text/css\">\n"); +// buffer.append("<style type=\"text/css\">\n"); buffer.append(".navbar-inner {\n"); final String headerBackground = app().settings().getString(Keys.web.headerBackgroundColor, null); if (!StringUtils.isEmpty(headerBackground)) { @@ -143,10 +148,10 @@ public abstract class RootPage extends BasePage { buffer.append(MessageFormat.format("color: {0} !important;\n", headerHover)); buffer.append("}\n"); } - buffer.append("</style>\n"); - response.renderString(buffer.toString()); +// buffer.append("</style>\n"); + response.render(CssHeaderItem.forCSS(buffer.toString(), "rootCss")); } - })); + }); boolean authenticateView = app().settings().getBoolean(Keys.web.authenticateViewPages, false); boolean authenticateAdmin = app().settings().getBoolean(Keys.web.authenticateAdminPages, true); @@ -255,8 +260,8 @@ public abstract class RootPage extends BasePage { params.remove("user"); // remove days back parameter if it is the default value - if (params.containsKey("db") - && params.getInt("db") == app().settings().getInteger(Keys.web.activityDuration, 7)) { + if (!params.get("db").isEmpty() + && params.get("db").toInt() == app().settings().getInteger(Keys.web.activityDuration, 7)) { params.remove("db"); } return params; @@ -271,8 +276,8 @@ public abstract class RootPage extends BasePage { private void loginUser(UserModel user) { if (user != null) { - HttpServletRequest request = ((WebRequest) getRequest()).getHttpServletRequest(); - HttpServletResponse response = ((WebResponse) getResponse()).getHttpServletResponse(); + HttpServletRequest request = GitBlitRequestUtils.getServletRequest(); + HttpServletResponse response = GitBlitRequestUtils.getServletResponse(); // Set the user into the session GitBlitWebSession session = GitBlitWebSession.get(); @@ -281,8 +286,8 @@ public abstract class RootPage extends BasePage { session.replaceSession(); session.setUser(user); - request = ((WebRequest) getRequest()).getHttpServletRequest(); - response = ((WebResponse) getResponse()).getHttpServletResponse(); + request = GitBlitRequestUtils.getServletRequest(); + response = GitBlitRequestUtils.getServletResponse(); request.getSession().setAttribute(Constants.ATTRIB_AUTHTYPE, AuthenticationType.CREDENTIALS); // Set Cookie @@ -569,7 +574,7 @@ public abstract class RootPage extends BasePage { String username = RootPage.this.username.getObject(); char[] password = RootPage.this.password.getObject().toCharArray(); - HttpServletRequest request = ((WebRequest)RequestCycle.get().getRequest()).getHttpServletRequest(); + HttpServletRequest request = GitBlitRequestUtils.getServletRequest(); UserModel user = app().authentication().authenticate(username, password, request.getRemoteAddr()); if (user == null) { @@ -613,7 +618,7 @@ public abstract class RootPage extends BasePage { GitBlitWebSession session = GitBlitWebSession.get(); UserModel user = session.getUser(); boolean editCredentials = app().authentication().supportsCredentialChanges(user); - HttpServletRequest request = ((WebRequest) getRequest()).getHttpServletRequest(); + HttpServletRequest request = GitBlitRequestUtils.getServletRequest(); AuthenticationType authenticationType = (AuthenticationType) request.getAttribute(Constants.ATTRIB_AUTHTYPE); boolean standardLogin = (null != authenticationType) ? authenticationType.isStandard() : true; diff --git a/src/main/java/com/gitblit/wicket/pages/SummaryPage.java b/src/main/java/com/gitblit/wicket/pages/SummaryPage.java index adf3026f..43f9c450 100644 --- a/src/main/java/com/gitblit/wicket/pages/SummaryPage.java +++ b/src/main/java/com/gitblit/wicket/pages/SummaryPage.java @@ -24,7 +24,6 @@ import java.util.List; import org.apache.wicket.Component;
import org.apache.wicket.request.mapper.parameter.PageParameters;
-import org.apache.wicket.behavior.HeaderContributor;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.BookmarkablePageLink;
import org.apache.wicket.markup.html.panel.Fragment;
@@ -160,7 +159,7 @@ public class SummaryPage extends RepositoryPage { add(new Label("commitsChart").setVisible(false));
} else {
Charts charts = createCharts(metrics);
- add(new HeaderContributor(charts));
+ add(charts);
}
}
diff --git a/src/main/java/com/gitblit/wicket/panels/BasePanel.java b/src/main/java/com/gitblit/wicket/panels/BasePanel.java index 73f8e471..0f136ffd 100644 --- a/src/main/java/com/gitblit/wicket/panels/BasePanel.java +++ b/src/main/java/com/gitblit/wicket/panels/BasePanel.java @@ -90,7 +90,7 @@ public abstract class BasePanel extends Panel { private static final long serialVersionUID = 1L;
public JavascriptEventConfirmation(String event, String msg) {
- super(event, true, new Model<String>(msg));
+ super(event, new Model<String>(msg));
}
@Override
@@ -112,7 +112,7 @@ public abstract class BasePanel extends Panel { private String initialValue = "";
public JavascriptTextPrompt(String event, String msg, String value) {
- super(event, true, new Model<String>(msg));
+ super(event, new Model<String>(msg));
initialValue = value;
}
diff --git a/src/main/java/com/gitblit/wicket/panels/FilterableProjectList.java b/src/main/java/com/gitblit/wicket/panels/FilterableProjectList.java index 3a269a93..952fba34 100644 --- a/src/main/java/com/gitblit/wicket/panels/FilterableProjectList.java +++ b/src/main/java/com/gitblit/wicket/panels/FilterableProjectList.java @@ -26,7 +26,6 @@ import java.util.HashMap; import java.util.List;
import java.util.Map;
-import org.apache.wicket.behavior.HeaderContributor;
import org.apache.wicket.markup.html.basic.Label;
import com.gitblit.Keys;
@@ -121,7 +120,7 @@ public class FilterableProjectList extends BasePanel { // inject an AngularJS controller with static data
NgController ctrl = new NgController(ngCtrl);
ctrl.addVariable(ngList, list);
- add(new HeaderContributor(ctrl));
+ add(ctrl);
}
protected class ProjectListItem implements Serializable {
diff --git a/src/main/java/com/gitblit/wicket/panels/FilterableRepositoryList.java b/src/main/java/com/gitblit/wicket/panels/FilterableRepositoryList.java index e4ce5ced..bf97d4f1 100644 --- a/src/main/java/com/gitblit/wicket/panels/FilterableRepositoryList.java +++ b/src/main/java/com/gitblit/wicket/panels/FilterableRepositoryList.java @@ -24,7 +24,6 @@ import java.util.HashMap; import java.util.List;
import java.util.Map;
-import org.apache.wicket.behavior.HeaderContributor;
import org.apache.wicket.markup.html.basic.Label;
import com.gitblit.Keys;
@@ -140,7 +139,7 @@ public class FilterableRepositoryList extends BasePanel { // inject an AngularJS controller with static data
NgController ctrl = new NgController(ngCtrl);
ctrl.addVariable(ngList, list);
- add(new HeaderContributor(ctrl));
+ add(ctrl);
}
protected class RepoListItem implements Serializable {
diff --git a/src/main/java/com/gitblit/wicket/panels/ObjectContainer.java b/src/main/java/com/gitblit/wicket/panels/ObjectContainer.java index e26673e4..63f7b210 100644 --- a/src/main/java/com/gitblit/wicket/panels/ObjectContainer.java +++ b/src/main/java/com/gitblit/wicket/panels/ObjectContainer.java @@ -19,7 +19,7 @@ package com.gitblit.wicket.panels; import java.util.List;
import org.apache.wicket.Component;
-import org.apache.wicket.ResourceReference;
+//import org.apache.wicket.ResourceReference;
import org.apache.wicket.core.request.ClientInfo;
import org.apache.wicket.markup.ComponentTag;
import org.apache.wicket.markup.MarkupStream;
diff --git a/src/main/java/com/gitblit/wicket/panels/RegistrantPermissionsPanel.java b/src/main/java/com/gitblit/wicket/panels/RegistrantPermissionsPanel.java index f1d7d640..839d80f9 100644 --- a/src/main/java/com/gitblit/wicket/panels/RegistrantPermissionsPanel.java +++ b/src/main/java/com/gitblit/wicket/panels/RegistrantPermissionsPanel.java @@ -312,6 +312,11 @@ public class RegistrantPermissionsPanel extends BasePanel { public String getIdValue(AccessPermission type, int index) { return Integer.toString(index); } + + @Override + public AccessPermission getObject(String id, IModel<? extends List<? extends AccessPermission>> choices) { + return choices.getObject().get(Integer.valueOf(id)); + } } private class ShowStateButton extends AjaxButton { diff --git a/src/main/java/com/gitblit/wicket/panels/RepositoriesPanel.java b/src/main/java/com/gitblit/wicket/panels/RepositoriesPanel.java index e36fcd6e..877e21de 100644 --- a/src/main/java/com/gitblit/wicket/panels/RepositoriesPanel.java +++ b/src/main/java/com/gitblit/wicket/panels/RepositoriesPanel.java @@ -26,6 +26,7 @@ import java.util.Map; import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.apache.wicket.extensions.markup.html.repeater.data.sort.OrderByBorder;
+import org.apache.wicket.extensions.markup.html.repeater.data.sort.SortOrder;
import org.apache.wicket.extensions.markup.html.repeater.util.SortParam;
import org.apache.wicket.extensions.markup.html.repeater.util.SortableDataProvider;
import org.apache.wicket.markup.html.basic.Label;
@@ -307,9 +308,9 @@ public class RepositoriesPanel extends BasePanel { };
add(dataView);
- if (dp instanceof SortableDataProvider<?>) {
+ if (dp instanceof SortableDataProvider<?,?>) {
// add sortable header
- SortableDataProvider<?> sdp = (SortableDataProvider<?>) dp;
+ SortableDataProvider<?,?> sdp = (SortableDataProvider<?,?>) dp;
Fragment fragment = new Fragment("headerContent", "flatRepositoryHeader", this);
fragment.add(newSort("orderByRepository", SortBy.repository, sdp, dataView));
fragment.add(newSort("orderByDescription", SortBy.description, sdp, dataView));
@@ -345,7 +346,7 @@ public class RepositoriesPanel extends BasePanel { repository, description, owner, date;
}
- protected OrderByBorder newSort(String wicketId, SortBy field, SortableDataProvider<?> dp,
+ protected OrderByBorder newSort(String wicketId, SortBy field, SortableDataProvider<?,?> dp,
final DataView<?> dataView) {
return new OrderByBorder(wicketId, field.name(), dp) {
private static final long serialVersionUID = 1L;
@@ -357,7 +358,7 @@ public class RepositoriesPanel extends BasePanel { };
}
- private static class SortableRepositoriesProvider extends SortableDataProvider<RepositoryModel> {
+ private static class SortableRepositoriesProvider extends SortableDataProvider<RepositoryModel, String> {
private static final long serialVersionUID = 1L;
@@ -365,11 +366,11 @@ public class RepositoriesPanel extends BasePanel { protected SortableRepositoriesProvider(List<RepositoryModel> list) {
this.list = list;
- setSort(SortBy.date.name(), false);
+ setSort(SortBy.date.name(), SortOrder.DESCENDING);
}
@Override
- public int size() {
+ public long size() {
if (list == null) {
return 0;
}
@@ -382,8 +383,8 @@ public class RepositoriesPanel extends BasePanel { }
@Override
- public Iterator<RepositoryModel> iterator(int first, int count) {
- SortParam sp = getSort();
+ public Iterator<? extends RepositoryModel> iterator(long first, long count) {
+ SortParam<String> sp = getSort();
String prop = sp.getProperty();
final boolean asc = sp.isAscending();
@@ -430,7 +431,8 @@ public class RepositoriesPanel extends BasePanel { }
});
}
- return list.subList(first, first + count).iterator();
+ return list.subList(Math.toIntExact(first), Math.toIntExact(first + count)).iterator();
}
+
}
}
|