Package com.cloud.bridge.service.core.ec2

Examples of com.cloud.bridge.service.core.ec2.EC2ModifyImageAttribute


    request.setDevice( avt.getDevice());
    return toDetachVolumeResponse( engine.detachVolume( request ));
  }

  public ModifyImageAttributeResponse modifyImageAttribute(ModifyImageAttribute modifyImageAttribute) {
    EC2ModifyImageAttribute request = new EC2ModifyImageAttribute();
   
    ModifyImageAttributeType miat = modifyImageAttribute.getModifyImageAttribute();
    ModifyImageAttributeTypeChoice_type0 item = miat.getModifyImageAttributeTypeChoice_type0();

    AttributeValueType description = item.getDescription();
   
    LaunchPermissionOperationType launchPermOp = item.getLaunchPermission();
   
    if (null != description) {
            request.setImageId(miat.getImageId());
            request.setAttribute(ImageAttribute.description);
        request.setDescription(description.getValue());
        return toModifyImageAttributeResponse( engine.modifyImageAttribute( request ));
    }else if(launchPermOp != null){
            request.setImageId(miat.getImageId());
            request.setAttribute(ImageAttribute.launchPermission);
            if(launchPermOp.getAdd() != null){
                setAccountOrGroupList(launchPermOp.getAdd().getItem(), request, "add");
            }else if(launchPermOp.getRemove() != null){
                setAccountOrGroupList(launchPermOp.getRemove().getItem(), request, "remove");
            }
View Full Code Here


   *
   * @see <a href="http://docs.amazonwebservices.com/AWSEC2/2010-11-15/APIReference/index.html?ApiReference-query-ResetInstanceAttribute.html">ResetInstanceAttribute</a>
   */

  public ResetImageAttributeResponse resetImageAttribute(ResetImageAttribute resetImageAttribute) {
      EC2ModifyImageAttribute request = new EC2ModifyImageAttribute();
    ResetImageAttributeType riat = resetImageAttribute.getResetImageAttribute();
    EmptyElementType elementType = riat.getResetImageAttributesGroup().getLaunchPermission();
    if(elementType != null){
        request.setImageId( riat.getImageId());
        request.setAttribute(ImageAttribute.launchPermission);
            EC2ImageLaunchPermission launchPermission = new EC2ImageLaunchPermission();
            launchPermission.setLaunchPermOp(EC2ImageLaunchPermission.Operation.reset);
            request.addLaunchPermission(launchPermission);
        return toResetImageAttributeResponse( engine.modifyImageAttribute( request ));
    }
    throw new EC2ServiceException( ClientError.Unsupported, "Unsupported - can only reset image launchPermission" );
  }
View Full Code Here

        RegisterImageResponse EC2response = EC2SoapServiceImpl.toRegisterImageResponse(ServiceProvider.getInstance().getEC2Engine().registerImage(EC2request));
        serializeResponse(response, EC2response);
    }

    private void modifyImageAttribute(HttpServletRequest request, HttpServletResponse response) throws ADBException, XMLStreamException, IOException {
        EC2ModifyImageAttribute ec2request = new EC2ModifyImageAttribute();

        String[] imageId = request.getParameterValues("ImageId");
        if (imageId != null && imageId.length > 0)
            ec2request.setImageId(imageId[0]);
        else {
            throw new EC2ServiceException(ClientError.MissingParamter, "Missing required parameter - ImageId");
        }

        String[] description = request.getParameterValues("Description.Value");
        if (description != null && description.length > 0) {
            ec2request.setAttribute(ImageAttribute.description);
            ec2request.setDescription(description[0]);
        } else {
            //add all launch permissions to ec2request
            ec2request = addLaunchPermImageAttribute(request, ec2request);
            if (ec2request.getLaunchPermissionSet().length > 0)
                ec2request.setAttribute(ImageAttribute.launchPermission);
            else {
                throw new EC2ServiceException(ClientError.MissingParamter, "Missing required parameter - Description/LaunchPermission should be provided");
            }
        }
View Full Code Here

        return ec2request;
    }

    private void resetImageAttribute(HttpServletRequest request, HttpServletResponse response) throws ADBException, XMLStreamException, IOException {
        EC2ModifyImageAttribute ec2request = new EC2ModifyImageAttribute();

        String[] imageId = request.getParameterValues("ImageId");
        if (imageId != null && imageId.length > 0)
            ec2request.setImageId(imageId[0]);
        else {
            throw new EC2ServiceException(ClientError.MissingParamter, "Missing required parameter - ImageId");
        }

        String[] attribute = request.getParameterValues("Attribute");
        if (attribute != null && attribute.length > 0) {
            if (attribute[0].equalsIgnoreCase("launchPermission"))
                ec2request.setAttribute(ImageAttribute.launchPermission);
            else {
                throw new EC2ServiceException(ClientError.MissingParamter, "Missing required parameter - Description/LaunchPermission should be provided");
            }
        } else {
            throw new EC2ServiceException(ClientError.MissingParamter, "Missing required parameter - Attribute");
        }

        EC2ImageLaunchPermission launchPermission = new EC2ImageLaunchPermission();
        launchPermission.setLaunchPermOp(EC2ImageLaunchPermission.Operation.reset);
        ec2request.addLaunchPermission(launchPermission);

        // -> execute the request
        ResetImageAttributeResponse EC2response =
            EC2SoapServiceImpl.toResetImageAttributeResponse(ServiceProvider.getInstance().getEC2Engine().modifyImageAttribute(ec2request));
        serializeResponse(response, EC2response);
View Full Code Here

    }

    private void modifyImageAttribute( HttpServletRequest request, HttpServletResponse response )
        throws ADBException, XMLStreamException, IOException {
       
        EC2ModifyImageAttribute EC2request = new EC2ModifyImageAttribute();

        String[] imageId = request.getParameterValues( "ImageId" );
    if ( null != imageId && 0 < imageId.length )
       EC2request.setImageId(imageId[0]);
    else {
        response.sendError(530, "Missing ImageId parameter" );
        return;
    }

    int nCount = 1;
        do {
            // LaunchPermission.Add.n.UserId           
            String[] addedUserId = request.getParameterValues("LaunchPermission.Add." + nCount + ".UserId");
            if (addedUserId != null && addedUserId.length > 0) {
                EC2request.addAddedUser(addedUserId[0]);
            } else
                break;
            String[] addedGroup = request.getParameterValues("LaunchPermission.Add." + nCount + ".Group");
            if (addedGroup != null && addedGroup.length > 0) {
                // according to api, all is the only legitimate value
                if (addedGroup[0].equalsIgnoreCase("all")) {
                    EC2request.setIsPublic(true);
                }
                return;
            }
        } while (true);
       
        nCount = 1;
        do {
            String[] removedUserId = request.getParameterValues("LaunchPermission.Remove." + nCount + ".UserId");
            if (removedUserId != null && removedUserId.length > 0) {
                EC2request.addRemovedUser(removedUserId[0]);
            } else
                break;
            nCount++;
            String[] removedGroup = request.getParameterValues("LaunchPermission.Remove." + nCount + ".Group");
            if (removedGroup != null && removedGroup.length > 0) {
                // according to api, all is the only legitimate value
                if (removedGroup[0].equalsIgnoreCase("all")) {
                    EC2request.setIsPublic(false);
                }
            }
         } while(true);
                       
    // unsupported description...
        String[] description = request.getParameterValues( "Description" );
    if ( null != description && 0 < description.length )
       EC2request.setDescription( description[0] );

    // -> execute the request
    ModifyImageAttributeResponse EC2response = EC2SoapServiceImpl.toModifyImageAttributeResponse(
            ServiceProvider.getInstance().getEC2Engine().modifyImageAttribute(EC2request));
    serializeResponse(response, EC2response);
View Full Code Here

    request.setDevice( avt.getDevice());
    return toDetachVolumeResponse( engine.detachVolume( request ));
  }

  public ModifyImageAttributeResponse modifyImageAttribute(ModifyImageAttribute modifyImageAttribute) {
    EC2ModifyImageAttribute EC2request = new EC2ModifyImageAttribute();
   
    ModifyImageAttributeType miat = modifyImageAttribute.getModifyImageAttribute();
    ModifyImageAttributeTypeChoice_type0 item = miat.getModifyImageAttributeTypeChoice_type0();

    // description is unsupported
    AttributeValueType description = item.getDescription();
   
        LaunchPermissionOperationType launchPermission = item.getLaunchPermission();
        LaunchPermissionListType launchAdd = launchPermission.getAdd();
        LaunchPermissionItemType[] adds = null;
        if (launchAdd != null) {
            adds = launchAdd.getItem();
        }
        LaunchPermissionListType launchRemove = launchPermission.getRemove();
        LaunchPermissionItemType[] removes = null;
        if (launchRemove != null) {
            removes = launchRemove.getItem();
        }
       
        // we'll silently ignore productcodes for now
        // ProductCodeListType productCodes = item.getProductCodes();

        // set imageId
        EC2request.setImageId(miat.getImageId());
        // add users/group
        if (adds != null) {
            for (LaunchPermissionItemType addItems : adds) {
                if (addItems.getUserId() != null) {
                    EC2request.addAddedUser(addItems.getUserId());
                }
                // according to api, all is the only legitimate value
                if (addItems.getGroup() != null && addItems.getGroup().equalsIgnoreCase("all")) {
                    EC2request.setIsPublic(true);
                }
            }
        }
        // add remove users/group
        if (removes != null) {
            for (LaunchPermissionItemType removeItems : removes) {
                if (removeItems.getUserId() != null) {
                    EC2request.addRemovedUser(removeItems.getUserId());
                }
                // according to api, all is the only legitimate value
                if (removeItems.getGroup() != null && removeItems.getGroup().equalsIgnoreCase("all")) {
                    EC2request.setIsPublic(false);
                }
            }
        }
        // unsupported description
        if (description != null) {
            EC2request.setDescription(description.getValue());
        }
       
        return toModifyImageAttributeResponse(engine.modifyImageAttribute(EC2request));
 
View Full Code Here

   *
   * @see <a href="http://docs.amazonwebservices.com/AWSEC2/2010-11-15/APIReference/index.html?ApiReference-query-ResetInstanceAttribute.html">ResetInstanceAttribute</a>
   */

  public ResetImageAttributeResponse resetImageAttribute(ResetImageAttribute resetImageAttribute) {
        EC2ModifyImageAttribute EC2request = new EC2ModifyImageAttribute();
    ResetImageAttributeType riat = resetImageAttribute.getResetImageAttribute();
   
    EC2request.setImageId(riat.getImageId());
    EC2request.setReset(true);
    return toResetImageAttributeResponse( engine.modifyImageAttribute(EC2request));
  }
View Full Code Here

        serializeResponse(response, EC2response);
    }

    private void resetImageAttribute( HttpServletRequest request, HttpServletResponse response )
        throws ADBException, XMLStreamException, IOException {
        EC2ModifyImageAttribute EC2request = new EC2ModifyImageAttribute();
   
        String[] imageId = request.getParameterValues( "ImageId" );
    if ( null != imageId && 0 < imageId.length )
       EC2request.setImageId(imageId[0]);
    else {
        response.sendError(530, "Missing ImageId parameter" );
        return;
    }
   
    EC2request.setReset(true);
   
    ResetImageAttributeResponse EC2response = EC2SoapServiceImpl.toResetImageAttributeResponse(
            ServiceProvider.getInstance().getEC2Engine().modifyImageAttribute(EC2request));
    serializeResponse(response, EC2response);
    }
View Full Code Here

        request.setDevice(avt.getDevice());
        return toDetachVolumeResponse(engine.detachVolume(request));
    }

    public ModifyImageAttributeResponse modifyImageAttribute(ModifyImageAttribute modifyImageAttribute) {
        EC2ModifyImageAttribute request = new EC2ModifyImageAttribute();

        ModifyImageAttributeType miat = modifyImageAttribute.getModifyImageAttribute();
        ModifyImageAttributeTypeChoice_type0 item = miat.getModifyImageAttributeTypeChoice_type0();

        AttributeValueType description = item.getDescription();

        LaunchPermissionOperationType launchPermOp = item.getLaunchPermission();

        if (null != description) {
            request.setImageId(miat.getImageId());
            request.setAttribute(ImageAttribute.description);
            request.setDescription(description.getValue());
            return toModifyImageAttributeResponse(engine.modifyImageAttribute(request));
        } else if (launchPermOp != null) {
            request.setImageId(miat.getImageId());
            request.setAttribute(ImageAttribute.launchPermission);
            if (launchPermOp.getAdd() != null) {
                setAccountOrGroupList(launchPermOp.getAdd().getItem(), request, "add");
            } else if (launchPermOp.getRemove() != null) {
                setAccountOrGroupList(launchPermOp.getRemove().getItem(), request, "remove");
            }
View Full Code Here

     *
     * @see <a href="http://docs.amazonwebservices.com/AWSEC2/2010-11-15/APIReference/index.html?ApiReference-query-ResetInstanceAttribute.html">ResetInstanceAttribute</a>
     */

    public ResetImageAttributeResponse resetImageAttribute(ResetImageAttribute resetImageAttribute) {
        EC2ModifyImageAttribute request = new EC2ModifyImageAttribute();
        ResetImageAttributeType riat = resetImageAttribute.getResetImageAttribute();
        EmptyElementType elementType = riat.getResetImageAttributesGroup().getLaunchPermission();
        if (elementType != null) {
            request.setImageId(riat.getImageId());
            request.setAttribute(ImageAttribute.launchPermission);
            EC2ImageLaunchPermission launchPermission = new EC2ImageLaunchPermission();
            launchPermission.setLaunchPermOp(EC2ImageLaunchPermission.Operation.reset);
            request.addLaunchPermission(launchPermission);
            return toResetImageAttributeResponse(engine.modifyImageAttribute(request));
        }
        throw new EC2ServiceException(ClientError.Unsupported, "Unsupported - can only reset image launchPermission");
    }
View Full Code Here

TOP

Related Classes of com.cloud.bridge.service.core.ec2.EC2ModifyImageAttribute

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.