blob: d8428431e6d0732403b40f84e308d9045d5b033f [file] [log] [blame]
kmoorec6bc0262011-09-14 19:39:22 +00001/*******************************************************************************
2 * Copyright (c) 2011 Oracle. All rights reserved.
3 * This program and the accompanying materials are made available under the
4 * terms of the Eclipse Public License v1.0, which accompanies this distribution
5 * and is available at http://www.eclipse.org/legal/epl-v10.html.
6 *
7 * Contributors:
8 * Oracle - initial API and implementation
9 ******************************************************************************/
kmoore6a7396c2011-10-07 12:53:14 +000010package org.eclipse.jpt.jpa.eclipselink.core.internal.context.orm;
kmoorec6bc0262011-09-14 19:39:22 +000011
12import org.eclipse.jpt.common.core.utility.TextRange;
13import org.eclipse.jpt.common.utility.internal.iterables.EmptyListIterable;
14import org.eclipse.jpt.common.utility.internal.iterables.ListIterable;
15import org.eclipse.jpt.jpa.core.internal.context.orm.AbstractOrmXmlContextNode;
kmoore6a7396c2011-10-07 12:53:14 +000016import org.eclipse.jpt.jpa.eclipselink.core.context.EclipseLinkMultitenantType2_3;
17import org.eclipse.jpt.jpa.eclipselink.core.context.TenantDiscriminatorColumn2_3;
18import org.eclipse.jpt.jpa.eclipselink.core.context.orm.OrmEclipseLinkMultitenancy2_3;
kmoorec6bc0262011-09-14 19:39:22 +000019import org.eclipse.jpt.jpa.eclipselink.core.context.orm.OrmEclipseLinkNonEmbeddableTypeMapping;
kmoore6a7396c2011-10-07 12:53:14 +000020import org.eclipse.jpt.jpa.eclipselink.core.context.orm.OrmReadOnlyTenantDiscriminatorColumn2_3;
21import org.eclipse.jpt.jpa.eclipselink.core.context.orm.OrmTenantDiscriminatorColumn2_3;
22import org.eclipse.jpt.jpa.eclipselink.core.context.orm.OrmVirtualTenantDiscriminatorColumn2_3;
kmoorec6bc0262011-09-14 19:39:22 +000023
kmoore6a7396c2011-10-07 12:53:14 +000024public class NullOrmEclipseLinkMultitenancy2_3
kmoorec6bc0262011-09-14 19:39:22 +000025 extends AbstractOrmXmlContextNode
kmoore6a7396c2011-10-07 12:53:14 +000026 implements OrmEclipseLinkMultitenancy2_3
kmoorec6bc0262011-09-14 19:39:22 +000027{
28
kmoore6a7396c2011-10-07 12:53:14 +000029 public NullOrmEclipseLinkMultitenancy2_3(OrmEclipseLinkNonEmbeddableTypeMapping parent) {
kmoorec6bc0262011-09-14 19:39:22 +000030 super(parent);
31 }
32
kmoore7fe1ca12011-10-04 12:35:33 +000033
34 // ********** multitenant **********
35
36 public boolean isMultitenant() {
37 return false;
38 }
39
40 public boolean isDefaultMultitenant() {
41 return false;
42 }
43
44 public boolean isSpecifiedMultitenant() {
45 return false;
46 }
47
48 public void setSpecifiedMultitenant(boolean isMultitenant) {
49 throw new UnsupportedOperationException("Multitenancy is only supported in EclipseLink version 2.3 and higher"); //$NON-NLS-1$
50 }
51
52
kmoorec6bc0262011-09-14 19:39:22 +000053 // ********** type **********
54
kmoore6a7396c2011-10-07 12:53:14 +000055 public EclipseLinkMultitenantType2_3 getType() {
kmoorec6bc0262011-09-14 19:39:22 +000056 return null;
57 }
58
kmoore6a7396c2011-10-07 12:53:14 +000059 public EclipseLinkMultitenantType2_3 getSpecifiedType() {
kmoorec6bc0262011-09-14 19:39:22 +000060 return null;
61 }
62
kmoore6a7396c2011-10-07 12:53:14 +000063 public void setSpecifiedType(EclipseLinkMultitenantType2_3 type) {
kmoorec6bc0262011-09-14 19:39:22 +000064 throw new UnsupportedOperationException("Multitenancy is only supported in EclipseLink version 2.3 and higher"); //$NON-NLS-1$
65 }
66
kmoore6a7396c2011-10-07 12:53:14 +000067 public EclipseLinkMultitenantType2_3 getDefaultType() {
kmoorec6bc0262011-09-14 19:39:22 +000068 return null;
69 }
70
71
72 // ********** include criteria **********
73
74 public boolean isIncludeCriteria() {
75 return false;
76 }
77
78 public Boolean getSpecifiedIncludeCriteria() {
79 return null;
80 }
81
82 public void setSpecifiedIncludeCriteria(Boolean includeCriteria) {
83 throw new UnsupportedOperationException("Multitenancy is only supported in EclipseLink version 2.3 and higher"); //$NON-NLS-1$
84 }
85
86 public boolean isDefaultIncludeCriteria() {
87 return false;
88 }
89
90
91
92 // ********** tenant discriminator columns **********
93
kmoore6a7396c2011-10-07 12:53:14 +000094 public ListIterable<OrmReadOnlyTenantDiscriminatorColumn2_3> getTenantDiscriminatorColumns() {
kmoore7fe1ca12011-10-04 12:35:33 +000095 return EmptyListIterable.instance();
96 }
97
98 public int getTenantDiscriminatorColumnsSize() {
99 return 0;
100 }
101
kmoore6a7396c2011-10-07 12:53:14 +0000102 public ListIterable<OrmTenantDiscriminatorColumn2_3> getSpecifiedTenantDiscriminatorColumns() {
kmoorec6bc0262011-09-14 19:39:22 +0000103 return EmptyListIterable.instance();
104 }
105
106 public int getSpecifiedTenantDiscriminatorColumnsSize() {
107 return 0;
108 }
109
kmoore7fe1ca12011-10-04 12:35:33 +0000110 public boolean hasSpecifiedTenantDiscriminatorColumns() {
111 return false;
112 }
113
kmoore6a7396c2011-10-07 12:53:14 +0000114 public OrmTenantDiscriminatorColumn2_3 addSpecifiedTenantDiscriminatorColumn() {
kmoorec6bc0262011-09-14 19:39:22 +0000115 throw new UnsupportedOperationException("Multitenancy is only supported in EclipseLink version 2.3 and higher"); //$NON-NLS-1$
116 }
117
kmoore6a7396c2011-10-07 12:53:14 +0000118 public OrmTenantDiscriminatorColumn2_3 addSpecifiedTenantDiscriminatorColumn(int index) {
kmoorec6bc0262011-09-14 19:39:22 +0000119 throw new UnsupportedOperationException("Multitenancy is only supported in EclipseLink version 2.3 and higher"); //$NON-NLS-1$
120 }
121
kmoore6a7396c2011-10-07 12:53:14 +0000122 public void removeSpecifiedTenantDiscriminatorColumn(TenantDiscriminatorColumn2_3 tenantDiscriminatorColumn) {
kmoorec6bc0262011-09-14 19:39:22 +0000123 throw new UnsupportedOperationException("Multitenancy is only supported in EclipseLink version 2.3 and higher"); //$NON-NLS-1$
124 }
125
126 public void removeSpecifiedTenantDiscriminatorColumn(int index) {
127 throw new UnsupportedOperationException("Multitenancy is only supported in EclipseLink version 2.3 and higher"); //$NON-NLS-1$
128 }
129
130 public void moveSpecifiedTenantDiscriminatorColumn(int targetIndex, int sourceIndex) {
131 throw new UnsupportedOperationException("Multitenancy is only supported in EclipseLink version 2.3 and higher"); //$NON-NLS-1$
132 }
133
134 public TextRange getValidationTextRange() {
135 throw new UnsupportedOperationException("Multitenancy is only supported in EclipseLink version 2.3 and higher"); //$NON-NLS-1$
136 }
kmoore7fe1ca12011-10-04 12:35:33 +0000137
kmoore6a7396c2011-10-07 12:53:14 +0000138 public ListIterable<OrmVirtualTenantDiscriminatorColumn2_3> getDefaultTenantDiscriminatorColumns() {
kmoore7fe1ca12011-10-04 12:35:33 +0000139 return EmptyListIterable.instance();
140 }
141
142 public int getDefaultTenantDiscriminatorColumnsSize() {
143 return 0;
144 }
145
kmooree7b7d662011-10-21 18:24:03 +0000146 public boolean specifiedTenantDiscriminatorColumnsAllowed() {
147 return false;
148 }
kmoorec6bc0262011-09-14 19:39:22 +0000149}