alvinalexander.com | career | drupal | java | mac | mysql | perl | scala | uml | unix  

Scala example source code file (RemoteByteRef.scala)

This example Scala source code file (RemoteByteRef.scala) is included in the DevDaily.com "Java Source Code Warehouse" project. The intent of this project is to help you "Learn Java by Example" TM.

Java - Scala tags/keywords

byte, byte, byteref, remotebyteref, remotebyteref, remotebyterefimpl, remotebyterefimpl, string, unicastremoteobject, unicastremoteobject, unreferenced

The Scala RemoteByteRef.scala source code

/*                     __                                               *\
**     ________ ___   / /  ___     Scala API                            **
**    / __/ __// _ | / /  / _ |    (c) 2002-2011, LAMP/EPFL             **
**  __\ \/ /__/ __ |/ /__/ __ |    http://scala-lang.org/               **
** /____/\___/_/ |_/____/_/ | |                                         **
**                          |/                                          **
\*                                                                      */

// $Id: RemoteByteRef.scala 18398 2009-07-28 14:26:36Z michelou $

package scala.runtime.remoting

import java.rmi.server.{UnicastRemoteObject, Unreferenced}
import scala.runtime.{ByteRef, RemoteRef}

/**
 * The trait Remote<code>RemoteByteRef provides a remote interface
 * for manipulating byte references.
 *
 * @author Stephane Micheloud
 * @version 1.0
 */
@remote
trait RemoteByteRef {
  def elem_=(value: Byte)
  def elem: Byte
}

/**
 * The class <code>RemoteByteRefImpl implements a remote (global)
 * byte reference by inheriting from the class
 * <code>UnicastRemoteObject.
 *
 * In particular, it forwards method invocations to the <code>elem
 * accessors of class <code>runtime.ByteRef and implements the
 * <code>java.rmi.server.Unreferenced interface to automatically
 * remove the no more referenced binding from the registry.
 *
 * @author Stephane Micheloud
 * @version 1.0
 */
class RemoteByteRefImpl(name: String, x: ByteRef)
extends UnicastRemoteObject with RemoteByteRef with Unreferenced {
  def elem_=(value: Byte) { x.elem = value }
  def elem: Byte = x.elem
  override def toString() = x.elem.toString
  def unreferenced() {
    Debug.info("[RemoteByteRefImpl] unreferenced: "+this)
    RemoteRef.unbind(name)
  }
}

Other Scala examples (source code examples)

Here is a short list of links related to this Scala RemoteByteRef.scala source code file:

... this post is sponsored by my books ...

#1 New Release!

FP Best Seller

 

new blog posts

 

Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.

A percentage of advertising revenue from
pages under the /java/jwarehouse URI on this website is
paid back to open source projects.