[jboss-cvs] JBossAS SVN: r84467 - in trunk/profileservice/src/main/org/jboss/profileservice/management: upload/remoting and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Feb 19 10:56:42 EST 2009
Author: emuckenhuber
Date: 2009-02-19 10:56:41 -0500 (Thu, 19 Feb 2009)
New Revision: 84467
Modified:
trunk/profileservice/src/main/org/jboss/profileservice/management/ManagementViewImpl.java
trunk/profileservice/src/main/org/jboss/profileservice/management/upload/remoting/AbstractDeployHandler.java
trunk/profileservice/src/main/org/jboss/profileservice/management/upload/remoting/StreamingDeploymentTarget.java
Log:
mostly get rid of the need for an active profile
Modified: trunk/profileservice/src/main/org/jboss/profileservice/management/ManagementViewImpl.java
===================================================================
--- trunk/profileservice/src/main/org/jboss/profileservice/management/ManagementViewImpl.java 2009-02-19 15:50:24 UTC (rev 84466)
+++ trunk/profileservice/src/main/org/jboss/profileservice/management/ManagementViewImpl.java 2009-02-19 15:56:41 UTC (rev 84467)
@@ -142,6 +142,10 @@
private Map<String, ManagedDeployment> bootstrapManagedDeployments = Collections.emptyMap();
/** The ManagedPropertys with unresolved ManagementObjectRefs */
private Map<String, Set<ManagedProperty>> unresolvedRefs = new HashMap<String, Set<ManagedProperty>>();
+
+ @Deprecated
+ private Map<String, ProfileKey> deploymentsToProfile = new HashMap<String, ProfileKey>();
+
/** A map of runtime ManagedObjects needing to be merged with their
* matching ManagedObject.
*/
@@ -184,6 +188,7 @@
* @param key - the profile to load
* @throws NoSuchProfileException
*/
+ @Deprecated
public void loadProfile(ProfileKey key)
throws NoSuchProfileException
{
@@ -191,19 +196,15 @@
throw new IllegalArgumentException("Null profile key.");
// Force reload
- if(activeProfile != null)
+ if(activeProfile == null)
{
- if(activeProfile.getKey().equals(key) == false)
- this.forceReload = true;
+ this.forceReload = true;
}
-
- // If the profile is not modified do nothing
- if(reload() == false)
+ else
{
- log.debug("Not reloading profiles");
- return;
+ if(activeProfile.getKey().equals(key) == false)
+ this.forceReload = true;
}
- this.forceReload = false;
try
{
@@ -216,15 +217,25 @@
String msg = formatter.format(args);
throw new NoSuchProfileException(msg);
}
+
+ // Load the profiles
+ load();
+ }
+
+ public void load()
+ {
+ // If the profile is not modified do nothing
+ if(isReload() == false)
+ {
+ log.debug("Not reloading profiles");
+ return;
+ }
+ this.forceReload = false;
+
// Cleanup
- this.compByCompType.clear();
- this.managedDeployments.clear();
- this.moRegistry.clear();
- this.runtimeMOs.clear();
- this.unresolvedRefs.clear();
- this.lastModified.clear();
+ release();
- // Process the deployments
+ //
boolean trace = log.isTraceEnabled();
// load the profiles
@@ -235,7 +246,7 @@
{
try
{
- processManagedDeployment(md, 0, trace);
+ processManagedDeployment(md, null, 0, trace);
}
catch(Exception e)
{
@@ -246,10 +257,28 @@
log.warn("Failed to merged the following runtime ManagedObjects: "+runtimeMOs);
}
+ public void reload()
+ {
+ forceReload = true;
+ load();
+ }
+
+ public void release()
+ {
+ // Cleanup
+ this.compByCompType.clear();
+ this.managedDeployments.clear();
+ this.moRegistry.clear();
+ this.runtimeMOs.clear();
+ this.unresolvedRefs.clear();
+ this.lastModified.clear();
+ }
+
+ @Deprecated
public void reloadProfile() throws Exception
{
forceReload = true;
- loadProfile(activeProfile.getKey());
+ loadProfile(this.activeProfile.getKey());
}
protected void loadProfiles(boolean trace)
@@ -261,12 +290,13 @@
{
Profile profile = this.ps.getActiveProfile(key);
Collection<ProfileDeployment> deployments = profile.getDeployments();
+ // Process the deployments
for(ProfileDeployment deployment : deployments)
{
try
{
ManagedDeployment md = getManagedDeployment(deployment);
- processManagedDeployment(md, 0, trace);
+ processManagedDeployment(md, key, 0, trace);
}
catch(Exception e)
{
@@ -282,24 +312,20 @@
}
}
- protected boolean reload()
+ protected boolean isReload()
{
if(forceReload == true)
{
forceReload = false;
return true;
}
-
- if(activeProfile == null)
- return true;
-
+
for(ProfileKey key : this.ps.getActiveProfileKeys())
{
try
{
Profile profile = this.ps.getActiveProfile(key);
long lastModified = this.lastModified.get(key);
- log.debug("reload: "+ key + " cached: " + lastModified + " new " + profile.getLastModified());
if(profile.getLastModified() > lastModified)
return true;
}
@@ -312,11 +338,12 @@
* Process managed deployment.
*
* @param md the managed deployment
+ * @param profile the associated profile key
* @param level depth level
* @param trace is trace enabled
* @throws Exception for any error
*/
- protected void processManagedDeployment(ManagedDeployment md, int level, boolean trace) throws Exception
+ protected void processManagedDeployment(ManagedDeployment md, ProfileKey profile, int level, boolean trace) throws Exception
{
String name = md.getName();
if (trace)
@@ -329,6 +356,10 @@
processManagedObject(mo, md);
}
managedDeployments.put(name, md);
+
+ // TODO this mapping should not be needed
+ if(profile != null)
+ deploymentsToProfile.put(name, profile);
// Process children
List<ManagedDeployment> mdChildren = md.getChildren();
@@ -336,7 +367,7 @@
{
for(ManagedDeployment mdChild : mdChildren)
{
- processManagedDeployment(mdChild, level + 1, trace);
+ processManagedDeployment(mdChild, profile, level + 1, trace);
}
}
}
@@ -807,7 +838,7 @@
HashSet<ManagedDeployment> mds = new HashSet<ManagedDeployment>();
for(String name : names)
{
- ProfileDeployment ctx = activeProfile.getDeployment(name);
+ ProfileDeployment ctx = getProfileDeployment(name);
ManagedDeployment md = getManagedDeployment(ctx);
mds.add(md);
}
@@ -1031,7 +1062,7 @@
throws NoSuchProfileException, NoSuchDeploymentException, Exception
{
log.debug("removeDeployment, "+deploymentName+", phase: "+phase);
- ProfileDeployment ctx = activeProfile.removeDeployment(deploymentName);
+ ProfileDeployment ctx = getProfileDeployment(deploymentName);
if( ctx == null )
{
formatter.applyPattern(i18n.getString("ManagementView.NoSuchDeploymentException")); //$NON-NLS-1$
@@ -1098,7 +1129,7 @@
md = md.getParent();
String name = md.getName();
- ProfileDeployment compDeployment = activeProfile.getDeployment(name);
+ ProfileDeployment compDeployment = getProfileDeployment(name);
if( compDeployment == null )
{
formatter.applyPattern(i18n.getString("ManagementView.NoSuchDeploymentException")); //$NON-NLS-1$
@@ -1109,7 +1140,7 @@
// Apply the managed properties to the server ManagedDeployment/ManagedComponent
ManagedDeployment compMD = managedDeployments.get(md.getName());
- log.debug("updateComponent, profile="+activeProfile+", deploymentName="+name+": "+compMD);
+ log.debug("updateComponent, deploymentName="+name+": "+compMD);
ManagedComponent serverComp = null;
// Find the managed component again
@@ -1180,7 +1211,8 @@
// Update the repository deployment attachments
- activeProfile.updateDeployment(compDeployment, serverComp);
+ Profile deploymentProfile = getProfileForDeployment(compDeployment.getName());
+ deploymentProfile.updateDeployment(compDeployment, serverComp);
}
/**
@@ -1416,4 +1448,19 @@
return delegate.getParameters();
}
}
+
+ private Profile getProfileForDeployment(String name) throws Exception
+ {
+ ProfileKey key = this.deploymentsToProfile.get(name);
+ if(key == null)
+ throw new NoSuchDeploymentException("No associated profile found for deployment:" + name);
+
+ return this.ps.getActiveProfile(key);
+ }
+
+ private ProfileDeployment getProfileDeployment(String name) throws Exception
+ {
+ Profile profile = getProfileForDeployment(name);
+ return profile.getDeployment(name);
+ }
}
Modified: trunk/profileservice/src/main/org/jboss/profileservice/management/upload/remoting/AbstractDeployHandler.java
===================================================================
--- trunk/profileservice/src/main/org/jboss/profileservice/management/upload/remoting/AbstractDeployHandler.java 2009-02-19 15:50:24 UTC (rev 84466)
+++ trunk/profileservice/src/main/org/jboss/profileservice/management/upload/remoting/AbstractDeployHandler.java 2009-02-19 15:56:41 UTC (rev 84467)
@@ -135,32 +135,41 @@
Map payload = request.getRequestPayload();
DeploymentID dtID = (DeploymentID) payload.get("DeploymentTargetID");
log.debug("invoke, payload: "+payload+", parameter: "+parameter);
- if( parameter.equals("getRepositoryNames"))
+ try
{
- String[] names = (String[]) payload.get("names");
- returnValue = getRepositoryNames(names);
+ if( parameter.equals("getRepositoryNames"))
+ {
+ String[] names = (String[]) payload.get("names");
+ returnValue = getRepositoryNames(names);
+ }
+ else if( parameter.equals("distribute") )
+ {
+ returnValue = distribute(dtID);
+ }
+ else if( parameter.equals("start") )
+ {
+ start(dtID);
+ }
+ else if( parameter.equals("stop") )
+ {
+ stop(dtID);
+ }
+ else if( parameter.equals("remove"))
+ {
+ remove(dtID);
+ }
+ // Keep for backward compatibility
+ else if( parameter.equals("undeploy") )
+ {
+ remove(dtID);
+ }
}
- else if( parameter.equals("distribute") )
+ catch(DeploymentException ignore) { }
+ catch(Exception e)
{
- returnValue = distribute(dtID);
+ log.warn("Failed to process deployment: " + dtID, e);
}
- else if( parameter.equals("start") )
- {
- start(dtID);
- }
- else if( parameter.equals("stop") )
- {
- stop(dtID);
- }
- else if( parameter.equals("remove"))
- {
- remove(dtID);
- }
- // Keep for backward compatibility
- else if( parameter.equals("undeploy") )
- {
- remove(dtID);
- }
+
}
return returnValue;
}
Modified: trunk/profileservice/src/main/org/jboss/profileservice/management/upload/remoting/StreamingDeploymentTarget.java
===================================================================
--- trunk/profileservice/src/main/org/jboss/profileservice/management/upload/remoting/StreamingDeploymentTarget.java 2009-02-19 15:50:24 UTC (rev 84466)
+++ trunk/profileservice/src/main/org/jboss/profileservice/management/upload/remoting/StreamingDeploymentTarget.java 2009-02-19 15:56:41 UTC (rev 84467)
@@ -201,8 +201,20 @@
/**
* Undeploy a given module
*/
+ @Deprecated
public void undeploy(DeploymentID dtID) throws Exception
{
+ remove(dtID);
+ }
+
+ /**
+ * Remove a given module.
+ *
+ * @param dtID the deployment id
+ * @throws Exception
+ */
+ public void remove(DeploymentID dtID) throws Exception
+ {
Client client = getClient();
try
{
@@ -213,7 +225,7 @@
finally
{
client.disconnect();
- }
+ }
}
public String toString()
More information about the jboss-cvs-commits
mailing list