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

📄 hrmanagerimpl.java

📁 Java分布式应用程序设计 一书的源代码
💻 JAVA
字号:

/**
 * Copyright (c) 2001
 * Template File
 *   InterfaceServerImpl.java.template
 * IDL Object
 *   humanresource.HR.HRManager
 * Generation Date
 *   2001年12月13日 下午09时21分41秒
 * IDL Source File
 *   E:/HumanResource/src/humanresource/HR.idl
 * Abstract
 *   Provides default implementation for the server side of a CORBA interface.
 * @version 1.0
 */

package humanresource.HR.server;

import java.sql.*;
import java.util.*;
import java.math.*;

import org.omg.PortableServer.*;


public class HRManagerImpl extends humanresource.HR.HRManagerPOA {
  String _name = "HRManager";
  public static ServerMonitorPage monitor = null;

  //注册员工数量
  private int nClertNumber;
  //员工信息存储向量
  private Dictionary PersonalInfoBase = new Hashtable();

  private void init() {
    if (monitor == null) {
      monitor = ServerMonitor.addPage(this, "HRManager");
      monitor.showObjectCounter(true);
    }
    monitor.updateObjectCounter(1);

    //注册员工数量初始化
    nClertNumber = 0;
  }

  public HRManagerImpl(java.lang.String name, java.lang.String creationParameters) {
    this._name = name;
    init();
  }

  public HRManagerImpl(java.lang.String name) {
    this._name = name;
    init();
  }

  public HRManagerImpl() {
    init();
  }

  //员工个人信息注册方法
  public boolean register(humanresource.HR.PersonalDesc InfoStruct)
  {
    ServerMonitor.log("(" + _name + ") HRManagerImpl.java register()");

    //根据姓名关键字查询员工对象是否在向量中注册
    //humanresource.HR.PersonalInfo Info = (humanresource.HR.PersonalInfo) PersonalInfoBase.get( InfoStruct.ClertName );

    PersonalInfoImpl Info = (PersonalInfoImpl) PersonalInfoBase.get( InfoStruct.ClertName );

    if( Info == null )
    {
      //创建员工对象实例类
      PersonalInfoImpl InfoServant = new PersonalInfoImpl( InfoStruct );
      /*try
      {
        //在POA中激活
        Info = humanresource.HR.PersonalInfoHelper.narrow(_default_POA().servant_to_reference(InfoServant));
      }
      catch (Exception e)
      {
        e.printStackTrace();
      }*/
      try
      {
        //在向量类中存储
        PersonalInfoBase.put( InfoStruct.ClertName, InfoServant);
        //注册员工数量
        nClertNumber ++;
      }
      catch(Exception e)
      {
        e.printStackTrace();
        return false;
      }
      return true;
    }
    else
      return false;

  }

  //删除注册信息方法
  public boolean unRegister(String name)
  {
    ServerMonitor.log("(" + _name + ") HRManagerImpl.java unRegister()");

    //在信息向量中检索注册信息关键字
    //humanresource.HR.PersonalInfo Info = (humanresource.HR.PersonalInfo) PersonalInfoBase.get( name );
    PersonalInfoImpl Info = (PersonalInfoImpl) PersonalInfoBase.get( name );

    if( Info != null )
    {
        //从向量对象中删除员工注册信息
        PersonalInfoBase.remove( name );
        //注册员工数量减一
        nClertNumber --;
        return true;
    }
    else
        return false;
  }

  public int getClertCount()
  {
    ServerMonitor.log("(" + _name + ") HRManagerImpl.java getClertCount()");

    //
    return nClertNumber;
  }

  public humanresource.HR.PersonalDesc getDescription(String name)
  {
    ServerMonitor.log("(" + _name + ") HRManagerImpl.java getDescription()");

    //检索注册员工对象
    PersonalInfoImpl InfoServant = (PersonalInfoImpl) PersonalInfoBase.get( name );

    if( InfoServant != null )
    {
        //获取员工个人信息对象中的注册信息结构成员
        humanresource.HR.PersonalDesc desc = InfoServant.InfoDesc();
        return desc;
    }
    else
        return null;
  }

}

⌨️ 快捷键说明

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