/* * Copyright 2015 Time Warner Cable, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.twcable.jackalope.impl.cq; import com.day.cq.dam.api.Asset; import com.day.cq.dam.api.Rendition; import com.twcable.jackalope.impl.sling.NodeResourceImpl; import org.apache.sling.api.resource.Resource; import org.apache.sling.api.resource.ResourceUtil; import org.apache.sling.api.resource.ValueMap; import javax.jcr.Node; import java.io.InputStream; /** * Simple implementation of a {@link Rendition} and an asset resource */ class RenditionImpl extends NodeResourceImpl implements Rendition { private final Asset asset; public RenditionImpl(Asset asset, Resource resource) { super(resource.getResourceResolver(), resource.adaptTo(Node.class)); this.asset = asset; } @Override public String getMimeType() { return null; } @Override public ValueMap getProperties() { return ResourceUtil.getValueMap(this.getChild("jcr:content")); } @Override public long getSize() { return 0; } @Override public InputStream getStream() { return null; } @Override public Asset getAsset() { return asset; } }