Package org.rhq.core.domain.content

Examples of org.rhq.core.domain.content.InstalledPackage


        } else {
            // At this point we know a PackageVersion existed previously in the DB already. If it is already
            // installed to the resource then we are done, and we can remove it from the doomed package list.
            for (Iterator<InstalledPackage> i = doomedPackages.iterator(); i.hasNext();) {
                InstalledPackage ip = i.next();
                PackageVersion pv = ip.getPackageVersion();
                if (pv.getId() == packageVersion.getId()) {
                    i.remove();
                    return;
                }
            }
        }

        // At this point, we have the package and package version in the system (now added if they weren't already)
        // We've also punched out early if we already knew about the installed package, so we won't add another
        // reference from the resource to the package nor another audit trail entry saying it was discovered.

        // Create a new installed package entry in the audit
        InstalledPackage newlyInstalledPackage = new InstalledPackage();
        newlyInstalledPackage.setPackageVersion(packageVersion);
        newlyInstalledPackage.setResource(resource);
        newlyInstalledPackage.setInstallationDate(discoveredPackage.getInstallationTimestamp());

        entityManager.persist(newlyInstalledPackage);

        // Create an audit trail entry to show how this package was added to the system
        InstalledPackageHistory history = new InstalledPackageHistory();
View Full Code Here


        long timestamp = System.currentTimeMillis();

        for (int installedPackageId : installedPackageIds) {
            // Load the InstalledPackage to get its package version for the relationship
            InstalledPackage ip = entityManager.find(InstalledPackage.class, installedPackageId);
            PackageVersion packageVersion = ip.getPackageVersion();

            // Create the history entity
            InstalledPackageHistory history = new InstalledPackageHistory();
            history.setContentServiceRequest(persistedRequest);
            history.setPackageVersion(packageVersion);
View Full Code Here

        }

        // Load entities for references later in the method
        Resource resource = entityManager.find(Resource.class, resourceId);
        Agent agent = resource.getAgent();
        InstalledPackage installedPackage = entityManager.find(InstalledPackage.class, installedPackageId);

        // Persist in separate transaction so it is committed immediately, before the request is sent to the agent
        ContentServiceRequest persistedRequest = contentManager.createRetrieveBitsRequest(resourceId, user.getName(),
            installedPackageId);
View Full Code Here

            throw new PermissionException("User [" + user.getName()
                + "] does not have permission to obtain package content for installed package id ["
                + installedPackageId + "] for resource ID [" + resourceId + "]");
        }
        try {
            InstalledPackage installedPackage = entityManager.find(InstalledPackage.class, installedPackageId);
            PackageBits bits = installedPackage.getPackageVersion().getPackageBits();
            if (bits == null || bits.getBlob().getBits().length == 0) {
                long start = System.currentTimeMillis();
                retrieveBitsFromResource(user, resourceId, installedPackageId);

                bits = installedPackage.getPackageVersion().getPackageBits();
                while ((bits == null || bits.getBlob().getBits() == null)
                    && (System.currentTimeMillis() - start < 30000)) {
                    try {
                        Thread.sleep(2000);
                    } catch (InterruptedException e) {
                    }
                    entityManager.clear();
                    installedPackage = entityManager.find(InstalledPackage.class, installedPackageId);
                    bits = installedPackage.getPackageVersion().getPackageBits();
                }

                if (bits == null) {
                    throw new RuntimeException("Unable to retrieve package bits for resource: " + resourceId
                        + " and package: " + installedPackageId + " before timeout.");
View Full Code Here

        persistedRequest.setStatus(ContentRequestStatus.IN_PROGRESS);

        long timestamp = System.currentTimeMillis();

        // Load the InstalledPackage to get its package version for the relationship
        InstalledPackage ip = entityManager.find(InstalledPackage.class, installedPackageId);
        PackageVersion packageVersion = ip.getPackageVersion();

        // Create the history entity
        InstalledPackageHistory history = new InstalledPackageHistory();
        history.setContentServiceRequest(persistedRequest);
        history.setPackageVersion(packageVersion);
View Full Code Here

        return ret;
    }

    @Override
    public InstalledPackage getBackingPackageForResource(Subject subject, int resourceId) {
        InstalledPackage result = null;

        // check if the resource is content backed if not, return null
        Resource res = resourceManager.getResourceById(subject, resourceId);
        ResourceType type = res.getResourceType();
        if (!ResourceCreationDataType.CONTENT.equals(type.getCreationDataType())) {
            return null;
        }

        InstalledPackageCriteria criteria = new InstalledPackageCriteria();
        criteria.addFilterResourceId(resourceId);
        PageList<InstalledPackage> ips = findInstalledPackagesByCriteria(subject, criteria);

        // should not be more than 1
        if ((null != ips) && (ips.size() > 0)) {
            int mostRecentPackageIndex = 0;

            if (ips.size() > 1) {
                for (int index = 1; index < ips.size(); index++) {
                    if (ips.get(index).getInstallationDate() > ips.get(mostRecentPackageIndex).getInstallationDate()) {
                        mostRecentPackageIndex = index;
                    }
                }
            }

            result = ips.get(mostRecentPackageIndex);

            // fetch these
            result.getPackageVersion().getGeneralPackage().getId();
            result.getPackageVersion().getGeneralPackage().getPackageType().getId();
            result.getPackageVersion().getArchitecture().getId();
        }

        return result;
    }
View Full Code Here

                LOG.error("Message digest for the package bits failed.", e);
            }

            String packageVersion = "[sha256=" + sha + "]";

            InstalledPackage oldPackage = getBackingContent();

            ContentManagerRemote contentManager = remoteClient.getProxy(ContentManagerRemote.class);

            ContentUploader contentUploader = new ContentUploader(contentManager);
            String temporaryContentHandle = contentUploader.upload(file);

            PackageVersion pv = contentManager.createPackageVersionWithDisplayVersion(remoteClient.getSubject(),
                oldPackage.getPackageVersion().getGeneralPackage().getName(), oldPackage.getPackageVersion()
                    .getGeneralPackage().getPackageType().getId(), packageVersion, displayVersion, oldPackage
                    .getPackageVersion().getArchitecture().getId(), temporaryContentHandle);

            contentManager.deployPackagesWithNote(remoteClient.getSubject(), new int[] { resourceClientProxy.getId() },
                new int[] { pv.getId() }, "CLI deployment request");
        }
View Full Code Here

                new int[] { pv.getId() }, "CLI deployment request");
        }

        public void retrieveBackingContent(String fileName) throws IOException {

            InstalledPackage installedPackage = getBackingContent();

            if (installedPackage != null) {
                if (fileName == null) {
                    fileName = installedPackage.getPackageVersion().getFileName();
                }

                File file = new File(fileName);

                byte[] data = remoteClient.getProxy(ContentManagerRemote.class).getPackageBytes(
                    remoteClient.getSubject(), resourceClientProxy.resourceId, installedPackage.getId());

                FileOutputStream fos = new FileOutputStream(file);
                try {
                    fos.write(data);
                } finally {
View Full Code Here

public class SerializableTest {
    public void testSerialization() {
        List<Serializable> objects = new ArrayList<Serializable>();
        Serializable[] simpleObjects = new Serializable[] { new AvailabilityReport("fakeAgent"), new PackageType(),
            new Architecture(), new Repo(), new ContentServiceRequest(), new ContentSource(), new ContentSourceType(),
            new InstalledPackage(), new Package(), new PackageInstallationStep(), new PackageType(),
            new PackageVersion() };
        objects.addAll(Arrays.asList(simpleObjects));

        ResourceType resourceType = new ResourceType("name", "plugin", ResourceCategory.PLATFORM, null);
        Resource resource = new Resource("key", "name", resourceType);
View Full Code Here

TOP

Related Classes of org.rhq.core.domain.content.InstalledPackage

Copyright © 2018 www.massapicom. 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.