Commit b027371d authored by Mohamad Bashar Desoki's avatar Mohamad Bashar Desoki

EX1

parents
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/
.kotlin
### IntelliJ IDEA ###
.idea/modules.xml
.idea/jarRepositories.xml
.idea/compiler.xml
.idea/libraries/
*.iws
*.iml
*.ipr
### Eclipse ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/
### VS Code ###
.vscode/
### Mac OS ###
.DS_Store
\ No newline at end of file
# Default ignored files
/shelf/
/workspace.xml
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="AgentMigrationStateService">
<option name="migrationStatus" value="COMPLETED" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/src/main/resources" charset="UTF-8" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="MavenProjectsManager">
<option name="originalFiles">
<list>
<option value="$PROJECT_DIR$/pom.xml" />
</list>
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>
\ No newline at end of file
grant {
// allows anyone to listen on un-privileged ports
permission java.security.AllPermission;
};
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.ds</groupId>
<artifactId>RMI-lab</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
</project>
\ No newline at end of file
grant {
// allows anyone to listen on un-privileged ports
permission java.security.AllPermission;
};
\ No newline at end of file
package org.ds.EX1.client;
import org.ds.EX1.shared.IGreeting;
import java.rmi.NotBoundException;
import java.rmi.RemoteException;
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
public class Client {
public static void main(String[] args) {
try {
Registry registry = LocateRegistry.getRegistry("localhost", 1099);
IGreeting greeting = (IGreeting) registry.lookup("GreetingSVC");
System.out.println(greeting.sayHello());
} catch (RemoteException e) {
throw new RuntimeException(e);
} catch (NotBoundException e) {
throw new RuntimeException(e);
}
}
}
package org.ds.EX1.server;
import org.ds.EX1.shared.IGreeting;
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
public class GreetingSVCImp extends UnicastRemoteObject implements IGreeting {
protected GreetingSVCImp() throws RemoteException {
super();
}
@Override
public String sayHello() throws RemoteException {
System.out.println("Receive New Request");
return "Hello From RMI Server";
}
}
package org.ds.EX1.server;
import java.rmi.RMISecurityManager;
import java.rmi.RemoteException;
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
public class Server {
public static void main(String[] args) {
System.setProperty("java.security.policy","./ServerPolicy.policy");
System.setSecurityManager(new RMISecurityManager());
try {
Registry registry = LocateRegistry.createRegistry(1099);
GreetingSVCImp greetingSVCImp = new GreetingSVCImp();
registry.rebind("GreetingSVC",greetingSVCImp);
System.out.println("Server Ready");
} catch (RemoteException e) {
throw new RuntimeException(e);
}
}
}
package org.ds.EX1.shared;
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface IGreeting extends Remote {
public String sayHello() throws RemoteException;
}
package org.ds.EX2.client;
public class Client {
}
package org.ds.EX2.server;
public class CalculatorSVCImp {
}
package org.ds.EX2.server;
public class Server {
}
package org.ds.EX2.shared;
public interface ICalculator {
}
package org.ds.EX3.client;
public class Clint {
}
package org.ds.EX3.client;
public class ClientCallBackImp {
}
package org.ds.EX3.server;
public class ComputeAndNotifySVCImp {
}
package org.ds.EX3.server;
public class Server {
}
package org.ds.EX3.shared;
public interface IClientCallBack {
}
package org.ds.EX3.shared;
public interface IComputeAndNotify {
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment