[jboss-cvs] JBossBlog SVN: r235 - in trunk: src/action/org/jboss/blog/session/security/external and 6 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Mar 3 11:36:04 EST 2008
Author: adamw
Date: 2008-03-03 11:36:04 -0500 (Mon, 03 Mar 2008)
New Revision: 235
Modified:
trunk/src/action/org/jboss/blog/session/security/Authenticator.java
trunk/src/action/org/jboss/blog/session/security/SecurityGroupConverter.java
trunk/src/action/org/jboss/blog/session/security/SecurityUserConverter.java
trunk/src/action/org/jboss/blog/session/security/external/DummyExternalSecurityService.java
trunk/src/model/org/jboss/blog/model/security/RestrictedSecurityGroup.java
trunk/src/model/org/jboss/blog/model/security/RestrictedSecurityUser.java
trunk/src/model/org/jboss/blog/model/security/SecurityGroup.java
trunk/src/model/org/jboss/blog/model/security/SecurityUser.java
trunk/src/portal/org/jboss/blog/session/security/external/PortalExternalSecurityService.java
trunk/src/shotoku/org/jboss/blog/session/feed/mod/ShotokuModBean.java
trunk/src/shotoku/org/jboss/blog/session/shotoku/ShotokuFeedService.java
trunk/view/layout/menu.xhtml
trunk/view/manage/shotoku/shotoku_mod.xhtml
Log:
Modified: trunk/src/action/org/jboss/blog/session/security/Authenticator.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/security/Authenticator.java 2008-03-03 13:05:35 UTC (rev 234)
+++ trunk/src/action/org/jboss/blog/session/security/Authenticator.java 2008-03-03 16:36:04 UTC (rev 235)
@@ -1,9 +1,7 @@
package org.jboss.blog.session.security;
import org.jboss.seam.annotations.In;
-import org.jboss.seam.annotations.Logger;
import org.jboss.seam.annotations.Name;
-import org.jboss.seam.log.Log;
import org.jboss.blog.model.security.SecurityUser;
import org.jboss.blog.model.security.SecurityGroup;
import org.jboss.blog.model.security.SecurityMapping;
@@ -13,9 +11,6 @@
@Name("authenticator")
public class Authenticator {
- @Logger
- private Log log;
-
@In
private FeedsIdentity identity;
Modified: trunk/src/action/org/jboss/blog/session/security/SecurityGroupConverter.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/security/SecurityGroupConverter.java 2008-03-03 13:05:35 UTC (rev 234)
+++ trunk/src/action/org/jboss/blog/session/security/SecurityGroupConverter.java 2008-03-03 16:36:04 UTC (rev 235)
@@ -19,10 +19,10 @@
public class SecurityGroupConverter implements javax.faces.convert.Converter {
@Transactional
public Object getAsObject(FacesContext context, UIComponent cmp, String value) {
- return new SecurityGroup(null, Long.parseLong(value));
+ return new SecurityGroup(null, value);
}
public String getAsString(FacesContext context, UIComponent cmp, Object value) {
- return ((RestrictedSecurityGroup) value).getExternalId().toString();
+ return ((RestrictedSecurityGroup) value).getExternalId();
}
}
Modified: trunk/src/action/org/jboss/blog/session/security/SecurityUserConverter.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/security/SecurityUserConverter.java 2008-03-03 13:05:35 UTC (rev 234)
+++ trunk/src/action/org/jboss/blog/session/security/SecurityUserConverter.java 2008-03-03 16:36:04 UTC (rev 235)
@@ -19,10 +19,10 @@
public class SecurityUserConverter implements javax.faces.convert.Converter {
@Transactional
public Object getAsObject(FacesContext context, UIComponent cmp, String value) {
- return new SecurityUser(null, Long.parseLong(value));
+ return new SecurityUser(null, value);
}
public String getAsString(FacesContext context, UIComponent cmp, Object value) {
- return ((RestrictedSecurityUser) value).getExternalId().toString();
+ return ((RestrictedSecurityUser) value).getExternalId();
}
}
\ No newline at end of file
Modified: trunk/src/action/org/jboss/blog/session/security/external/DummyExternalSecurityService.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/security/external/DummyExternalSecurityService.java 2008-03-03 13:05:35 UTC (rev 234)
+++ trunk/src/action/org/jboss/blog/session/security/external/DummyExternalSecurityService.java 2008-03-03 16:36:04 UTC (rev 235)
@@ -29,25 +29,25 @@
public SecurityUser authenticate(String username, String password) throws InvalidLoginException {
SecurityUser user = new SecurityUser();
- user.setExternalId(Long.parseLong(username));
+ user.setExternalId(username);
return getUnrestrictedSecurityUser(user);
}
public List<? extends RestrictedSecurityGroup> getAllGroups() {
List<RestrictedSecurityGroup> groups = new ArrayList<RestrictedSecurityGroup>();
- groups.add(new SecurityGroup("group1", 1l));
- groups.add(new SecurityGroup("group2", 2l));
- groups.add(new SecurityGroup("group3", 3l));
+ groups.add(new SecurityGroup("group1", "1"));
+ groups.add(new SecurityGroup("group2", "2"));
+ groups.add(new SecurityGroup("group3", "3"));
return groups;
}
public List<? extends RestrictedSecurityUser> getAllUsers() {
List<RestrictedSecurityUser> users = new ArrayList<RestrictedSecurityUser>();
- users.add(new SecurityUser("1", 1l));
- users.add(new SecurityUser("2", 2l));
- users.add(new SecurityUser("2", 3l));
+ users.add(new SecurityUser("1", "1"));
+ users.add(new SecurityUser("2", "2"));
+ users.add(new SecurityUser("2", "3"));
return users;
}
@@ -61,7 +61,7 @@
}
public String getDisplayName(RestrictedSecurityUser securityUser) {
- return securityUser.getExternalId().toString();
+ return securityUser.getExternalId();
}
public String getDisplayName(RestrictedSecurityGroup securityGroup) {
Modified: trunk/src/model/org/jboss/blog/model/security/RestrictedSecurityGroup.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/security/RestrictedSecurityGroup.java 2008-03-03 13:05:35 UTC (rev 234)
+++ trunk/src/model/org/jboss/blog/model/security/RestrictedSecurityGroup.java 2008-03-03 16:36:04 UTC (rev 235)
@@ -6,7 +6,7 @@
* @author <a href="mailto:adam at warski.org">Adam Warski</a>
*/
public interface RestrictedSecurityGroup extends Serializable {
- Long getExternalId();
+ String getExternalId();
Object getRealGroup();
Modified: trunk/src/model/org/jboss/blog/model/security/RestrictedSecurityUser.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/security/RestrictedSecurityUser.java 2008-03-03 13:05:35 UTC (rev 234)
+++ trunk/src/model/org/jboss/blog/model/security/RestrictedSecurityUser.java 2008-03-03 16:36:04 UTC (rev 235)
@@ -4,7 +4,7 @@
* @author <a href="mailto:adam at warski.org">Adam Warski</a>
*/
public interface RestrictedSecurityUser {
- Long getExternalId();
+ String getExternalId();
Object getRealUser();
Modified: trunk/src/model/org/jboss/blog/model/security/SecurityGroup.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/security/SecurityGroup.java 2008-03-03 13:05:35 UTC (rev 234)
+++ trunk/src/model/org/jboss/blog/model/security/SecurityGroup.java 2008-03-03 16:36:04 UTC (rev 235)
@@ -14,7 +14,7 @@
private Integer id;
@Column(unique = true)
- private Long externalId;
+ private String externalId;
@ManyToMany(mappedBy = "groups")
private List<SecurityMapping> mappings;
@@ -24,7 +24,7 @@
public SecurityGroup() { }
- public SecurityGroup(Object realGroup, Long externalId) {
+ public SecurityGroup(Object realGroup, String externalId) {
this.realGroup = realGroup;
this.externalId = externalId;
}
@@ -37,11 +37,11 @@
this.id = id;
}
- public Long getExternalId() {
+ public String getExternalId() {
return externalId;
}
- public void setExternalId(Long externalId) {
+ public void setExternalId(String externalId) {
this.externalId = externalId;
}
Modified: trunk/src/model/org/jboss/blog/model/security/SecurityUser.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/security/SecurityUser.java 2008-03-03 13:05:35 UTC (rev 234)
+++ trunk/src/model/org/jboss/blog/model/security/SecurityUser.java 2008-03-03 16:36:04 UTC (rev 235)
@@ -17,7 +17,7 @@
@Column
@NotNull
- private Long externalId;
+ private String externalId;
@ManyToMany(mappedBy = "users")
private List<SecurityMapping> mappings;
@@ -27,7 +27,7 @@
public SecurityUser() { }
- public SecurityUser(Object realUser, Long externalId) {
+ public SecurityUser(Object realUser, String externalId) {
this.externalId = externalId;
this.realUser = realUser;
}
@@ -40,11 +40,11 @@
this.id = id;
}
- public Long getExternalId() {
+ public String getExternalId() {
return externalId;
}
- public void setExternalId(Long externalId) {
+ public void setExternalId(String externalId) {
this.externalId = externalId;
}
Modified: trunk/src/portal/org/jboss/blog/session/security/external/PortalExternalSecurityService.java
===================================================================
--- trunk/src/portal/org/jboss/blog/session/security/external/PortalExternalSecurityService.java 2008-03-03 13:05:35 UTC (rev 234)
+++ trunk/src/portal/org/jboss/blog/session/security/external/PortalExternalSecurityService.java 2008-03-03 16:36:04 UTC (rev 235)
@@ -12,7 +12,6 @@
import org.jboss.portal.identity.Role;
import javax.persistence.EntityManager;
-import javax.persistence.NoResultException;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import java.util.List;
@@ -63,21 +62,31 @@
}
}
- private List<SecurityGroup> convertRoles(Set<Role> roles) {
+ private List<SecurityGroup> convertRoles(Set<Role> roles, boolean getUnrestricted) {
List<SecurityGroup> securityGroups = new ArrayList<SecurityGroup>();
for (Role role : roles) {
- securityGroups.add(new SecurityGroup(role, (Long) role.getId()));
+ SecurityGroup securityGroup = new SecurityGroup(role, role.getId().toString());
+ if (getUnrestricted) {
+ securityGroups.add(getUnrestrictedSecurityGroup(securityGroup));
+ } else {
+ securityGroups.add(securityGroup);
+ }
}
return securityGroups;
}
- private List<SecurityUser> convertUsers(Set<User> users) {
+ private List<SecurityUser> convertUsers(Set<User> users, boolean getUnrestricted) {
List<SecurityUser> securityUsers = new ArrayList<SecurityUser>();
for (User user : users) {
- securityUsers.add(new SecurityUser(user, (Long) user.getId()));
+ SecurityUser securityUser = new SecurityUser(user, user.getId().toString());
+ if (getUnrestricted) {
+ securityUsers.add(getUnrestrictedSecurityUser(securityUser));
+ } else {
+ securityUsers.add(securityUser);
+ }
}
return securityUsers;
@@ -115,44 +124,6 @@
}
}
- public SecurityGroup getUnrestrictedSecurityGroup(RestrictedSecurityGroup securityGroup) {
- try {
- SecurityGroup entitySg = (SecurityGroup) entityManager.createQuery(
- "select sg from SecurityGroup sg where sg.externalId = ?1")
- .setParameter(1, securityGroup.getExternalId()).getSingleResult();
- entitySg.setRealGroup(securityGroup.getRealGroup());
-
- return entitySg;
- } catch (NoResultException e) {
- SecurityGroup sg = new SecurityGroup();
- sg.setExternalId(securityGroup.getExternalId());
- sg.setRealGroup(securityGroup.getRealGroup());
-
- entityManager.persist(sg);
-
- return sg;
- }
- }
-
- public SecurityUser getUnrestrictedSecurityUser(RestrictedSecurityUser securityUser) {
- try {
- SecurityUser entitySu = (SecurityUser) entityManager.createQuery(
- "select su from SecurityUser su where su.externalId = ?1")
- .setParameter(1, securityUser.getExternalId()).getSingleResult();
- entitySu.setRealUser(securityUser.getRealUser());
-
- return entitySu;
- } catch (NoResultException e) {
- SecurityUser su = new SecurityUser();
- su.setExternalId(securityUser.getExternalId());
- su.setRealUser(securityUser.getRealUser());
-
- entityManager.persist(su);
-
- return su;
- }
- }
-
public SecurityUser authenticate(String username, String password) throws InvalidLoginException {
try {
User user = getUserModule().findUserByUserName(username);
@@ -162,7 +133,7 @@
}
SecurityUser securityUser = new SecurityUser();
- securityUser.setExternalId((Long) user.getId());
+ securityUser.setExternalId(user.getId().toString());
securityUser.setRealUser(user);
return getUnrestrictedSecurityUser(securityUser);
@@ -180,7 +151,7 @@
public List<? extends RestrictedSecurityGroup> getAllGroups() {
try {
//noinspection unchecked
- return convertRoles((Set<Role>) getRoleModule().findRoles());
+ return convertRoles((Set<Role>) getRoleModule().findRoles(), false);
} catch (IdentityException e) {
log.error(e);
return new ArrayList<RestrictedSecurityGroup>();
@@ -194,7 +165,7 @@
try {
// TODO - users count
//noinspection unchecked
- return convertUsers((Set<User>) getUserModule().findUsers(0, 100000));
+ return convertUsers((Set<User>) getUserModule().findUsers(0, 100000), false);
} catch (NoSuchUserException e) {
return new ArrayList<RestrictedSecurityUser>();
} catch (IdentityException e) {
@@ -209,7 +180,7 @@
public List<SecurityGroup> getGroupsOfUser(SecurityUser securityUser) {
try {
//noinspection unchecked
- return convertRoles((Set<Role>) getMembershipModule().getRoles(getRealUser(securityUser)));
+ return convertRoles((Set<Role>) getMembershipModule().getRoles(getRealUser(securityUser)), true);
} catch (NoSuchUserException e) {
return new ArrayList<SecurityGroup>();
} catch (IdentityException e) {
Modified: trunk/src/shotoku/org/jboss/blog/session/feed/mod/ShotokuModBean.java
===================================================================
--- trunk/src/shotoku/org/jboss/blog/session/feed/mod/ShotokuModBean.java 2008-03-03 13:05:35 UTC (rev 234)
+++ trunk/src/shotoku/org/jboss/blog/session/feed/mod/ShotokuModBean.java 2008-03-03 16:36:04 UTC (rev 235)
@@ -42,7 +42,7 @@
private ShotokuFeed shotokuFeed;
- private boolean podcast;
+ private Boolean podcast;
private boolean pathOk;
private Exception pathException;
@@ -84,7 +84,11 @@
this.pathException = pathException;
}
- public boolean isPodcast() {
+ public boolean isPodcast() throws InvalidFeedTypeException {
+ if (podcast == null) {
+ podcast = getShotokuFeed().getPodcastPrefix() != null;
+ }
+
return podcast;
}
@@ -116,6 +120,8 @@
@Restrict("#{identity.hasPermission('feed', 'edit', feedMod.feed, feedMod.feed.group)}")
public void saveExisting() throws InvalidFeedTypeException {
+ shotokuFeedService.refreshEnclosureLinks(getShotokuFeed());
+
entityManager.flush();
facesMessages.addFromResourceBundle(FacesMessage.SEVERITY_INFO, "blog.feed.updated",
Modified: trunk/src/shotoku/org/jboss/blog/session/shotoku/ShotokuFeedService.java
===================================================================
--- trunk/src/shotoku/org/jboss/blog/session/shotoku/ShotokuFeedService.java 2008-03-03 13:05:35 UTC (rev 234)
+++ trunk/src/shotoku/org/jboss/blog/session/shotoku/ShotokuFeedService.java 2008-03-03 16:36:04 UTC (rev 235)
@@ -31,6 +31,24 @@
@In
private LinkService linkService;
+ private void setEnclosureUrl(ShotokuFeed feed, Enclosure enclosure, String nodeName) {
+ enclosure.setUrl(linkService.getServerAddress() + '/' + feed.getPodcastPrefix() + '/' + nodeName);
+ }
+
+ public void refreshEnclosureLinks(ShotokuFeed feed) {
+ for (Post post : feed.getPosts()) {
+ for (Enclosure enclosure : post.getEnclosures()) {
+ String currentUrl = enclosure.getUrl();
+ if (currentUrl != null) {
+ int lastSlash = currentUrl.lastIndexOf('/');
+ if ((lastSlash != -1) && (lastSlash != currentUrl.length()-1)) {
+ setEnclosureUrl(feed, enclosure, currentUrl.substring(lastSlash+1));
+ }
+ }
+ }
+ }
+ }
+
public List<Post> getPosts(ShotokuFeed feed) throws RepositoryException, PostContentTooLargeException {
ContentManager cm = ContentManager.getContentManager(feed.getCmId(), feed.getCmPath());
@@ -59,9 +77,9 @@
if (!StringTools.isEmpty(feed.getPodcastPrefix())) {
post.setContent(node.getProperty("description"));
- post.getEnclosures().add(new Enclosure(post,
- linkService.getServerAddress() + '/' + feed.getPodcastPrefix() + '/' + node.getName(),
- node.getLength(), node.getMimeType()));
+ Enclosure enclosure = new Enclosure(post, null, node.getLength(), node.getMimeType());
+ setEnclosureUrl(feed, enclosure, node.getName());
+ post.getEnclosures().add(enclosure);
String thumbnail = node.getProperty("thumbnail");
if (!StringTools.isEmpty(thumbnail)) {
Modified: trunk/view/layout/menu.xhtml
===================================================================
--- trunk/view/layout/menu.xhtml 2008-03-03 13:05:35 UTC (rev 234)
+++ trunk/view/layout/menu.xhtml 2008-03-03 16:36:04 UTC (rev 235)
@@ -47,7 +47,7 @@
<a href="/">JBoss.ORG</a>
</li>
<li>
- <s:link view="/home.xhtml" value="Feeds home" propagation="none" />
+ <s:link view="/home.xhtml" value="Feeds central home" propagation="none" />
</li>
<s:fragment rendered="#{identity.hasPermission('management', 'view')}">
<li>
Modified: trunk/view/manage/shotoku/shotoku_mod.xhtml
===================================================================
--- trunk/view/manage/shotoku/shotoku_mod.xhtml 2008-03-03 13:05:35 UTC (rev 234)
+++ trunk/view/manage/shotoku/shotoku_mod.xhtml 2008-03-03 16:36:04 UTC (rev 235)
@@ -75,7 +75,7 @@
<h:outputLabel>This is a podcast:</h:outputLabel>
<h:panelGroup>
<h:selectBooleanCheckbox id="podcast" value="#{shotokuFeedMod.podcast}" required="true">
- <a:support event="onchange" reRender="podcastPrefix,podcastPrefixRequired" ajaxSingle="true"
+ <a:support event="onchange" reRender="podcastPrefix" ajaxSingle="true"
bypassUpdates="false"/>
<s:validate />
</h:selectBooleanCheckbox>
More information about the jboss-cvs-commits
mailing list