diff options
author | James Moger <james.moger@gitblit.com> | 2012-10-03 09:18:51 -0400 |
---|---|---|
committer | James Moger <james.moger@gitblit.com> | 2012-10-03 09:18:51 -0400 |
commit | e94078b80f2ff1090e62e210baf687d241b32c3a (patch) | |
tree | c03833c733e77a918d141d16e6b0db30832b454f /src/com/gitblit/models | |
parent | 1f52c8b5f123b97fc631465479bc2855c12b9ee3 (diff) | |
download | gitblit-e94078b80f2ff1090e62e210baf687d241b32c3a.tar.gz gitblit-e94078b80f2ff1090e62e210baf687d241b32c3a.zip |
Display entire fork network. Link as appropriate for user permissions.
Diffstat (limited to 'src/com/gitblit/models')
-rw-r--r-- | src/com/gitblit/models/ForkModel.java | 13 | ||||
-rw-r--r-- | src/com/gitblit/models/RepositoryModel.java | 17 | ||||
-rw-r--r-- | src/com/gitblit/models/UserModel.java | 7 |
3 files changed, 29 insertions, 8 deletions
diff --git a/src/com/gitblit/models/ForkModel.java b/src/com/gitblit/models/ForkModel.java index b394396b..849986c1 100644 --- a/src/com/gitblit/models/ForkModel.java +++ b/src/com/gitblit/models/ForkModel.java @@ -32,20 +32,17 @@ public class ForkModel implements Serializable { private static final long serialVersionUID = 1L; - public final String originRepository; - - public final String repository; + public final RepositoryModel repository; public final List<ForkModel> forks; - public ForkModel(String origin, String repository) { - this.originRepository = origin; + public ForkModel(RepositoryModel repository) { this.repository = repository; this.forks = new ArrayList<ForkModel>(); } public boolean isRoot() { - return StringUtils.isEmpty(originRepository); + return StringUtils.isEmpty(repository.originRepository); } public boolean isNode() { @@ -57,7 +54,7 @@ public class ForkModel implements Serializable { } public boolean isPersonalRepository() { - return repository.charAt(0) == '~'; + return repository.isPersonalRepository(); } @Override @@ -75,6 +72,6 @@ public class ForkModel implements Serializable { @Override public String toString() { - return repository; + return repository.toString(); } } diff --git a/src/com/gitblit/models/RepositoryModel.java b/src/com/gitblit/models/RepositoryModel.java index 3148b5b4..a28536d1 100644 --- a/src/com/gitblit/models/RepositoryModel.java +++ b/src/com/gitblit/models/RepositoryModel.java @@ -121,6 +121,19 @@ public class RepositoryModel implements Serializable, Comparable<RepositoryModel public void resetDisplayName() {
displayName = null;
}
+
+ @Override
+ public int hashCode() {
+ return name.hashCode();
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (o instanceof RepositoryModel) {
+ return name.equals(((RepositoryModel) o).name);
+ }
+ return false;
+ }
@Override
public String toString() {
@@ -143,6 +156,10 @@ public class RepositoryModel implements Serializable, Comparable<RepositoryModel return !StringUtils.isEmpty(projectPath) && projectPath.equalsIgnoreCase("~" + username);
}
+ public boolean allowAnonymousView() {
+ return !accessRestriction.atLeast(AccessRestrictionType.VIEW);
+ }
+
public RepositoryModel cloneAs(String cloneName) {
RepositoryModel clone = new RepositoryModel();
clone.originRepository = name;
diff --git a/src/com/gitblit/models/UserModel.java b/src/com/gitblit/models/UserModel.java index 25787a15..7c32a555 100644 --- a/src/com/gitblit/models/UserModel.java +++ b/src/com/gitblit/models/UserModel.java @@ -36,6 +36,8 @@ public class UserModel implements Principal, Serializable, Comparable<UserModel> private static final long serialVersionUID = 1L;
+ public static final UserModel ANONYMOUS = new UserModel("anonymous", false);
+
// field names are reflectively mapped in EditUser page
public String username;
public String password;
@@ -56,6 +58,11 @@ public class UserModel implements Principal, Serializable, Comparable<UserModel> this.isAuthenticated = true;
}
+ private UserModel(String username, boolean authenticated) {
+ this.username = username;
+ this.isAuthenticated = authenticated;
+ }
+
/**
* This method does not take into consideration Ownership where the
* administrator has not explicitly granted access to the owner.
|