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

📄 chatse~5.jav

📁 its a chat server code using javascript
💻 JAV
字号:
package chat;

import org.omg.CORBA.*;
import org.omg.CosNaming.*;


//

class chatserverimpl extends _chatserverImplBase implements chatserver
{

 public chatserverimpl()
 {
  System.out.println("Instance created of the chat server");
 }

static String name = "ChatServer";
 static String[] unames = new String[20];
 static String[] msgs   = new String[20];
 static int latest = 0;
 static int howmany = 0;

 /// The followinng function u need to implement....

 void printusrs()
 {
  int i;
  for(i=0;i<unames.length;i++)
  {
   if(unames[i]!=null)
   System.out.println(unames[i]);

  }
   System.out.println("");
 } 
 
 void printmsgs()
 {
  int i;
  for(i=0;i<msgs.length;i++)
  {
   if(msgs[i]!=null)
   System.out.println(msgs[i]+"   "+i);
  }
  System.out.println("The last message : "+latest);
  System.out.println("");

 } 
 

 public boolean login(String lname)
 {
  int i,min=-1;
  if(howmany>=20)
  {
  System.out.println("Room full");
  return false;
  }
  for(i=0;i<20;i++)
  {
   if(unames[i]!=null)
   {
    if(unames[i].equals(lname))
	{
	System.out.println("Username already exists");
	return false;
	}
   }
   else
   {
    if(min==-1)
	min = i;
   }
  }
   unames[min] = lname;
   howmany++;
   addmessage(lname+" joined the room");
   printusrs();
   return true;
  }  

  

 public void logout(String lname)
 {
  int i;
  for(i=0;i<20;i++)
  {
   if(unames[i].equals(lname))
   {
	addmessage(lname+" left the room");
	unames[i] = null;
	break;
   }
  } 
   printusrs();
   howmany--; 
 }


 public void addmessage(String msg)
 {
  
  msgs[latest] = msg;
  latest =  update(latest);
  printmsgs();
 }

 int update(int l)
  {
  if(l==19)
  l=0;
  else
  l++;
  return l;
 }

 public String getnewmesg(int cur)
 {
  if(latest==cur)
  return " ";
  else
  return msgs[cur];

 }

//up to here.....


public static void main(String args[])
{
 try
 {
 ORB orb = ORB.init(args,null);
 chatserverimpl  serv = new chatserverimpl();
 System.out.println("Completed upto this 1");
 orb.connect(serv);
 System.out.println("Completed upto this 2");
 org.omg.CORBA.Object obj  = orb.resolve_initial_references("NameService");
 System.out.println("Completed upto this 3");
 NamingContext nc  = NamingContextHelper.narrow(obj);
 NameComponent ncmp = new NameComponent(name," ");
 NameComponent path[] = { ncmp };
 nc.rebind(path,serv);
 System.out.println("Completed upto this");
 java.lang.Object waitonme = new java.lang.Object();
 synchronized(waitonme)
 {
  waitonme.wait();
 }
}
catch(Exception ex)
{
 System.out.println("There is an eroor : "+ex);
}

}


}

⌨️ 快捷键说明

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