| /******************************************************************************* |
| * 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.internal.context.caching; |
| |
| import java.io.Serializable; |
| |
| import org.eclipse.jpt.utility.internal.StringTools; |
| |
| /** |
| * CacheProperties |
| */ |
| public class CacheProperties implements Cloneable, Serializable |
| { |
| private String entityName; |
| |
| // ********** EclipseLink properties ********** |
| private CacheType type; |
| private Integer size; |
| private Boolean isShared; |
| |
| private static final long serialVersionUID = 1L; |
| |
| // ********** constructors ********** |
| public CacheProperties(String entityName) { |
| this.entityName = entityName; |
| } |
| |
| // ********** behaviors ********** |
| @Override |
| public boolean equals(Object o) { |
| if(o == null) { |
| return false; |
| } |
| CacheProperties cache = (CacheProperties) o; |
| return ( |
| (this.type == null ? |
| cache.type == null : this.type.equals(cache.type)) && |
| (this.isShared == null ? |
| cache.isShared == null : this.isShared.equals(cache.isShared)) && |
| (this.size == null ? |
| cache.size == null : this.size.equals(cache.size))); |
| } |
| |
| @Override |
| public synchronized CacheProperties clone() { |
| try { |
| return (CacheProperties)super.clone(); |
| } |
| catch (CloneNotSupportedException ex) { |
| throw new InternalError(); |
| } |
| } |
| |
| public boolean isEmpty() { |
| return (this.type == null) && |
| (this.size == null) && |
| (this.isShared == null); |
| } |
| |
| // ********** getter/setter ********** |
| public String getEntityName() { |
| return entityName; |
| } |
| |
| public CacheType getType() { |
| return this.type; |
| } |
| |
| public void setType(CacheType cacheType) { |
| this.type = cacheType; |
| } |
| |
| public Integer getSize() { |
| return this.size; |
| } |
| |
| public void setSize(Integer cacheSize) { |
| this.size = cacheSize; |
| } |
| |
| public Boolean isShared() { |
| return this.isShared; |
| } |
| |
| public void setShared(Boolean isShared) { |
| this.isShared = isShared; |
| } |
| |
| @Override |
| public String toString() { |
| StringBuilder sb = new StringBuilder(); |
| StringTools.buildSimpleToStringOn(this, sb); |
| sb.append(" ("); |
| this.toString(sb); |
| sb.append(')'); |
| return sb.toString(); |
| } |
| |
| public void toString(StringBuilder sb) { |
| sb.append("type: "); |
| sb.append(this.type); |
| sb.append(", size: "); |
| sb.append(this.size); |
| sb.append(", isShared: "); |
| sb.append(this.isShared); |
| sb.append(", entityName: "); |
| sb.append(this.entityName); |
| } |
| } |