
org.eclipse.persistence.nosql.annotations.JoinField Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of org.eclipse.persistence.nosql Show documentation
Show all versions of org.eclipse.persistence.nosql Show documentation
EclipseLink build based upon Git transaction f627448
/*
* Copyright (c) 2011, 2024 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0,
* or the Eclipse Distribution License v. 1.0 which is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
*/
// Contributors:
// Oracle - initial API and implementation
package org.eclipse.persistence.nosql.annotations;
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Repeatable;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
/**
* Define a structured data type's foreign key field for an object mapped to NoSql data.
* This is a generic form of the JoinColumn annotation, which is not specific to relational databases.
* It can be used to map EIS and NoSQL data.
*
* @see NoSql
* @author James Sutherland
* @since EclipseLink 2.4
*/
@Target({METHOD, FIELD})
@Retention(RUNTIME)
@Repeatable(JoinFields.class)
public @interface JoinField {
/**
* (Optional) The name of the foreign key/id reference field in the source record.
*/
String name() default "";
/**
* (Optional) The name of the id field in the target record.
*/
String referencedFieldName() default "";
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy