com.enonic.cms.core.content.ContentVersionKey.java Source code

Java tutorial

Introduction

Here is the source code for com.enonic.cms.core.content.ContentVersionKey.java

Source

/*
 * Copyright 2000-2013 Enonic AS
 * http://www.enonic.com/license
 */
package com.enonic.cms.core.content;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;

import org.apache.commons.lang.builder.HashCodeBuilder;

import com.enonic.cms.core.AbstractIntegerBasedKey;
import com.enonic.cms.core.IntBasedKey;

public class ContentVersionKey extends AbstractIntegerBasedKey implements Serializable, IntBasedKey {
    public ContentVersionKey(String key) {
        init(key);
    }

    public ContentVersionKey(int key) {
        init(key);
    }

    public ContentVersionKey(Integer key) {
        init(key);
    }

    @Override
    protected int minAllowedValue() {
        return -1; // must be allowed for preview
    }

    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }

        ContentVersionKey contentKey = (ContentVersionKey) o;

        return intValue == contentKey.intValue;
    }

    public int hashCode() {
        return new HashCodeBuilder(713, 599).append(intValue).toHashCode();
    }

    public static List<ContentVersionKey> createList(Collection<ContentVersionEntity> versions) {
        List<ContentVersionKey> list = new ArrayList<ContentVersionKey>();
        if (versions == null || versions.size() == 0) {
            return list;
        }

        for (ContentVersionEntity version : versions) {
            list.add(version.getKey());
        }

        return list;
    }

}