Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Licensed to the Apache Software Foundation (ASF) under one
   * or more contributor license agreements.  See the NOTICE file
   * distributed with this work for additional information
   * regarding copyright ownership.  The ASF licenses this file
   * to you 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.apache.tuscany.sca.databinding.impl;
 
 
The base class for a special databinding which represents a group of other databindings

Version:
$Rev: 916888 $ $Date: 2010-02-27 00:44:05 +0000 (Sat, 27 Feb 2010) $
 
 public abstract class GroupDataBinding extends BaseDataBinding {
     public static final String NAME = "databinding:group";

    
Marker type is a java class or interface representing the data format.
 
     protected Class[] markerTypes;
 
     public GroupDataBinding(Class[] types) {
         super(GroupDataBinding.class);
         this. = types;
     }
 
     @SuppressWarnings("unchecked")
     @Override
     public boolean introspect(DataType typeOperation operation) {
         if ( == null) {
             return false;
         }
         Type physical = type.getPhysical();
         if (physical instanceof ParameterizedType) {
             physical = ((ParameterizedType)physical).getRawType();
         }
         if (!(physical instanceof Class)) {
             return false;
         }
         Class cls = (Class)physical;
         for (Class<?> c : ) {
             if (isTypeOf(ccls)) {
                 type.setDataBinding(getDataBinding(c));
                 Object logical = getLogical(clsnull);
                 if (logical != null) {
                     type.setLogical(getLogical(clsnull));
                 } else {
                     type.setLogical(.);
                 }
                 return true;
             }
         }
         return false;
     }

    
Test if the given type is a subtype of the base type

Parameters:
markerType
type
Returns:
 
     protected boolean isTypeOf(Class<?> markerTypeClass<?> type) {
         return markerType.isAssignableFrom(type);
     }

    
Derive the databinding name from a base class

Parameters:
baseType
Returns:
 
     protected String getDataBinding(Class<?> baseType) {
         return baseType.getName();
     }

    
Get the logical type

Parameters:
type The java type
operation TODO
Returns:
    protected abstract Object getLogical(Class<?> typeOperation operation);
New to GrepCode? Check out our FAQ X