Examples of RmJobState


Examples of org.apache.uima.ducc.transport.event.rm.RmJobState

                refused.putAll(refusedJobs);
                refusedJobs.clear();
            }
           
            for ( IRmJob j : refused.values() ) {
                RmJobState rjs = new RmJobState(j.getId(), j.getRefusalReason());
                rjs.setDuccType(j.getDuccType());
                rmJobState.put(j.getId(), rjs);
            }

            // Now handle the jobs that made it into the scheduler proper
            Map<DuccId, IRmJob> jobs = jmu.getAllJobs();
            Map<DuccId, HashMap<Share, Share>> shrunken = jmu.getShrunkenShares();
            Map<DuccId, HashMap<Share, Share>> expanded = jmu.getExpandedShares();
//          for ( DuccId id : expanded.keySet() ) {
//              logger// .info(methodName, id, "Fetched these expanded shares:", expanded.get(id));
//          }

            /**
             * Convert RM internal state into the simplified externally published state.
             */
            for (IRmJob j : jobs.values()) {

                if ( j.isRefused() ) {
                    RmJobState rjs = new RmJobState(j.getId(), j.getRefusalReason());
                    rjs.setDuccType(j.getDuccType());
                    rmJobState.put(j.getId(), rjs);
                    jobRemoved(j.getId());
                    logger.warn(methodName, j.getId(), "Refusal: ", j.getRefusalReason());
                    continue;
                }

                Map<DuccId, IResource> all_shares      = new LinkedHashMap<DuccId, IResource>();
                Map<DuccId, IResource> shrunken_shares = new LinkedHashMap<DuccId, IResource>();
                Map<DuccId, IResource> expanded_shares = new LinkedHashMap<DuccId, IResource>();
                Map<Share, Share> shares = null;
                Map<Share, Share> redrive = null;

                if (isPendingNonPreemptable(j) ) {               
                    logger.info(methodName, j.getId(), "Delaying publication of expansion because it's not yet complete.");
                } else {
                    shares = j.getAssignedShares();
                    if ( shares != null ) {
                        ArrayList<Share> sorted = new ArrayList<Share>(shares.values());
                        Collections.sort(sorted, new RmJob.ShareByInvestmentSorter());
                        for ( Share s : sorted ) {
                            Resource r = new Resource(s.getId(), s.getNode(), s.isPurged(), s.getShareOrder(), s.getInitializationTime());
                            all_shares.put(s.getId(), r);
                        }
                        redrive = sanityCheckForOrchestrator(j, shares, expanded.get(j.getId()));
                    }
                   
                    shares = shrunken.get(j.getId());
                    if ( shares != null ) {
                        for ( Share s : shares.values() ) {
                            Resource r = new Resource(s.getId(), s.getNode(), s.isPurged(), s.getShareOrder(), 0);
                            shrunken_shares.put(s.getId(), r);
                        }
                    }                                       
                   
                    shares = expanded.get(j.getId());
                    if ( shares != null ) {                   
                        for ( Share s : shares.values() ) {
                            Resource r = new Resource(s.getId(), s.getNode(), s.isPurged(), s.getShareOrder(), 0);
                            expanded_shares.put(s.getId(), r);
                        }
                    }
                   
                    if ( redrive != null ) {
                        for ( Share s : redrive.values() ) {
                            Resource r = new Resource(s.getId(), s.getNode(), s.isPurged(), s.getShareOrder(), 0);
                            expanded_shares.put(s.getId(), r);
                        }
                    }
                }
               
                RmJobState rjs = new RmJobState(j.getId(), all_shares, shrunken_shares, expanded_shares);
                rjs.setDuccType(j.getDuccType());
                rmJobState.put(j.getId(), rjs);
            }

            previousJobState = rmJobState;
        }       
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.