Package com.alibaba.simpleimage.util

Source Code of com.alibaba.simpleimage.util.JAIRegisterHelper

/*
* Copyright 1999-2101 Alibaba Group.
*
* 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.alibaba.simpleimage.util;

import java.awt.image.renderable.RenderedImageFactory;

import javax.media.jai.JAI;
import javax.media.jai.OperationDescriptor;
import javax.media.jai.OperationRegistry;
import javax.media.jai.registry.RIFRegistry;

import com.alibaba.simpleimage.jai.scale.LanczosCRIF;
import com.alibaba.simpleimage.jai.scale.LanczosDescriptor;

public class JAIRegisterHelper {

    public static void register() {
        //noting to do
    }

    /**
     * 由于LancsosOpImage暂时不用,该方法也暂时不用
     */
    @SuppressWarnings("unused")
    private synchronized static void registerLanczosOperator() {
        LanczosDescriptor lanczosDescriptor = new LanczosDescriptor();
        RenderedImageFactory rif = new LanczosCRIF();
       
        registerRIFOperator(lanczosDescriptor, rif, "Lanczos", "com.alibaba.platform", "rendered");
    }

    private static void registerRIFOperator(OperationDescriptor descriptor, RenderedImageFactory rif,
                                            String operationName, String productName, String model) {
        OperationRegistry op = JAI.getDefaultInstance().getOperationRegistry();
        String[] p = op.getDescriptorNames(model);
        boolean registed = false;

        if (p != null) {
            for (int i = 0; i < p.length; i++) {
                if (p[i].equalsIgnoreCase(operationName)) {
                    registed = true;
                    break;
                }
            }
        }

        if (!registed) {
            op.registerDescriptor(descriptor);
        }

        RIFRegistry.register(op, operationName, productName, rif);
    }
}
TOP

Related Classes of com.alibaba.simpleimage.util.JAIRegisterHelper

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.