All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.castor.xml.BackwardCompatibilityContext Maven / Gradle / Ivy

Go to download

The core XML data binding framework with support for marshalling Java objects to and unmarshalling from XML documents.

There is a newer version: 1.4.1
Show newest version
/*
 * Copyright 2007 Joachim Grueneis
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.castor.xml;

import org.castor.mapping.BindingType;
import org.exolab.castor.xml.ClassDescriptorResolverFactory;
import org.exolab.castor.xml.Introspector;
import org.exolab.castor.xml.XMLClassDescriptorResolver;
import org.exolab.castor.xml.XMLContext;
import org.exolab.castor.xml.util.ResolverStrategy;
import org.exolab.castor.xml.util.resolvers.CastorXMLStrategy;

/**
 * As the name already expresses: this class is there for backward compatibility
 * and should be removed from Castor with a future release.
 * 
 * Normally the internal context is created by XMLContext exclusivly and then
 * handed down the call chain. This very class is used in all cases, which fail
 * to be on a call chain started with {@link XMLContext}.
 * 
 * Ideally, all usage of this class should disappear and be replaced with proper
 * usage of {@link XMLContext}.
 * 
 * @see XMLContext
 * @author Joachim Grueneis, jgrueneis_at_gmail_dot_com
 * @version $Id$
 */
public class BackwardCompatibilityContext extends AbstractInternalContext implements InternalContext {
   /**
    * Initializes InternalContext with default values.
    */
   public BackwardCompatibilityContext() {
      super();
      setClassLoader(getClass().getClassLoader());

      XMLClassDescriptorResolver cdr = (XMLClassDescriptorResolver) ClassDescriptorResolverFactory
            .createClassDescriptorResolver(BindingType.XML);
      cdr.setInternalContext(this);
      setXMLClassDescriptorResolver(cdr);

      Introspector introspector = new Introspector();
      introspector.setInternalContext(this);
      setIntrospector(introspector);
      cdr.setIntrospector(introspector);

      ResolverStrategy resolverStrategy = new CastorXMLStrategy();
      setResolverStrategy(resolverStrategy);
      cdr.setResolverStrategy(resolverStrategy);
   }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy