content: /*
   * Copyright (C) 2013 4th Line GmbH, Switzerland
   *
   * The contents of this file are subject to the terms of either the GNU
   * Lesser General Public License Version 2 or later ("LGPL") or the
   * Common Development and Distribution License Version 1 or later
   * ("CDDL") (collectively, the "License"). You may not use this file
   * except in compliance with the License. See LICENSE.txt for more
   * information.
   *
   * This program is distributed in the hope that it will be useful,
   * but WITHOUT ANY WARRANTY; without even the implied warranty of
   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
   */
  
  package org.fourthline.cling.model.message;
  
  import java.net.URI;
  import java.net.URL;
  
  /**
   * A TCP (HTTP) stream request message.
   *
   * @author Christian Bauer
   */
  public class StreamRequestMessage extends UpnpMessage<UpnpRequest> {
  
      protected Connection connection;
  
      public StreamRequestMessage(StreamRequestMessage source) {
          super(source);
          this.connection = source.getConnection();
      }
  
      public StreamRequestMessage(UpnpRequest operation) {
          super(operation);
      }
  
      public StreamRequestMessage(UpnpRequest.Method method, URI uri) {
          super(new UpnpRequest(method, uri));
      }
  
      public StreamRequestMessage(UpnpRequest.Method method, URL url) {
          super(new UpnpRequest(method, url));
      }
  
      public StreamRequestMessage(UpnpRequest operation, String body) {
          super(operation, BodyType.STRING, body);
      }
  
      public StreamRequestMessage(UpnpRequest.Method method, URI uri, String body) {
          super(new UpnpRequest(method, uri), BodyType.STRING, body);
      }
  
      public StreamRequestMessage(UpnpRequest.Method method, URL url, String body) {
          super(new UpnpRequest(method, url), BodyType.STRING, body);
      }
  
  
      public StreamRequestMessage(UpnpRequest operation, byte[] body) {
          super(operation, BodyType.BYTES, body);
      }
  
      public StreamRequestMessage(UpnpRequest.Method method, URI uri, byte[] body) {
          super(new UpnpRequest(method, uri), BodyType.BYTES, body);
      }
  
      public StreamRequestMessage(UpnpRequest.Method method, URL url, byte[] body) {
          super(new UpnpRequest(method, url), BodyType.BYTES, body);
      }
  
      public URI getUri() {
          return getOperation().getURI();
      }
      
      public void setUri(URI uri) {
          getOperation().setUri(uri);
      }
  
  	public void setConnection(Connection connection) {
  		this.connection = connection;
  	}
  	
  	public Connection getConnection() {
  		return connection;
  	}
      
  }