Files
alfresco-community-repo/source/java/org/alfresco/rest/api/model/Document.java
Ancuta Morarasu 25141be821 Merged HEAD (5.2) to 5.2.N (5.2.1)
126368 jkaabimofrad: Merged FILE-FOLDER-API (5.2.0) to HEAD (5.2)
      119796 jvonka: FileFolder API - NodeApiTest - add tests (+ve & -ve) for create folder
      RA-635


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/DEV/5.2.N/root@126713 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2016-05-11 10:49:29 +00:00

144 lines
3.8 KiB
Java

/*
* #%L
* Alfresco Remote API
* %%
* Copyright (C) 2005 - 2016 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
package org.alfresco.rest.api.model;
import java.io.Serializable;
import java.math.BigInteger;
import java.util.Map;
import com.fasterxml.jackson.annotation.JsonInclude;
import org.alfresco.model.ContentModel;
import org.alfresco.service.ServiceRegistry;
import org.alfresco.service.cmr.repository.ContentData;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.namespace.QName;
/**
* Representation of a document node.
*
* @author steveglover
* @author janv
*
*/
@JsonInclude(JsonInclude.Include.NON_NULL)
public class Document extends Node
{
private ContentInfo contentInfo;
public Document() {
super();
}
public Document(NodeRef nodeRef, NodeRef parentNodeRef, Map<QName, Serializable> nodeProps, Map<String, UserInfo> mapUserInfo, ServiceRegistry sr)
{
super(nodeRef, parentNodeRef, nodeProps, mapUserInfo, sr);
Serializable val = nodeProps.get(ContentModel.PROP_CONTENT);
if ((val != null) && (val instanceof ContentData)) {
ContentData cd = (ContentData)val;
String mimeType = cd.getMimetype();
String mimeTypeName = sr.getMimetypeService().getDisplaysByMimetype().get(mimeType);
this.contentInfo = new ContentInfo(mimeType, mimeTypeName, cd.getSize(), cd.getEncoding());
}
this.isFolder = false;
}
public ContentInfo getContent()
{
return contentInfo;
}
public void setContent(ContentInfo contentInfo)
{
this.contentInfo = contentInfo;
}
@Override
public String toString()
{
return "Document [contentInfo=" + contentInfo.toString() + ", nodeRef="
+ nodeRef + ", name=" + name + ", createdAt=" + createdAt
+ ", modifiedAt=" + modifiedAt + ", createdBy=" + createdBy
+ ", modifiedBy=" + modifiedBy + "]";
}
// TODO for backwards compat' - set explicitly when needed (ie. favourites)
private String mimeType;
private BigInteger sizeInBytes;
private String versionLabel;
/**
* @deprecated
*/
public String getMimeType()
{
return mimeType;
}
/**
* @deprecated
*/
public BigInteger getSizeInBytes()
{
return sizeInBytes;
}
/**
* @deprecated
*/
public String getVersionLabel()
{
return versionLabel;
}
/**
* @deprecated
*/
public void setMimeType(String mimeType)
{
this.mimeType = mimeType;
}
/**
* @deprecated
*/
public void setSizeInBytes(BigInteger sizeInBytes)
{
this.sizeInBytes = sizeInBytes;
}
/**
* @deprecated
*/
public void setVersionLabel(String versionLabel)
{
this.versionLabel = versionLabel;
}
}