| /******************************************************************************* |
| * Copyright (c) 2008 Oracle. All rights reserved. |
| * This program and the accompanying materials are made available under the |
| * terms of the Eclipse Public License v1.0, which accompanies this distribution |
| * and is available at http://www.eclipse.org/legal/epl-v10.html. |
| * |
| * Contributors: |
| * Oracle - initial API and implementation |
| ******************************************************************************/ |
| package org.eclipse.jpt.eclipselink.core.context; |
| |
| |
| /** |
| * |
| * |
| * Provisional API: This interface is part of an interim API that is still |
| * under development and expected to change significantly before reaching |
| * stability. It is available at this early stage to solicit feedback from |
| * pioneering adopters on the understanding that any code that uses this API |
| * will almost certainly be broken (repeatedly) as the API evolves. |
| * |
| * @version 2.1 |
| * @since 2.1 |
| */ |
| public enum EclipseLinkCacheType { |
| |
| SOFT_WEAK, |
| HARD_WEAK, |
| WEAK, |
| SOFT, |
| FULL, |
| CACHE, |
| NONE; |
| |
| |
| public static EclipseLinkCacheType fromJavaResourceModel(org.eclipse.jpt.eclipselink.core.resource.java.CacheType javaCacheType) { |
| if (javaCacheType == null) { |
| return null; |
| } |
| switch (javaCacheType) { |
| case FULL: |
| return FULL; |
| case WEAK: |
| return WEAK; |
| case SOFT: |
| return SOFT; |
| case SOFT_WEAK: |
| return SOFT_WEAK; |
| case HARD_WEAK: |
| return HARD_WEAK; |
| case CACHE: |
| return CACHE; |
| case NONE: |
| return NONE; |
| default: |
| throw new IllegalArgumentException("unknown cache type: " + javaCacheType); //$NON-NLS-1$ |
| } |
| } |
| |
| public static org.eclipse.jpt.eclipselink.core.resource.java.CacheType toJavaResourceModel(EclipseLinkCacheType cacheType) { |
| if (cacheType == null) { |
| return null; |
| } |
| switch (cacheType) { |
| case FULL: |
| return org.eclipse.jpt.eclipselink.core.resource.java.CacheType.FULL; |
| case WEAK: |
| return org.eclipse.jpt.eclipselink.core.resource.java.CacheType.WEAK; |
| case SOFT: |
| return org.eclipse.jpt.eclipselink.core.resource.java.CacheType.SOFT; |
| case SOFT_WEAK: |
| return org.eclipse.jpt.eclipselink.core.resource.java.CacheType.SOFT_WEAK; |
| case HARD_WEAK: |
| return org.eclipse.jpt.eclipselink.core.resource.java.CacheType.HARD_WEAK; |
| case CACHE: |
| return org.eclipse.jpt.eclipselink.core.resource.java.CacheType.CACHE; |
| case NONE: |
| return org.eclipse.jpt.eclipselink.core.resource.java.CacheType.NONE; |
| default: |
| throw new IllegalArgumentException("unknown cache type: " + cacheType); //$NON-NLS-1$ |
| } |
| } |
| |
| |
| public static EclipseLinkCacheType fromOrmResourceModel(org.eclipse.jpt.eclipselink.core.resource.orm.CacheType ormCacheType) { |
| if (ormCacheType == null) { |
| return null; |
| } |
| switch (ormCacheType) { |
| case FULL: |
| return FULL; |
| case WEAK: |
| return WEAK; |
| case SOFT: |
| return SOFT; |
| case SOFT_WEAK: |
| return SOFT_WEAK; |
| case HARD_WEAK: |
| return HARD_WEAK; |
| case CACHE: |
| return CACHE; |
| case NONE: |
| return NONE; |
| default: |
| throw new IllegalArgumentException("unknown cache type: " + ormCacheType); //$NON-NLS-1$ |
| } |
| } |
| |
| public static org.eclipse.jpt.eclipselink.core.resource.orm.CacheType toOrmResourceModel(EclipseLinkCacheType cacheType) { |
| if (cacheType == null) { |
| return null; |
| } |
| switch (cacheType) { |
| case FULL: |
| return org.eclipse.jpt.eclipselink.core.resource.orm.CacheType.FULL; |
| case WEAK: |
| return org.eclipse.jpt.eclipselink.core.resource.orm.CacheType.WEAK; |
| case SOFT: |
| return org.eclipse.jpt.eclipselink.core.resource.orm.CacheType.SOFT; |
| case SOFT_WEAK: |
| return org.eclipse.jpt.eclipselink.core.resource.orm.CacheType.SOFT_WEAK; |
| case HARD_WEAK: |
| return org.eclipse.jpt.eclipselink.core.resource.orm.CacheType.HARD_WEAK; |
| case CACHE: |
| return org.eclipse.jpt.eclipselink.core.resource.orm.CacheType.CACHE; |
| case NONE: |
| return org.eclipse.jpt.eclipselink.core.resource.orm.CacheType.NONE; |
| default: |
| throw new IllegalArgumentException("unknown cache type: " + cacheType); //$NON-NLS-1$ |
| } |
| } |
| |
| } |