Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.jst.j2ee.core/j2ee-validation/org/eclipse/jst/j2ee/model/internal/validation/AbstractEJBValidator.java')
-rw-r--r--plugins/org.eclipse.jst.j2ee.core/j2ee-validation/org/eclipse/jst/j2ee/model/internal/validation/AbstractEJBValidator.java342
1 files changed, 0 insertions, 342 deletions
diff --git a/plugins/org.eclipse.jst.j2ee.core/j2ee-validation/org/eclipse/jst/j2ee/model/internal/validation/AbstractEJBValidator.java b/plugins/org.eclipse.jst.j2ee.core/j2ee-validation/org/eclipse/jst/j2ee/model/internal/validation/AbstractEJBValidator.java
deleted file mode 100644
index d6aeeea60..000000000
--- a/plugins/org.eclipse.jst.j2ee.core/j2ee-validation/org/eclipse/jst/j2ee/model/internal/validation/AbstractEJBValidator.java
+++ /dev/null
@@ -1,342 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Nov 24, 2003
- *
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.jst.j2ee.model.internal.validation;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-import java.util.Vector;
-import java.util.logging.Level;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.validation.ValidationState;
-import org.eclipse.wst.validation.internal.core.ValidationException;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-import org.eclipse.wst.validation.internal.provisional.core.IValidationContext;
-import org.eclipse.wst.validation.internal.provisional.core.IValidatorExtender;
-/**
- * @author vijayb
- *
- * To change the template for this generated type comment go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-public abstract class AbstractEJBValidator extends J2EEValidator implements IValidatorExtender {
- protected Map _validated = null;
- /**
- *
- */
- public AbstractEJBValidator() {
- super();
- _validated = new HashMap();
- }
-
- private Map getValidatedMap(){
- if( _validated == null ){
- _validated = new HashMap();
- }
- return _validated;
- }
-
- protected void logMissingRule(IEJBValidationContext vc, Object ruleId) {
- Logger logger = vc.getMsgLogger();
- if (logger != null && logger.isLoggingLevel(Level.SEVERE)) {
- logger.write(Level.SEVERE, ruleId + " = null"); //$NON-NLS-1$
- }
- addInternalErrorMessage(vc);
- }
- protected void addInternalErrorMessage(IEJBValidationContext vc) {
- addInternalErrorMessage(vc, null);
- }
-
- protected void addInternalErrorMessage(IEJBValidationContext vc, Throwable exc) {
- IMessage mssg = vc.getMessage();
- mssg.setId(internalErrorMessage());
- vc.addMessage(mssg);
- if(exc != null) {
- Logger logger = vc.getMsgLogger();
- if (logger != null && logger.isLoggingLevel(Level.SEVERE)) {
- logger.write(Level.SEVERE, exc);
- }
- }
- }
-
- protected Map removeOldMessages(IEJBValidationContext vc,Map targets) throws ValidationException {
- if(vc.getURIs() == null) {
- // Full validation
- vc.removeAllMessages(); // Remove messages from the EJBJar.
- vc.loadModel(removeOldMessagesString(), new Object[]{vc.getReporter(), null}); // Remove messages from any EJB client JAR files or Java Utility JAR files.
- return null;
- }
- preRemoveOldMessages(vc,targets); // Get the list of targets to be validated, and remove messages from all of them.
-
- // Remove the messages from all of the changed files and their dependents.
- vc.loadModel(removeOldMessagesString(), new Object[]{vc.getReporter(), targets});
- return targets;
- }
- /**
- * @param vc
- * @param delta
- * @param targets
- */
- protected void preRemoveOldMessages(IEJBValidationContext vc,Map targets) throws ValidationException {
- //Default
- }
- /**
- * @return
- */
- protected String removeOldMessagesString() {
- return null;
- }
- /**
- * @return
- */
- private String internalErrorMessage() {
- return null;
- }
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.wst.validation.internal.core.core.IValidator#validate(org.eclipse.wst.validation.internal.core.core.IHelper,
- * org.eclipse.wst.validation.internal.core.core.IReporter,
- * org.eclipse.wst.validation.internal.core.core.IFileDelta[])
- */
- @Override
- public void validate(IValidationContext helper, IReporter reporter) throws ValidationException {
- //Default
- super.validate(helper, reporter);
- }
-
- public void run(IValidationRule rule, Object targetParent, Object target) throws ValidationException {
- if(isValidated(rule.getId(), targetParent, target)) {
- // Whether or not this is a full or incremental run, don't revalidate this target
- // if it has already been validated. (e.g. if a class is used by more than one bean,
- // and say one bean is stateless and one is stateful, and everything else about the
- // beans are identical, don't validate that class again.)
- return;
- }
-
- try {
- rule.preValidate(getValidationContext(), targetParent, target);
- rule.validate(getValidationContext(), targetParent, target);
- rule.postValidate(getValidationContext(), targetParent, target);
- }
- catch(ValidationCancelledException exc) {
- // Clean up the messages which are on the task list? Or is it nicer to leave them behind?
- }
- catch(ValidationException e) {
- throw e;
- }
- catch(Throwable exc) {
- addInternalErrorMessage(getValidationContext(), exc);
- }
- finally {
- setValidated(rule.getId(), targetParent, target);
- releaseRules(rule);
- }
- }
-
- /**
- * @param rule
- */
- protected abstract void releaseRules(IValidationRule rule);
-
- private IEJBValidationContext _vc = null;
-
- protected IEJBValidationContext getValidationContext() {
- return _vc;
- }
- protected void setValidationContext(IEJBValidationContext vc) {
- _vc = vc;
- }
-
- /**
- * This class is public only for the EJBHelper.
- */
- public class TargetObject {
- private Object _parent = null;
- private Object _target = null;
-
- public TargetObject() {
- //Default
- }
-
- public Object getTargetParent() {
- return _parent;
- }
-
- public Object getTarget() {
- return _target;
- }
-
- public void setTargetParent(Object tp) {
- _parent = tp;
- }
-
- public void setTarget(Object t) {
- _target = t;
- }
-
- @Override
- public int hashCode() {
- int parent = (getTargetParent() == null) ? 0 : getTargetParent().hashCode();
- int target = (getTarget() == null) ? 0 : getTarget().hashCode();
- return parent + target;
- }
-
- @Override
- public boolean equals(Object o) {
- if(o == null) {
- return false;
- }
-
- if(this == o) {
- return true;
- }
-
- if(!(o instanceof TargetObject)) {
- return false;
- }
-
- Object thisParent = this.getTargetParent();
- Object oParent = ((TargetObject)o).getTargetParent();
- Object thisTarget = this.getTarget();
- Object oTarget = ((TargetObject)o).getTarget();
-
- if((thisParent == null) && (oParent == null)) {
- // check target
- }
- else if((thisParent != null) && (oParent != null)) {
- if(thisParent.equals(oParent)) {
- // check target
- }
- else {
- return false;
- }
- }
- else {
- return false;
- }
-
- if((thisTarget == null) && (oTarget == null)) {
- return true;
- }
- else if((thisTarget != null) && (oTarget != null)) {
- return (thisTarget.equals(oTarget));
- }
- else {
- return false;
- }
- }
- }
-
-
- public void setValidated(Object key, Object targetParent, Object target) {
- Set done = null;
- if(getValidatedMap().containsKey(key)) {
- done = (Set)getValidatedMap().get(key);
- }
- else {
- done = new HashSet();
- }
-
- done.add(getTargetObjectPool().getTargetObject(targetParent, target));
- getValidatedMap().put(key, done);
- }
-
-
- protected class TargetObjectPool {
- private int _growSize = 0;
- private Vector _pool = null;
-
- public TargetObjectPool(int initialSize) {
- _growSize = initialSize;
- _pool = new Vector(initialSize, _growSize);
- grow();
- }
-
- private void grow() {
- for(int i=0; i<_growSize; i++) {
- _pool.add(new TargetObject());
- }
- }
-
- public TargetObject getTargetObject(Object targetParent, Object target) {
- if(_pool.size() <= 0) {
- grow();
- }
- TargetObject obj = (TargetObject)_pool.remove(0);
- obj.setTargetParent(targetParent);
- obj.setTarget(target);
- return obj;
- }
-
- public void release(TargetObject obj) {
- obj.setTargetParent(null);
- obj.setTarget(null);
- _pool.add(obj);
- }
- }
-
- protected abstract TargetObjectPool getTargetObjectPool();
-
- public boolean isValidated(Object key, Object targetParent, Object target) {
- if(!getValidatedMap().containsKey(key)) {
- return false;
- }
-
-
- Set done = (Set)getValidatedMap().get(key);
- TargetObject temp = getTargetObjectPool().getTargetObject(targetParent, target);
- try {
- if(done.contains(temp)) {
- return true;
- }
-
- return false;
- }
- finally {
- getTargetObjectPool().release(temp);
- }
- }
- @Override
- public void cleanup(IReporter reporter) {
- //cleanup has been moved to the validationFinishing method below. See bugzilla 290581 for details.
- }
-
- public void validationFinishing(IProject project, ValidationState state, IProgressMonitor monitor) {
- if( _validated != null ){
- Iterator iterator = _validated.keySet().iterator();
- while(iterator.hasNext()) {
- Set done = (Set)_validated.get(iterator.next());
- Iterator toIterator = done.iterator();
- while(toIterator.hasNext()) {
- TargetObject to = (TargetObject)toIterator.next();
- getTargetObjectPool().release(to);
- }
- done.clear();
- }
- _validated.clear();
- _validated = null;
- }
- setValidationContext(null);
- }
-
-}

Back to the top