[Design of AOP on JBoss (Aspects/JBoss)] - Re: Dynamic AOP API
by flavia.rainone@jboss.com
Yes, the DBO is a nice idea. The handle is not only needed for removal, but also for binding updates.
I think we should also provide some sort of dynamic AOP transaction, useful for two reasons:
performance: it is faster to perform a single dynamic AOP operation than two or three (think about caller pointcuts, and about hot swap)
| consistency: if two aspects work only together, the user won't want to risk having one of them enabled for a few ms without the other one. Other scenario that would need this is when a set of aspects is to be removed, so they can be replaced by a second set of aspects. The user won't want to risk running the joinpoints without aspects, nor with the two sets of aspects at the same time.
|
|
| This way, the user has an option of opening a transaction, indicating that all operations inside it will be performed in an atomic way, assuring consistency:
| DynamicAOP.start();
| | DynamicAOP.add(dbo1, dbo2, dbo3);
| | DynamicAOP.remove(oldDbo1.getHandle(), oldDbo2.getHandle(), oldDbo3.getHandle());
| | DynamicAOP.commit();
|
| If, on the other hand, the user does not start a transaction, each operation will be an atomic unit:
| DynamicAOP.add(dbo1, dbo2, dbo3);
| | DynamicAOP.remove(oldDbo1.getHandle(), oldDbo2.getHandle(), oldDbo3.getHandle());
|
| Naturally, the start and commit methods could have better names, I just haven't come up with a nice idea for them.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4166496#4166496
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4166496
17 years, 8 months
[Design of POJO Server] - Re: [jboss-metadata] Determine packaging structure from JBos
by ALRubinger
After we release jboss-metadata 1.0.0.Beta31, I'll put the following patch into AS. This doesn't account for WARs at the moment, but should keep things moving forward.
Index: server/src/main/org/jboss/deployment/MappedReferenceMetaDataResolverDeployer.java
| ===================================================================
| --- server/src/main/org/jboss/deployment/MappedReferenceMetaDataResolverDeployer.java (revision 76161)
| +++ server/src/main/org/jboss/deployment/MappedReferenceMetaDataResolverDeployer.java (working copy)
| @@ -49,6 +49,7 @@
| import org.jboss.metadata.ejb.jboss.jndipolicy.spi.DeploymentSummary;
| import org.jboss.metadata.ejb.jboss.jndipolicy.spi.EjbDeploymentSummary;
| import org.jboss.metadata.ejb.jboss.jndipolicy.spi.KnownInterfaces;
| +import org.jboss.metadata.ejb.jboss.jndipolicy.spi.PackagingType;
| import org.jboss.metadata.ejb.spec.BusinessLocalsMetaData;
| import org.jboss.metadata.ejb.spec.BusinessRemotesMetaData;
| import org.jboss.metadata.javaee.spec.AnnotatedEJBReferenceMetaData;
| @@ -1160,6 +1161,25 @@
| }
| dSummary.setDeploymentScopeBaseName(baseName);
|
| + /*
| + * Determine the packaging type (JAR or EAR, Standalone File not
| + * supported by this deployer)
| + */
| +
| + // Initialize to JAR
| + PackagingType packagingType = PackagingType.JAR;
| +
| + // Determine if EAR
| + boolean isEar = unit != unit.getTopLevel();
| + if(isEar)
| + {
| + packagingType = PackagingType.EAR;
| + }
| +
| + // Set type
| + dSummary.setPackagingType(packagingType);
| +
| + // Return
| return dSummary;
| }
|
S,
ALR
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4166494#4166494
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4166494
17 years, 8 months