/* * Copyright 2000-2013 Enonic AS * http://www.enonic.com/license */ package com.enonic.cms.core.portal.instruction; import java.io.IOException; import java.io.ObjectInput; import java.io.ObjectOutput; import java.util.Arrays; import org.apache.commons.lang.StringUtils; /** * Created by IntelliJ IDEA. * User: rmh * Date: Nov 23, 2009 * Time: 9:45:41 AM */ public class CreateAttachmentUrlInstruction extends PostProcessInstruction { private String nativeLinkKey = ""; private String[] params = new String[0]; private String requestedMenuItemKey = ""; public CreateAttachmentUrlInstruction() { super( PostProcessInstructionType.CREATE_ATTACHMENTURL ); } public void writeExternal( ObjectOutput out ) throws IOException { writeString( out, nativeLinkKey ); writeStringArray( out, params ); writeString( out, requestedMenuItemKey ); } public void readExternal( ObjectInput in ) throws IOException, ClassNotFoundException { nativeLinkKey = readString( in ); params = readStringArray( in ); requestedMenuItemKey = readString( in ); } @Override public boolean equals( Object o ) { if ( this == o ) { return true; } if ( o == null || getClass() != o.getClass() ) { return false; } CreateAttachmentUrlInstruction that = (CreateAttachmentUrlInstruction) o; if ( requestedMenuItemKey != null ? !requestedMenuItemKey.equals( that.requestedMenuItemKey ) : that.requestedMenuItemKey != null ) { return false; } if ( nativeLinkKey != null ? !nativeLinkKey.equals( that.nativeLinkKey ) : that.nativeLinkKey != null ) { return false; } if ( !Arrays.equals( params, that.params ) ) { return false; } return true; } @Override public int hashCode() { int result = nativeLinkKey != null ? nativeLinkKey.hashCode() : 0; result = 31 * result + ( params != null ? Arrays.hashCode( params ) : 0 ); result = 31 * result + ( requestedMenuItemKey != null ? requestedMenuItemKey.hashCode() : 0 ); return result; } public String[] getParams() { return params; } public void setParams( String[] params ) { if ( params != null ) { this.params = params; } } public String getNativeLinkKey() { return nativeLinkKey; } public void setNativeLinkKey( String nativeLinkKey ) { if ( nativeLinkKey != null ) { this.nativeLinkKey = nativeLinkKey; } } public String getRequestedMenuItemKey() { return requestedMenuItemKey; } public void setRequestedMenuItemKey( String requestedMenuItemKey ) { if ( StringUtils.isNotEmpty( requestedMenuItemKey ) ) { this.requestedMenuItemKey = requestedMenuItemKey; } } }