You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juddi.apache.org by al...@apache.org on 2014/12/07 21:31:46 UTC

[1/2] juddi git commit: JUDDI-241 basic replication now working for business entities

Repository: juddi
Updated Branches:
  refs/heads/JUDDI-241 939ae47f6 -> d53875c0f


JUDDI-241 basic replication now working for business entities


Project: http://git-wip-us.apache.org/repos/asf/juddi/repo
Commit: http://git-wip-us.apache.org/repos/asf/juddi/commit/daf9de25
Tree: http://git-wip-us.apache.org/repos/asf/juddi/tree/daf9de25
Diff: http://git-wip-us.apache.org/repos/asf/juddi/diff/daf9de25

Branch: refs/heads/JUDDI-241
Commit: daf9de25362e6a2d4cda316c23dea5bdaac18b41
Parents: 939ae47
Author: Alex <al...@apache.org>
Authored: Sun Dec 7 15:07:38 2014 -0500
Committer: Alex <al...@apache.org>
Committed: Sun Dec 7 15:07:38 2014 -0500

----------------------------------------------------------------------
 .../juddi/api/impl/UDDIReplicationImpl.java     | 54 ++++++++++++++------
 .../java/org/apache/juddi/config/Property.java  |  2 +-
 .../juddi/validation/ValidatePublish.java       |  8 +++
 3 files changed, 48 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/juddi/blob/daf9de25/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIReplicationImpl.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIReplicationImpl.java b/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIReplicationImpl.java
index 30cfdec..5c3b22c 100644
--- a/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIReplicationImpl.java
+++ b/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIReplicationImpl.java
@@ -16,6 +16,7 @@
  */
 package org.apache.juddi.api.impl;
 
+import java.io.StringWriter;
 import java.math.BigInteger;
 import java.rmi.RemoteException;
 import java.util.ArrayList;
@@ -46,6 +47,7 @@ import org.apache.juddi.config.PersistenceManager;
 import org.apache.juddi.config.Property;
 import org.apache.juddi.mapping.MappingApiToModel;
 import org.apache.juddi.mapping.MappingModelToApi;
+import org.apache.juddi.model.BindingTemplate;
 import org.apache.juddi.model.BusinessEntity;
 import org.apache.juddi.model.BusinessService;
 import org.apache.juddi.model.Operator;
@@ -108,7 +110,7 @@ public class UDDIReplicationImpl extends AuthenticatedService implements UDDIRep
 
         private static PullTimerTask timer = null;
         private long startBuffer = 20000l;//AppConfig.getConfiguration().getLong(Property.JUDDI_NOTIFICATION_START_BUFFER, 20000l); // 20s startup delay default 
-        private long interval = 300000l;// AppConfig.getConfiguration().getLong(Property.JUDDI_NOTIFICATION_INTERVAL, 300000l); //5 min default
+        private long interval = 5000l;// AppConfig.getConfiguration().getLong(Property.JUDDI_NOTIFICATION_INTERVAL, 300000l); //5 min default
 
         private static UDDIPublicationImpl pub = null;
 
@@ -175,7 +177,7 @@ public class UDDIReplicationImpl extends AuthenticatedService implements UDDIRep
                                                 logger.fatal("unable to obtain a replication client to node " + poll.getNotifyingNode());
                                         } else {
                                                 try {
-                                                //get the high water marks for this node
+                                                        //get the high water marks for this node
                                                         //ok now get all the changes
                                                         logger.info("fetching updates on, since ");
                                                         for (int xx = 0; xx < poll.getChangesAvailable().getHighWaterMark().size(); xx++) {
@@ -233,8 +235,10 @@ public class UDDIReplicationImpl extends AuthenticatedService implements UDDIRep
                          * a USN is less than the USN specified in the
                          * changesAlreadySeen highWaterMarkVector.
                          */
-                        logger.info("Remote change request");
-                        JAXB.marshal(rec, System.out);
+                        StringWriter sw = new StringWriter();
+                        JAXB.marshal(rec, sw);
+                        logger.info("_______________________Remote change request " + sw.toString());
+
                         try {
                                 tx.begin();
                                 //the change record rec must also be persisted!!
@@ -300,25 +304,31 @@ public class UDDIReplicationImpl extends AuthenticatedService implements UDDIRep
                                                         } else {
                                                                 ValidateNodeIdMatches(model.getNodeId(), rec.getChangeRecordNewData().getOperationalInfo());
 
-                                                                org.apache.juddi.model.BindingTemplate modelT = new org.apache.juddi.model.BindingTemplate();
-                                                                MappingApiToModel.mapBindingTemplate(rec.getChangeRecordNewData().getBindingTemplate(), modelT, model);
-                                                                MappingApiToModel.mapOperationalInfo(modelT, rec.getChangeRecordNewData().getOperationalInfo());
+                                                               org.apache.juddi.model.BindingTemplate bt= em.find(org.apache.juddi.model.BindingTemplate.class,rec.getChangeRecordNewData().getBindingTemplate().getBindingKey() );
+                                                               if (bt!=null){
+                                                                       em.remove(bt);
+                                                               }
+                                                                bt = new BindingTemplate();
+                                                                MappingApiToModel.mapBindingTemplate(rec.getChangeRecordNewData().getBindingTemplate(), bt, model);
+                                                                MappingApiToModel.mapOperationalInfo(bt, rec.getChangeRecordNewData().getOperationalInfo());
                                                                 // MappingApiToModel.mapOperationalInfoIncludingChildren(model, rec.getChangeRecordNewData().getOperationalInfo());
-                                                                em.persist(model);
+                                                                em.persist(bt);
                                                         }
 
                                                 } else if (rec.getChangeRecordNewData().getBusinessEntity() != null) {
 
                                                         BusinessEntity model = em.find(org.apache.juddi.model.BusinessEntity.class, rec.getChangeRecordNewData().getBusinessEntity().getBusinessKey());
-                                                        if (model == null) {
-                                                                model = new BusinessEntity();
-                                                        } else {
+                                                        if (model != null) {
                                                                 ValidateNodeIdMatches(model.getNodeId(), rec.getChangeRecordNewData().getOperationalInfo());
-                                                        }
+                                                                //TODO revisit access control rules
+                                                                em.remove(model);
+                                                        } 
+                                                        model = new BusinessEntity();
                                                         MappingApiToModel.mapBusinessEntity(rec.getChangeRecordNewData().getBusinessEntity(), model);
-                                                       // MappingApiToModel.mapOperationalInfo(model, rec.getChangeRecordNewData().getOperationalInfo());
+                                                        // MappingApiToModel.mapOperationalInfo(model, rec.getChangeRecordNewData().getOperationalInfo());
 
                                                         MappingApiToModel.mapOperationalInfoIncludingChildren(model, rec.getChangeRecordNewData().getOperationalInfo());
+                                                        logger.warn("Name size on save is " + model.getBusinessNames().size());
                                                         em.persist(model);
 
                                                 }
@@ -327,7 +337,15 @@ public class UDDIReplicationImpl extends AuthenticatedService implements UDDIRep
                                                         if (find == null) {
                                                                 logger.error("Replication error, attempting to insert a service where the business doesn't exist yet");
                                                         } else {
-                                                                org.apache.juddi.model.BusinessService model = new org.apache.juddi.model.BusinessService();
+
+                                                                org.apache.juddi.model.BusinessService model = null;
+                                                                model = em.find(org.apache.juddi.model.BusinessService.class, rec.getChangeRecordNewData().getBusinessService().getServiceKey());
+                                                                if (model != null) {
+                                                                        ValidateNodeIdMatches(model.getNodeId(), rec.getChangeRecordNewData().getOperationalInfo());
+                                                                        em.remove(model);
+                                                                }
+
+                                                                model = new org.apache.juddi.model.BusinessService();
                                                                 MappingApiToModel.mapBusinessService(rec.getChangeRecordNewData().getBusinessService(), model, find);
                                                                 MappingApiToModel.mapOperationalInfo(model, rec.getChangeRecordNewData().getOperationalInfo());
                                                                 MappingApiToModel.mapOperationalInfoIncludingChildren(model, rec.getChangeRecordNewData().getOperationalInfo());
@@ -336,7 +354,13 @@ public class UDDIReplicationImpl extends AuthenticatedService implements UDDIRep
                                                         }
 
                                                 } else if (rec.getChangeRecordNewData().getTModel() != null) {
-                                                        Tmodel model = new Tmodel();
+
+                                                        Tmodel model = em.find(org.apache.juddi.model.Tmodel.class, rec.getChangeRecordNewData().getTModel().getTModelKey());
+                                                        if (model != null) {
+                                                                ValidateNodeIdMatches(model.getNodeId(), rec.getChangeRecordNewData().getOperationalInfo());
+                                                                em.remove(model);
+                                                        }
+                                                        model = new Tmodel();
                                                         MappingApiToModel.mapTModel(rec.getChangeRecordNewData().getTModel(), model);
 
                                                         MappingApiToModel.mapOperationalInfo(model, rec.getChangeRecordNewData().getOperationalInfo());

http://git-wip-us.apache.org/repos/asf/juddi/blob/daf9de25/juddi-core/src/main/java/org/apache/juddi/config/Property.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/config/Property.java b/juddi-core/src/main/java/org/apache/juddi/config/Property.java
index 18d15a6..2960c5c 100644
--- a/juddi-core/src/main/java/org/apache/juddi/config/Property.java
+++ b/juddi-core/src/main/java/org/apache/juddi/config/Property.java
@@ -50,7 +50,7 @@ public interface Property {
      */
     public final static String JUDDI_NODE_ROOT_BUSINESS = "juddi.root.businessId";
     /**
-     * this is the unique identifier of this uddi service provide, primarily used for clustered setups with the replication api
+     * this is the unique identifier of this uddi service provider, primarily used for clustered setups with the replication api
      * JUDDI-645
      */
     public final static String JUDDI_NODE_ID = "juddi.nodeId";

http://git-wip-us.apache.org/repos/asf/juddi/blob/daf9de25/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java b/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java
index 9d02d9c..f3df32f 100644
--- a/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java
+++ b/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java
@@ -115,6 +115,12 @@ public class ValidatePublish extends ValidateUDDIApi {
          */
         private Log log = LogFactory.getLog(this.getClass());
 
+        /**
+         * used from Install class
+         * @param publisher
+         * @param nodeid 
+         * @see Install
+         */
         public ValidatePublish(UddiEntityPublisher publisher, String nodeid) {
                 super(publisher, nodeid);
         }
@@ -278,10 +284,12 @@ public class ValidatePublish extends ValidateUDDIApi {
 
         private void AccessCheck(Object obj, String entityKey) throws UserMismatchException {
                 boolean accessCheck = false; //assume access denied
+                //TODO revisit access control rules in a replicated environment
                 if (publisher.isOwner((UddiEntity) obj)) {
                         accessCheck = true;
 
                 }
+                //if i'm an admin, let me edit stuff on this node, but only stuff that's owned by this node
                 if (((Publisher) publisher).isAdmin()
                      && nodeID.equals(((UddiEntity) obj).getNodeId())) {
                         accessCheck = true;


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@juddi.apache.org
For additional commands, e-mail: commits-help@juddi.apache.org


[2/2] juddi git commit: JUDDI-892 fixed links for both nav bars (juddiv3/admin and juddi-gui and for juddiv3/index.html. Fix is pending svn commit to cms-site

Posted by al...@apache.org.
JUDDI-892 fixed links for both nav bars (juddiv3/admin and juddi-gui and for juddiv3/index.html. Fix is pending svn commit to cms-site


Project: http://git-wip-us.apache.org/repos/asf/juddi/repo
Commit: http://git-wip-us.apache.org/repos/asf/juddi/commit/d53875c0
Tree: http://git-wip-us.apache.org/repos/asf/juddi/tree/d53875c0
Diff: http://git-wip-us.apache.org/repos/asf/juddi/diff/d53875c0

Branch: refs/heads/JUDDI-241
Commit: d53875c0f4eef6309be45cd60a38a59eb761c4ac
Parents: daf9de2
Author: Alex <al...@apache.org>
Authored: Sun Dec 7 15:31:32 2014 -0500
Committer: Alex <al...@apache.org>
Committed: Sun Dec 7 15:31:32 2014 -0500

----------------------------------------------------------------------
 juddi-gui/src/main/webapp/header-top.jsp         |  4 ++--
 juddiv3-war/src/main/webapp/admin/header-top.jsp |  8 +++-----
 juddiv3-war/src/main/webapp/index.jsp            | 10 ++++------
 3 files changed, 9 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/juddi/blob/d53875c0/juddi-gui/src/main/webapp/header-top.jsp
----------------------------------------------------------------------
diff --git a/juddi-gui/src/main/webapp/header-top.jsp b/juddi-gui/src/main/webapp/header-top.jsp
index d6a8ab1..e7b8ee8 100644
--- a/juddi-gui/src/main/webapp/header-top.jsp
+++ b/juddi-gui/src/main/webapp/header-top.jsp
@@ -249,8 +249,8 @@
                                                                                 <li><a href="http://wiki.apache.org/juddi" title="<%=ResourceLoader.GetResource(session, "navbar.help.wiki")%>"><%=ResourceLoader.GetResource(session, "navbar.help.wiki")%></a></li>
                                                                                 <li><a href="http://juddi.apache.org/issue-tracking.html" title="<%=ResourceLoader.GetResource(session, "navbar.help.bugreport")%>"><%=ResourceLoader.GetResource(session, "navbar.help.bugreport")%></a></li>
                                                                                 <li><a href="http://juddi.apache.org/" title="<%=ResourceLoader.GetResource(session, "navbar.help.website")%>"><%=ResourceLoader.GetResource(session, "navbar.help.website")%></a></li>
-                                                                                <li><a href="http://mail-archives.apache.org/mod_mbox/juddi-user/" title="<%=ResourceLoader.GetResource(session, "navbar.help.mailinglist")%>"><%=ResourceLoader.GetResource(session, "navbar.help.mailinglist")%></a></li>
-                                                                                <li><a href="http://svn.apache.org/viewvc/juddi/" title="<%=ResourceLoader.GetResource(session, "navbar.help.source")%>"><%=ResourceLoader.GetResource(session, "navbar.help.source")%></a></li>
+                                                                                <li><a href="http://juddi.apache.org/mailing-list.html" title="<%=ResourceLoader.GetResource(session, "navbar.help.mailinglist")%>"><%=ResourceLoader.GetResource(session, "navbar.help.mailinglist")%></a></li>
+                                                                                <li><a href="http://juddi.apache.org/source.html" title="<%=ResourceLoader.GetResource(session, "navbar.help.source")%>"><%=ResourceLoader.GetResource(session, "navbar.help.source")%></a></li>
                                                                                 <li><a href="about.jsp" title="<%=ResourceLoader.GetResource(session, "navbar.help.about.tooltip")%>"><%=ResourceLoader.GetResource(session, "navbar.help.about")%></a></li>
 
                                                                         </ul>

http://git-wip-us.apache.org/repos/asf/juddi/blob/d53875c0/juddiv3-war/src/main/webapp/admin/header-top.jsp
----------------------------------------------------------------------
diff --git a/juddiv3-war/src/main/webapp/admin/header-top.jsp b/juddiv3-war/src/main/webapp/admin/header-top.jsp
index 4a730cf..4b455bc 100644
--- a/juddiv3-war/src/main/webapp/admin/header-top.jsp
+++ b/juddiv3-war/src/main/webapp/admin/header-top.jsp
@@ -117,14 +117,12 @@
 
                                 <li class="dropdown"><a href="#" data-toggle="dropdown" class="dropdowb-town"><i class="icon-question-sign icon-large"></i><%=ResourceLoader.GetResource(session, "navbar.help")%> <b class="caret"></b></a>
                                     <ul class="dropdown-menu">
-                                       <li><a href="http://juddi.apache.org/docs/3.x/userguide/html/index.html" title="<%=ResourceLoader.GetResource(session, "navbar.help.userguide")%>"><%=ResourceLoader.GetResource(session, "navbar.help.userguide")%></a></li>
-                                        <li><a href="http://juddi.apache.org/docs/3.x/devguide/html/index.html" title="<%=ResourceLoader.GetResource(session, "navbar.help.devguide")%>"><%=ResourceLoader.GetResource(session, "navbar.help.devguide")%></a></li>
-                                        <li><a href="http://juddi.apache.org/docs.html" title="<%=ResourceLoader.GetResource(session, "navbar.help.api")%>"><%=ResourceLoader.GetResource(session, "navbar.help.api")%></a></li>
+                                         <li><a href="http://juddi.apache.org/docs.html" title="<%=ResourceLoader.GetResource(session, "navbar.help.userguide")%>"><%=ResourceLoader.GetResource(session, "navbar.help.userguide")%></a></li>
                                         <li><a href="http://wiki.apache.org/juddi" title="<%=ResourceLoader.GetResource(session, "navbar.help.wiki")%>"><%=ResourceLoader.GetResource(session, "navbar.help.wiki")%></a></li>
                                         <li><a href="http://juddi.apache.org/issue-tracking.html" title="<%=ResourceLoader.GetResource(session, "navbar.help.bugreport")%>"><%=ResourceLoader.GetResource(session, "navbar.help.bugreport")%></a></li>
                                         <li><a href="http://juddi.apache.org/" title="<%=ResourceLoader.GetResource(session, "navbar.help.website")%>"><%=ResourceLoader.GetResource(session, "navbar.help.website")%></a></li>
-                                        <li><a href="http://mail-archives.apache.org/mod_mbox/juddi-user/" title="<%=ResourceLoader.GetResource(session, "navbar.help.mailinglist")%>"><%=ResourceLoader.GetResource(session, "navbar.help.mailinglist")%></a></li>
-                                        <li><a href="http://svn.apache.org/viewvc/juddi/" title="<%=ResourceLoader.GetResource(session, "navbar.help.source")%>"><%=ResourceLoader.GetResource(session, "navbar.help.source")%></a></li>
+                                        <li><a href="http://juddi.apache.org/mailing-list.html" title="<%=ResourceLoader.GetResource(session, "navbar.help.mailinglist")%>"><%=ResourceLoader.GetResource(session, "navbar.help.mailinglist")%></a></li>
+                                        <li><a href="http://juddi.apache.org/source.html" title="<%=ResourceLoader.GetResource(session, "navbar.help.source")%>"><%=ResourceLoader.GetResource(session, "navbar.help.source")%></a></li>
                                         <li><a href="about.jsp" title="<%=ResourceLoader.GetResource(session, "navbar.help.about.tooltip")%>"><%=ResourceLoader.GetResource(session, "navbar.help.about")%></a></li>
                                     </ul>
                                 </li>

http://git-wip-us.apache.org/repos/asf/juddi/blob/d53875c0/juddiv3-war/src/main/webapp/index.jsp
----------------------------------------------------------------------
diff --git a/juddiv3-war/src/main/webapp/index.jsp b/juddiv3-war/src/main/webapp/index.jsp
index 649049b..1874cc1 100644
--- a/juddiv3-war/src/main/webapp/index.jsp
+++ b/juddiv3-war/src/main/webapp/index.jsp
@@ -38,14 +38,12 @@
         Here's some useful links to learn more about the UDDI and jUDDI.
         <ul>
             <li><a href="services">View the service listing on this UDDI node</a></li>
-            <li><a href="http://juddi.apache.org/">Visit</a> the Apache-jUDDI Home Page</li>
-            <li><a href="http://juddi.apache.org/docs/3.x/userguide/html/index.html">jUDDI Users Guide</a></li>
-            <li><a href="http://juddi.apache.org/docs/3.x/devguide/html/index.html" >jUDDI Developers Guide</a></li>
-            <li><a href="http://juddi.apache.org/docs.html" >jUDDI API Documentation</a></li>
+            <li><a href="http://juddi.apache.org/">The Apache-jUDDI Home Page</a></li>
+            <li><a href="http://juddi.apache.org/docs.html" >Documentation</a></li>
             <li><a href="http://wiki.apache.org/juddi" >jUDDI Wiki</a></li>
             <li><a href="http://juddi.apache.org/issue-tracking.html" >jUDDI's Issue Tracker (report a bug)</a></li>
-            <li><a href="http://svn.apache.org/viewvc/juddi/" >jUDDI's Source Code</a></li>
-            <li><a href="http://www.nabble.com/jUDDI-f218.html">jUDDI's Mailing lists</a></li>
+            <li><a href="http://juddi.apache.org/source.html" >jUDDI's Source Code</a></li>
+            <li><a href="http://juddi.apache.org/mailing-list.html">jUDDI's Mailing lists</a></li>
 
         </ul>
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@juddi.apache.org
For additional commands, e-mail: commits-help@juddi.apache.org