package org.apache.axis2.jaxws.utility; /* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you 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. */ import java.awt.Image; import java.awt.image.BufferedImage; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; public class AttachmentUtils { private static final Log log = LogFactory.getLog(AttachmentUtils.class); public static boolean compareImages(Image img1, Image img2){ if(img1 == null && img2==null){ if(log.isDebugEnabled()){ log.debug("Both Image Objects are null, cannot compare Images returning false"); } return false; } int h1 = img1.getHeight(null); int h2 = img2.getHeight(null); int w1 = img1.getWidth(null); int w2 = img1.getWidth(null); if(h1 != h2 || w1 != w2){ return false; } if(img1 instanceof BufferedImage && img2 instanceof BufferedImage){ BufferedImage bi1 = (BufferedImage)img1; BufferedImage bi2 = (BufferedImage)img2; for(int h=0;h<h1;++h){ for(int w=0; w<w1; ++w){ int Img1Pixel =bi1.getRGB(w, h); int Img2Pixel =bi2.getRGB(w, h); if(Img1Pixel!=Img2Pixel){ return false; } } } } return true; } }