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

Scala example source code file (RemoteDoubleRef.scala)

This example Scala source code file (RemoteDoubleRef.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

double, double, doubleref, remotedoubleref, remotedoubleref, remotedoublerefimpl, remotedoublerefimpl, string, unicastremoteobject, unicastremoteobject, unreferenced

The Scala RemoteDoubleRef.scala source code

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

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

package scala.runtime.remoting

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

/**
 * The trait Remote<code>RemoteDoubleRef provides..
 *
 * @author Stephane Micheloud
 * @version 1.0
 */
@remote
trait RemoteDoubleRef {
  def elem_=(value: Double)
  def elem: Double
}

/**
 * The class <code>RemoteDoubleRefImpl implements a remote (global)
 * double reference by inheriting from the class
 * <code>UnicastRemoteObject.
 *
 * In particular, it forwards method invocations to the <code>elem
 * accessors of class <code>runtime.DoubleRef 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 RemoteDoubleRefImpl(name: String, x: DoubleRef)
extends UnicastRemoteObject with RemoteDoubleRef with Unreferenced {
  def elem_=(value: Double) { x.elem = value }
  def elem: Double = x.elem
  override def toString() = x.elem.toString
  def unreferenced() {
    Debug.info("[RemoteDoubleRefImpl] unreferenced: "+this)
    RemoteRef.unbind(name)
  }
}

Other Scala examples (source code examples)

Here is a short list of links related to this Scala RemoteDoubleRef.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.