View Javadoc
1   /*
2     (C) Copyright IBM Corp. 2005, 2011
3   
4     THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE
5     ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE
6     CONSTITUTES RECIPIENTS ACCEPTANCE OF THE AGREEMENT.
7   
8     You can obtain a current copy of the Eclipse Public License from
9     http://www.opensource.org/licenses/eclipse-1.0.php
10  
11    @author : Roberto Pineiro, IBM, roberto.pineiro@us.ibm.com
12   * @author : Chung-hao Tan, IBM, chungtan@us.ibm.com
13   * 
14   * 
15   * Change History
16   * Flag       Date        Prog         Description
17   *------------------------------------------------------------------------------- 
18   * 17931      2005-07-28  thschaef     Add InetAddress to CIM Event
19   * 1565892    2006-11-28  lupusalex    Make SBLIM client JSR48 compliant
20   * 2003590    2008-06-30  blaschke-oss Change licensing from CPL to EPL
21   * 2524131    2009-01-21  raman_arora  Upgrade client to JDK 1.5 (Phase 1)
22   * 3185818    2011-02-18  blaschke-oss indicationOccured URL incorrect
23   */
24  
25  package org.metricshub.wbem.sblim.cimclient.internal.http;
26  
27  /*-
28   * ╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲
29   * WBEM Java Client
30   * ჻჻჻჻჻჻
31   * Copyright 2023 - 2025 MetricsHub
32   * ჻჻჻჻჻჻
33   * Licensed under the Apache License, Version 2.0 (the "License");
34   * you may not use this file except in compliance with the License.
35   * You may obtain a copy of the License at
36   *
37   *      http://www.apache.org/licenses/LICENSE-2.0
38   *
39   * Unless required by applicable law or agreed to in writing, software
40   * distributed under the License is distributed on an "AS IS" BASIS,
41   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
42   * See the License for the specific language governing permissions and
43   * limitations under the License.
44   * ╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱
45   */
46  
47  import java.io.IOException;
48  import java.net.InetAddress;
49  
50  /**
51   * Class HttpContentHandler is responsible for handling the content of an http
52   * connection.
53   *
54   */
55  public abstract class HttpContentHandler {
56  
57  	/**
58  	 * Handles the content of a given connection
59  	 *
60  	 * @param pMessageReader
61  	 *            The reader of the connection
62  	 * @param pMessageWriter
63  	 *            The writer of the connection
64  	 * @param pInetAddress
65  	 *            The remote network address
66  	 * @param pLocalAddress
67  	 *            The local network address
68  	 * @throws HttpException
69  	 * @throws IOException
70  	 */
71  	public abstract void handleContent(
72  		MessageReader pMessageReader,
73  		MessageWriter pMessageWriter,
74  		InetAddress pInetAddress,
75  		String pLocalAddress
76  	)
77  		throws HttpException, IOException;
78  
79  	/**
80  	 * Closes the handler
81  	 */
82  	public abstract void close();
83  }