EssayGhost Assignment代写,Essay代写,网课代修,Quiz代考

EssayGhost-Essay代写,作业代写,网课代修代上,cs代写代考

一站式网课代修,论文代写

高质量的Assignment代写、Paper代写、Report代写服务

EG1hao
网课代修代上,cs代写代考
Java代写
您的位置: 主页 > 编程案例 > Java代写 >
代写Java:CUBA 英国paper - Java代写
发布时间:2021-07-25 20:38:56浏览次数:
import org.omg.CosNaming.NamingContextExt;import org.omg.CosNaming.NamingContextExtHelper;import java.util.*;import java.util.stream.Collectors;public class EnvironmentalCentreImpl extends EnvironmentalCentrePOA {    public Set Agency agencies = new HashSet Agency ();    public Set RegionalCentre regions = new HashSet RegionalCentre ();    public EnvironmentalCentreImpl() {        super();    }    @Override    public void raise_alarm(Reading alarm) {        System.out.println( EnvironmentalCentre raises an alarm: + alarm);    }    @Override    public void register_agency(String name, String contact, String region) {        String[] args = { -ORBInitialPort , 1050 };        try {            ORB orb = ORB.init(args, null);            Object objref = orb.resolve_initial_references( NameService );            NamingContextExt ncref = NamingContextExtHelper.narrow(objref);            Agency agency = AgencyHelper.narrow(ncref.resolve_str( Agency + name));            agencies.add(agency);            System.out.println( EnvironmentalCentre Agency + name);        } catch (Exception e) {            System.out.println( EnvironmentalCentre Agency + name + failed );        }    }    @Override    public void register_regional_centre(String name) {        String[] args = { -ORBInitialPort , 1050 };        try {            ORB orb = ORB.init(args, null);            Object objref = orb.resolve_initial_references( NameService );            NamingContextExt ncref = NamingContextExtHelper.narrow(objref);            RegionalCentre region = RegionalCentreHelper.narrow(ncref.resolve_str( Region + name));            regions.add(region);            System.out.println( EnvironmentalCentre RegionalCentre + name);        } catch (Exception e) {            System.out.println( EnvironmentalCentre RegionalCentre + name + failed );        }    }    @Override    public Reading[] get_readings() {        List Reading list = new ArrayList Reading ();        Set RegionalCentre sm = new HashSet RegionalCentre ();        for (RegionalCentre region : regions) {            try {                list.addAll(Arrays.stream(region.get_readings()).collect(Collectors.toList()));            } catch (Exception x) {                sm.add(region);            }        }        regions.removeAll(sm);        return list.toArray(new Reading[list.size()]);    }} 5.2 RegionalCentreImplpackage impl;import EnvMon.Monitor;import EnvMon.MonitorHelper;import EnvMon.Reading;import EnvMon.RegionalCentrePOA;import org.omg.CORBA.ORB;import org.omg.CORBA.Object;import org.omg.CosNaming.NamingContextExt;import org.omg.CosNaming.NamingContextExtHelper;import java.util.*;public class RegionalCentreImpl extends RegionalCentrePOA {    public String name = null;    public Queue Reading log = new LinkedList Reading ();    public Set Monitor monitors = new HashSet Monitor ();    public RegionalCentreImpl(String name) {        super();        this.name = name;    }    @Override    public String name() {        return name;    }    @Override    public Reading[] log() {        return log.toArray(new Reading[log.size()]);    }    @Override    public void raise_alarm(Reading alarm) {        log.add(alarm);        System.out.println( RegionalCentre [ + name + ] raises an alarm: + alarm);    }    @Override    public Reading[] get_readings() {        ArrayList Reading list = new ArrayList Reading ();        Set Monitor sm = new HashSet Monitor ();        for (Monitor monitor : monitors) {            try {                list.add(monitor.get_reading());            } catch (Exception x) {                sm.add(monitor);            }        }        monitors.removeAll(sm);        return list.toArray(new Reading[list.size()]);    }    @Override    public boolean add_monitor(String name, String location) {        String[] args = { -ORBInitialPort , 1050 };        try {            ORB orb = ORB.init(args, null);            Object objref = orb.resolve_initial_references( NameService );            NamingContextExt ncref = NamingContextExtHelper.narrow(objref);            Monitor monitor = MonitorHelper.narrow(ncref.resolve_str( Monitor + name));            if (monitors.stream().anyMatch(m - m.location().equals(monitor.location()))) return false;            monitor.turn_on();            monitors.add(monitor);            System.out.println( Region + this.name + Monitor + name);            return true;        } catch (Exception e) {            System.out.println( Region + this.name + Monitor + name + failed );            return false;        }    }} 5.3 MonitorImplpackage impl;import EnvMon.MonitorPOA;import EnvMon.Reading;import java.util.Calendar;import java.util.Date;public class MonitorImpl extends MonitorPOA {    private String name = null, location = null;    private boolean power = false;    public int value = 0;    public MonitorImpl(String name, String location) {        super();        this.name = name;        this.location = location;    }    @Override    public String name() {        return name;    }    @Override    public String location() {        return location;    }    @Override    public Reading get_reading() {        if (!power) return null;        Calendar calendar = Calendar.getInstance();        calendar.setTime(new Date());        int date = calendar.get(Calendar.DAY_OF_YEAR);        int time = calendar.get(Calendar.HOUR) * 60 + calendar.get(Calendar.MINUTE);        return new Reading(date, time, value, name);    }    @Override    public void turn_on() {        power = true;        System.out.println( Monitor [ + name + ] ( + location + ) is turned on );    }    @Override    public void turn_off() {        power = false;        System.out.println( Monitor [ + name + ] ( + location + ) is turned off );    }    @Override    public void reset() {        power = false;        value = 0;        System.out.println( Monitor [ + name + ] ( + location + ) is reset );    }} 5.4 AgencyImplpackage impl;import EnvMon.AgencyPOA;import EnvMon.Reading;public class AgencyImpl extends AgencyPOA {    private String name = null, contact = null, region = null;    public AgencyImpl(String name, String contact, String region) {        super();        this.name = name;        this.contact = contact;        this.region = region;    }    @Override    public String name() {        return name;    }    @Override    public String contact() {        return contact;    }    @Override    public String region() {        return region;    }    @Override    public void raise_alarm(Reading alarm) {        System.out.println( Agency [ + name + ] ( + contact + ) raises an alarm: + alarm);    }} 5.5 EnvServerpackage server;import EnvMon.*;import impl.EnvironmentalCentreImpl;import org.omg.CORBA.ORB;import org.omg.CORBA.ORBPackage.InvalidName;import org.omg.CORBA.Object;import org.omg.CosNaming.NameComponent;import org.omg.CosNaming.NamingContextExt;import org.omg.CosNaming.NamingContextExtHelper;import org.omg.CosNaming.NamingContextPackage.CannotProceed;import org.omg.CosNaming.NamingContextPackage.NotFound;import org.omg.PortableServer.POA;import org.omg.PortableServer.POAHelper;import org.omg.PortableServer.POAManagerPackage.AdapterInactive;import org.omg.PortableServer.POAPackage.ServantNotActive;import org.omg.PortableServer.POAPackage.WrongPolicy;import javax.swing.*;import javax.swing.border.EmptyBorder;import javax.swing.text.BadLocationException;import javax.swing.text.DefaultHighlighter;import javax.swing.text.Highlighter;import javax.swing.text.Highlighter.HighlightPainter;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.HashSet;import java.util.Set;public class EnvServer {    public static void main(String[] args) throws InvalidName, AdapterInactive, ServantNotActive, WrongPolicy,            org.omg.CosNaming.NamingContextPackage.InvalidName, NotFound, CannotProceed {        EnvironmentalCentreImpl impl = new EnvironmentalCentreImpl();        SwingUtilities.invokeLater(new Runnable() {            @Override            public void run() {                JFrame frame = new JFrame( Env );                JLabel label = new JLabel( EnvironmentalCentre );                JTextArea area = new JTextArea();                Highlighter highlighter = area.getHighlighter();                HighlightPainter painter = new DefaultHighlighter.DefaultHighlightPainter(Color.pink);                area.setEditable(false);                ActionListener task = new ActionListener() {                    @Override                    public void actionPerformed(ActionEvent e) {                        // Polls all Regional Centres upon request and displays the results of readings                        // returned, highlighting readings of concern                        StringBuilder sb = new StringBuilder();                        Set Integer highlights = new HashSet Integer ();                        Integer len = null;                        for (Reading reading : impl.get_readings()) {                            if (reading.value 90) highlights.add(sb.length());                            sb.append(reading.toString() + );                            if (len == null) len = sb.length();                        }                        area.setText(sb.toString());                        for (Integer pos : highlights) {                            try {                                highlighter.addHighlight(pos, pos + len, painter);                            } catch (BadLocationException e1) {                                e1.printStackTrace();                            }                        }                        // Allows agencies (e.g. the Environment Agency, local councils, local pressure                        // groups, etc.) to register for notifications in case of alarms                        for (RegionalCentre region : impl.regions)                            for (Reading reading : region.get_readings())                                if (reading.value 90) for (Agency agency : impl.agencies)                                    if (agency.region().equals(region.name())) agency.raise_alarm(reading);                    }                };                Timer timer = new Timer(10000, task);                timer.start();                label.setBorder(new EmptyBorder(8, 8, 8, 8));                frame.getContentPane().setLayout(new BorderLayout());                frame.getContentPane().add(BorderLayout.NORTH, label);                frame.getContentPane().add(BorderLayout.CENTER, area);                frame.setSize(300, 200);                frame.setLocationRelativeTo(null);                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);                frame.setVisible(true);            }        });        String[] init = { -ORBInitialPort , 1050 };        ORB orb = ORB.init(init, null);        Object obj = orb.resolve_initial_references( RootPOA );        POA rootpoa = POAHelper.narrow(obj);        rootpoa.the_POAManager().activate();        Object ref = rootpoa.servant_to_reference(impl);        EnvironmentalCentre env = EnvironmentalCentreHelper.narrow(ref);        Object objref = orb.resolve_initial_references( NameService );        NamingContextExt ncref = NamingContextExtHelper.narrow(objref);        NameComponent path[] = ncref.to_name( Env );        ncref.rebind(path, env);        System.out.println( EnvironmentalCentre ready. );        orb.run();    }} 5.6 RegionServerpackage server;import EnvMon.*;import impl.RegionalCentreImpl;import org.omg.CORBA.ORB;import org.omg.CORBA.ORBPackage.InvalidName;import org.omg.CORBA.Object;import org.omg.CosNaming.NameComponent;import org.omg.CosNaming.NamingContextExt;import org.omg.CosNaming.NamingContextExtHelper;import org.omg.CosNaming.NamingContextPackage.CannotProceed;import org.omg.CosNaming.NamingContextPackage.NotFound;import org.omg.PortableServer.POA;import org.omg.PortableServer.POAHelper;import org.omg.PortableServer.POAManagerPackage.AdapterInactive;import org.omg.PortableServer.POAPackage.ServantNotActive;import org.omg.PortableServer.POAPackage.WrongPolicy;import javax.swing.*;import javax.swing.border.EmptyBorder;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Arrays;import java.util.Calendar;import java.util.Date;import java.util.stream.Collectors;import java.util.stream.Stream;public class RegionServer {    private static String name = null;    private static EnvironmentalCentre env = null;    public static void main(String[] args) throws InvalidName, AdapterInactive, ServantNotActive, WrongPolicy,            org.omg.CosNaming.NamingContextPackage.InvalidName, NotFound, CannotProceed {        if (args.length 1) {            System.out.println( java RegionServer name );            return;        }        name = args[0];        RegionalCentreImpl impl = new RegionalCentreImpl(name);        SwingUtilities.invokeLater(new Runnable() {            @Override            public void run() {                JFrame frame = new JFrame(name);                JLabel label = new JLabel( Region: + name + | connect(env) + (connect_env() ? ok : failed ));                JTextArea area = new JTextArea();                area.setEditable(false);                ActionListener task = new ActionListener() {                    @Override                    public void actionPerformed(ActionEvent e) {                        String readings = Arrays.stream(impl.get_readings()).map(a - a.toString())                                .collect(Collectors.joining( ));                        String log = impl.log.stream().map(a - a.toString()).collect(Collectors.joining( ));                        area.setText(readings + vvvv Log vvvv + log);                        // Triggers an alarm at the Environmental Centre when two alarms happen within a                        // specified time frame                        if (env != null) {                            Date date = new Date();                            Calendar calendar = Calendar.getInstance();                            calendar.setTime(date);                            int time = calendar.get(Calendar.HOUR) * 60 + calendar.get(Calendar.MINUTE) 1;                            Stream Reading alarms = impl.log.stream().filter(a - a.time time);                            if (alarms.count() 1) {                                try {                                    alarms.forEach(a - env.raise_alarm(a));                                } catch (Exception ex) {                                    env = null;                                }                                label.setText( Region: + name + | connect(env) failed );                            }                        }                    }                };                label.setBorder(new EmptyBorder(8, 8, 8, 8));                frame.getContentPane().setLayout(new BorderLayout());                frame.getContentPane().add(BorderLayout.NORTH, label);                frame.getContentPane().add(BorderLayout.CENTER, area);                frame.setSize(300, 200);                frame.setLocationRelativeTo(null);                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);                frame.setVisible(true);                Timer timer = new Timer(10000, task);                timer.start();            }        });        String[] init = { -ORBInitialPort , 1050 };        ORB orb = ORB.init(init, null);        Object obj = orb.resolve_initial_references( RootPOA );        POA rootpoa = POAHelper.narrow(obj);        rootpoa.the_POAManager().activate();        Object ref = rootpoa.servant_to_reference(impl);        RegionalCentre region = RegionalCentreHelper.narrow(ref);        Object objref = orb.resolve_initial_references( NameService );        NamingContextExt ncref = NamingContextExtHelper.narrow(objref);        NameComponent path[] = ncref.to_name( Region + name);        ncref.rebind(path, region);        System.out.println( RegionalCentre + name + ready. );        orb.run();    }    public static boolean connect_env() {        String[] args = { -ORBInitialPort , 1050 };        try {            ORB orb = ORB.init(args, null);            Object objref = orb.resolve_initial_references( NameService );            NamingContextExt ncref = NamingContextExtHelper.narrow(objref);            env = (EnvironmentalCentre) EnvironmentalCentreHelper.narrow(ncref.resolve_str( Env ));            env.register_regional_centre(name);            return true;        } catch (Exception e) {            e.printStackTrace();            return false;        }    }} 5.7 MonitorServerpackage server;import EnvMon.*;import impl.MonitorImpl;import org.omg.CORBA.ORB;import org.omg.CORBA.ORBPackage.InvalidName;import org.omg.CORBA.Object;import org.omg.CosNaming.NameComponent;import org.omg.CosNaming.NamingContextExt;import org.omg.CosNaming.NamingContextExtHelper;import org.omg.CosNaming.NamingContextPackage.CannotProceed;import org.omg.CosNaming.NamingContextPackage.NotFound;import org.omg.PortableServer.POA;import org.omg.PortableServer.POAHelper;import org.omg.PortableServer.POAManagerPackage.AdapterInactive;import org.omg.PortableServer.POAPackage.ServantNotActive;import org.omg.PortableServer.POAPackage.WrongPolicy;import javax.swing.*;import javax.swing.border.EmptyBorder;import java.awt.*;public class MonitorServer {    private static String name = null, location = null;    private static RegionalCentre region = null;    private static int minute = 0;    public static void main(String[] args) throws InvalidName, AdapterInactive, ServantNotActive, WrongPolicy,            org.omg.CosNaming.NamingContextPackage.InvalidName, NotFound, CannotProceed {        if (args.length 2) {            System.out.println( java Monitor name location );            return;        }        name = args[0];        location = args[1];        MonitorImpl impl = new MonitorImpl(name, location);        SwingUtilities.invokeLater(new Runnable() {            @Override            public void run() {                JFrame frame = new JFrame(name);                frame.getContentPane().setLayout(new GridLayout(3, 1));                JLabel label = new JLabel( Monitor: + name + | Location: + location + | + impl.value);                JSlider slider = new JSlider();                slider.setValue(0);                slider.addChangeListener(e - {                    label.setText( Monitor: + name + | Location: + location + | + impl.value);                    impl.value = slider.getValue();                    // Can identify anomalous or potentially dangerous readings of nitrogen oxides                    // and alert the Regional Centre immediately                    Reading reading = impl.get_reading();                    if (reading != null) {                        int time = reading.time;                        if (region != null impl.value 90 minute != time) {                            try {                                region.raise_alarm(impl.get_reading());                            } catch (Exception e1) {                                region = null;                            }                            minute = time;                        }                    }                });                JTextField textField = new JTextField(20);                JButton button = new JButton( Connect RegionalCentre );                button.addActionListener(e - {                    if (region != null) {                        textField.setEditable(false);                        button.setText( Connected );                        button.setEnabled(false);                        return;                    }                    String id = textField.getText();                    textField.setText( Connecting );                    textField.setEditable(false);                    if (connect_region(id)) {                        textField.setText(id);                        button.setText( Connected );                        button.setEnabled(false);                    } else {                        textField.setText( Connect failed. );                        textField.setEditable(true);                    }                });                label.setBorder(new EmptyBorder(16, 16, 0, 16));                slider.setBorder(new EmptyBorder(0, 8, 0, 8));                JPanel panel = new JPanel();                panel.add(textField);                panel.add(button);                panel.setBorder(new EmptyBorder(8, 8, 8, 8));                frame.getContentPane().add(label);                frame.getContentPane().add(slider);                frame.getContentPane().add(panel);                frame.pack();                frame.setLocationRelativeTo(null);                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);                frame.setVisible(true);            }        });        args[0] = -ORBInitialPort ;        args[1] = 1050 ;        ORB orb = ORB.init(args, null);        Object obj = orb.resolve_initial_references( RootPOA );        POA rootpoa = POAHelper.narrow(obj);        rootpoa.the_POAManager().activate();        Object ref = rootpoa.servant_to_reference(impl);        Monitor monitor = MonitorHelper.narrow(ref);        Object objref = orb.resolve_initial_references( NameService );        NamingContextExt ncref = NamingContextExtHelper.narrow(objref);        NameComponent path[] = ncref.to_name( Monitor + name);        ncref.rebind(path, monitor);        System.out.println( Monitor + name + ready. );        orb.run();    }    public static boolean connect_region(String id) {        String[] args = { -ORBInitialPort , 1050 };        try {            ORB orb = ORB.init(args, null);            Object objref = orb.resolve_initial_references( NameService );            NamingContextExt ncref = NamingContextExtHelper.narrow(objref);            region = (RegionalCentre) RegionalCentreHelper.narrow(ncref.resolve_str( Region + id));            return region.add_monitor(name, location);        } catch (Exception e) {            e.printStackTrace();            return false;        }    }} 5.8 AgencyServerpackage server;import EnvMon.Agency;import EnvMon.AgencyHelper;import EnvMon.EnvironmentalCentre;import EnvMon.EnvironmentalCentreHelper;import impl.AgencyImpl;import org.omg.CORBA.ORB;import org.omg.CORBA.ORBPackage.InvalidName;import org.omg.CORBA.Object;import org.omg.CosNaming.NameComponent;import org.omg.CosNaming.NamingContextExt;import org.omg.CosNaming.NamingContextExtHelper;import org.omg.CosNaming.NamingContextPackage.CannotProceed;import org.omg.CosNaming.NamingContextPackage.NotFound;import org.omg.PortableServer.POA;import org.omg.PortableServer.POAHelper;import org.omg.PortableServer.POAManagerPackage.AdapterInactive;import org.omg.PortableServer.POAPackage.ServantNotActive;import org.omg.PortableServer.POAPackage.WrongPolicy;public class AgencyServer {    private static String name = null, contact = null, region = null;    private static EnvironmentalCentre env = null;    public static void main(String[] args) throws InvalidName, AdapterInactive, ServantNotActive, WrongPolicy,            org.omg.CosNaming.NamingContextPackage.InvalidName, NotFound, CannotProceed {        if (args.length 3) {            System.out.println( java Agancy name contact region );            return;        }        name = args[0];        contact = args[1];        region = args[2];        AgencyImpl impl = new AgencyImpl(name, contact, region);        String[] init = { -ORBInitialPort , 1050 };        ORB orb = ORB.init(init, null);        Object obj = orb.resolve_initial_references( RootPOA );        POA rootpoa = POAHelper.narrow(obj);        rootpoa.the_POAManager().activate();        Object ref = rootpoa.servant_to_reference(impl);        Agency agency = AgencyHelper.narrow(ref);        Object objref = orb.resolve_initial_references( NameService );        NamingContextExt ncref = NamingContextExtHelper.narrow(objref);        NameComponent path[] = ncref.to_name( Agency + name);        ncref.rebind(path, agency);        System.out.println( Agency + name + ready. );        if (connect_env()) {            System.out.println( Agency EnvironmentalCentre ok. );        } else {            System.out.println( Agency EnvironmentalCentre failed. );        }        orb.run();    }    public static boolean connect_env() {        String[] args = { -ORBInitialPort , 1050 };        try {            ORB orb = ORB.init(args, null);            Object objref = orb.resolve_initial_references( NameService );            NamingContextExt ncref = NamingContextExtHelper.narrow(objref);            env = (EnvironmentalCentre) EnvironmentalCentreHelper.narrow(ncref.resolve_str( Env ));            env.register_agency(name, contact, region);            return true;        } catch (Exception e) {            e.printStackTrace();            return false;        }    }}   6. References1. https://en.wikipedia.org/wiki/Common_Object_Request_Broker_Architecture2. S. Vinoski. CORBA overview: CORBA: Integrating Diverse Applications Within Distributed Heterogeneous Environments[J]. IEEE Communications Magazine, 1997, 35(2):46-55.3. Orfali R, Dan H. Client/server programming with Java and CORBA[M]// Client/server programming with Java and CORBA /. J. Wiley Sons, 1998.4. https://en.wikipedia.org/wiki/Java_(programming_language)5. https://scotch.io/bar-talk/s-o-l-i-d-the-first-five-principles-of-object-oriented-design6. Eckel B. Thinking in Java[M]. China Machine Press, 2007.7. https://docs.oracle.com/javase/7/docs/api/8. Hu J, Zhou B, Jia Y, et al. Research and Implementation of CORBA Web Services[M]// Conceptual Modeling for Advanced Application Domains. Springer Berlin Heidelberg, 2004:314-322.9. Emmerich W, Kaveh N. Component technologies: Java Beans, COM, CORBA, RMI, EJB and the CORBA Component Model[C]// European Software Engineering Conference Held Jointly with, ACM Sigsoft International Symposium on Foundations of Software Engineering. ACM, 2001:311-312.10. https://en.wikipedia.org/wiki/Swing_(Java)11. http://www.ciaranmchale.com/corba-explained-simply/benefits-of-corba.html 最先出自315代写 cs代写 作业代写 java代写 代写java服务 代写java CUBA合作:315代写

所有的编程代写范围:essayghost为美国、加拿大、英国、澳洲的留学生提供C语言代写、代写C语言、C语言代做、代做C语言、数据库代写、代写数据库、数据库代做、代做数据库、Web作业代写、代写Web作业、Web作业代做、代做Web作业、Java代写、代写Java、Java代做、代做Java、Python代写、代写Python、Python代做、代做Python、C/C++代写、代写C/C++、C/C++代做、代做C/C++、数据结构代写、代写数据结构、数据结构代做、代做数据结构等留学生编程作业代写服务。