⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 servicechannel.java

📁 移动Agent编程工具Naplet
💻 JAVA
字号:
/*
 * @<#>ServiceChannel.java version 0.0.1, 1/1/2001
 *
 * THIS PROGRAM IS FREE SOFTWARE; YOU CAN DISTRIBUTE IT AND/OR
 * MODIFY IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE 
 * AS PUBLISHED BY THE FREE SOFTWARE FOUNDATION.
 *
 * 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. SEE THE 
 * GNU GENERAL PUBLIC LICENSE FOR MORE DETAILS.
 *
 * Copyright (c) 2001 Wayne State University. All Rights Reserved.
 */

package naplet.serviceChannel;

import java.io.*;

/**
 * The <code>ServiceChannel</code> defines an I/O interface between
 * naplets and priviledged application services on the servers.
 *
 * @version 0.0.1, 1/1/2001
 * @author C. Xu
 */

public class ServiceChannel implements java.rmi.Remote
{

      /**
       * Channel from Naplet to Service
       */
      private ServiceReader inServiceReader; 
      private NapletWriter outNapletWriter ; 

      private ServiceInputStream inServiceStream;
      private NapletOutputStream outNapletStream;

      /**
       * Channel from Service to Naplet
       */
      private NapletReader inNapletReader ; 
      private ServiceWriter outServiceWriter;

      private NapletInputStream inNapletStream;
      private ServiceOutputStream outServiceStream;

      public ServiceChannel( ) 
      {
	 outNapletWriter = new NapletWriter( ); 
	 inServiceReader = new ServiceReader( ); 

	 outNapletStream = new NapletOutputStream( );
	 inServiceStream = new ServiceInputStream( );

	 outServiceWriter = new ServiceWriter( );
	 inNapletReader = new NapletReader( );

	 outServiceStream = new ServiceOutputStream( );
	 inNapletStream = new NapletInputStream( );
      }


      /**
       * Called by PrivilegedService to obtain character input reader
       */
      public ServiceReader getServiceReader( )
      {
	 return inServiceReader; 	

      }

      /**
       * Called by naplets to obtain character output writer
       */
      public NapletWriter getNapletWriter( ) 
	 throws IOException
      {
	 try 
	 {
	    inServiceReader.connect( outNapletWriter );
	 } 
	 catch ( IOException ioe )
	 {
	    ioe.printStackTrace( );
	 };

	 return outNapletWriter;
      }

      /**
       * Called by PrivilegedService to obtain character input reader
       */
      public ServiceInputStream getServiceInputStream( )
      {
	 return inServiceStream; 	

      }

      /**
       * Called by naplets to obtain character output writer
       */
      public NapletOutputStream getNapletOutputStream( ) 
	 throws IOException
      {
	 try 
	 {
	    inServiceStream.connect( outNapletStream );
	 } 
	 catch ( IOException ioe )
	 {
	    ioe.printStackTrace( );
	 };

	 return outNapletStream;
      }


      /**
       * Called by naplets to obtain character input reader 
       */
      public NapletReader getNapletReader() 
	 throws IOException 
      {
	 try
	 {
	    outServiceWriter.connect( inNapletReader );
	 } 
	 catch ( IOException ioe )
	 {
	    ioe.printStackTrace( );
	 };

	 return inNapletReader;
      }

      /**
       * Called by PrivilegedSerivce to obtain a character ouput writer
       */
      public ServiceWriter getServiceWriter( ) 
      {
	 return outServiceWriter;
      }

            /**
       * Called by naplets to obtain character input reader 
       */
      public NapletInputStream getNapletInputStream( ) 
	 throws IOException 
      {
	 try
	 {
	    outServiceStream.connect( inNapletStream );
	 } 
	 catch ( IOException ioe )
	 {
	    ioe.printStackTrace( );
	 };

	 return inNapletStream;
      }

      /**
       * Called by PrivilegedSerivce to obtain a character ouput writer
       */
      public ServiceOutputStream getServiceOutputStream( ) 
      {
	 return outServiceStream;
      }
}	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -