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

org.compass.core.mapping.Mapping Maven / Gradle / Ivy

There is a newer version: 2.2.2-ldh
Show newest version
/*
 * Copyright 2004-2009 the original author or authors.
 * 
 * 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.compass.core.mapping;

import org.compass.core.converter.Converter;
import org.compass.core.engine.naming.PropertyPath;

/**
 * A general interface for all things Mapping in compass. Has a name and a path, where the
 * name is usually the "logical name" of the mapping, and the path is the actual name which
 * it will be saved under in the search engine.
 *
 * 

Also provides general support for converters attached to the mappings, which can have * parameters associated with them. * * @author kimchy */ public interface Mapping { /** * The name of the mapping. Acts as the "logical" name of the mapping (think * Java Bean Property name). */ String getName(); /** * Returns the path of the mapping. The path is the value under which it will * be saved in the Search Engine. */ PropertyPath getPath(); /** * Returns the conveter associated with the mapping. The converter is responsible for * marshalling and unmarshalling the Mapping from and to the Search Engine. */ Converter getConverter(); /** * Returns the converter name associated with the Mapping. The conveter name * can be the actual class name of the converter, or a lookup name that has a * converter associated with it. */ String getConverterName(); /** * Returns true if the Mapping controlls the fact that if it has no value, it's * parent might be a candidate for being nullable. */ boolean controlsObjectNullability(); /** * Copies over the mapping definition into a newly instanciated Mapping object. */ Mapping copy(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy