001    /**
002     * Licensed to the Apache Software Foundation (ASF) under one or more
003     * contributor license agreements.  See the NOTICE file distributed with
004     * this work for additional information regarding copyright ownership.
005     * The ASF licenses this file to You under the Apache License, Version 2.0
006     * (the "License"); you may not use this file except in compliance with
007     * the License.  You may obtain a copy of the License at
008     *
009     *      http://www.apache.org/licenses/LICENSE-2.0
010     *
011     * Unless required by applicable law or agreed to in writing, software
012     * distributed under the License is distributed on an "AS IS" BASIS,
013     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014     * See the License for the specific language governing permissions and
015     * limitations under the License.
016     */
017    package org.apache.activemq.command;
018    
019    import java.util.Map;
020    import org.apache.activemq.util.IntrospectionSupport;
021    
022    
023    /**
024     * 
025     * @openwire:marshaller
026     * 
027     */
028    public abstract class BaseCommand implements Command {
029    
030        protected int commandId;
031        protected boolean responseRequired;
032        
033        private transient Endpoint from;
034        private transient Endpoint to;
035        
036        public void copy(BaseCommand copy) {
037            copy.commandId = commandId;
038            copy.responseRequired = responseRequired;
039        }    
040    
041        /**
042         * @openwire:property version=1
043         */
044        public int getCommandId() {
045            return commandId;
046        }
047    
048        public void setCommandId(int commandId) {
049            this.commandId = commandId;
050        }
051    
052        /**
053         * @openwire:property version=1
054         */
055        public boolean isResponseRequired() {
056            return responseRequired;
057        }
058    
059        public void setResponseRequired(boolean responseRequired) {
060            this.responseRequired = responseRequired;
061        }
062    
063        @Override
064        public String toString() {
065            return toString(null);
066        }
067        
068        public String toString(Map<String, Object>overrideFields) {
069            return IntrospectionSupport.toString(this, BaseCommand.class, overrideFields);
070        }
071        
072        public boolean isWireFormatInfo() {
073            return false;
074        }
075    
076        public boolean isBrokerInfo() {
077            return false;
078        }
079    
080        public boolean isResponse() {
081            return false;
082        }
083    
084        public boolean isMessageDispatch() {
085            return false;
086        }
087    
088        public boolean isMessage() {
089            return false;
090        }
091    
092        public boolean isMarshallAware() {
093            return false;
094        }
095    
096        public boolean isMessageAck() {
097            return false;
098        }
099    
100        public boolean isMessageDispatchNotification() {
101            return false;
102        }
103    
104        public boolean isShutdownInfo() {
105            return false;
106        }
107        
108        public boolean isConnectionControl() {
109            return false;
110        }
111    
112        /**
113         * The endpoint within the transport where this message came from.
114         */
115        public Endpoint getFrom() {
116            return from;
117        }
118    
119        public void setFrom(Endpoint from) {
120            this.from = from;
121        }
122    
123        /**
124         * The endpoint within the transport where this message is going to - null means all endpoints.
125         */
126        public Endpoint getTo() {
127            return to;
128        }
129    
130        public void setTo(Endpoint to) {
131            this.to = to;
132        }
133        
134        
135    }