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

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


        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

    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

        serializeResponse(response, EC2response);
    }

    private void modifyInstanceAttribute(HttpServletRequest request, HttpServletResponse response)
            throws ADBException, XMLStreamException, IOException {
        EC2ModifyInstanceAttribute ec2Request = new EC2ModifyInstanceAttribute();

        String[] instanceId = request.getParameterValues( "InstanceId" );
        if ( instanceId != null && instanceId.length > 0 )
             ec2Request.setInstanceId(instanceId[0]);
        else {
            throw new EC2ServiceException( ClientError.MissingParamter, "Missing required parameter - InstanceId");
        }

        String[] instanceType = request.getParameterValues( "InstanceType.Value" );
        String[] userData  = request.getParameterValues( "UserData.Value" );

        if ( instanceType != null && userData != null ) {
            throw new EC2ServiceException( ClientError.InvalidParameterCombination, "Only one attribute can be" +
                    " specified at a time");
        }
        if ( instanceType != null && instanceType.length > 0 ) {
            ec2Request.setInstanceType(instanceType[0]);
        } else if ( userData != null && userData.length > 0 ) {
            ec2Request.setUserData(userData[0]);
        } else {
            throw new EC2ServiceException( ClientError.MissingParamter,
                    "Missing parameter - InstanceType/UserData should be provided");
        }
View Full Code Here

    }
    throw new EC2ServiceException( ClientError.Unsupported, "Unsupported - can only modify image description or launchPermission");
 

    public ModifyInstanceAttributeResponse modifyInstanceAttribute(ModifyInstanceAttribute modifyInstanceAttribute) {
        EC2ModifyInstanceAttribute request = new EC2ModifyInstanceAttribute();

        ModifyInstanceAttributeType modifyInstanceAttribute2 = modifyInstanceAttribute.getModifyInstanceAttribute();
        ModifyInstanceAttributeTypeChoice_type0 mia = modifyInstanceAttribute2.getModifyInstanceAttributeTypeChoice_type0();

        request.setInstanceId(modifyInstanceAttribute2.getInstanceId());

        // we only support instanceType and userData
        if (mia.getInstanceType() != null) {
            request.setInstanceType(mia.getInstanceType().getValue());
        } else if (mia.getUserData() != null) {
            request.setUserData(mia.getUserData().getValue());
        } else {
            throw new EC2ServiceException( ClientError.MissingParamter,
                    "Missing required parameter - InstanceType/UserData should be provided");
        }
        return toModifyInstanceAttributeResponse(engine.modifyInstanceAttribute(request));
View Full Code Here

            EC2SoapServiceImpl.toDescribeInstanceAttributeResponse(ServiceProvider.getInstance().getEC2Engine().describeInstances(EC2request));
        serializeResponse(response, EC2response);
    }

    private void modifyInstanceAttribute(HttpServletRequest request, HttpServletResponse response) throws ADBException, XMLStreamException, IOException {
        EC2ModifyInstanceAttribute ec2Request = new EC2ModifyInstanceAttribute();

        String[] instanceId = request.getParameterValues("InstanceId");
        if (instanceId != null && instanceId.length > 0)
            ec2Request.setInstanceId(instanceId[0]);
        else {
            throw new EC2ServiceException(ClientError.MissingParamter, "Missing required parameter - InstanceId");
        }

        String[] instanceType = request.getParameterValues("InstanceType.Value");
        String[] userData = request.getParameterValues("UserData.Value");

        if (instanceType != null && userData != null) {
            throw new EC2ServiceException(ClientError.InvalidParameterCombination, "Only one attribute can be" + " specified at a time");
        }
        if (instanceType != null && instanceType.length > 0) {
            ec2Request.setInstanceType(instanceType[0]);
        } else if (userData != null && userData.length > 0) {
            ec2Request.setUserData(userData[0]);
        } else {
            throw new EC2ServiceException(ClientError.MissingParamter, "Missing parameter - InstanceType/UserData should be provided");
        }

        // -> execute the request
View Full Code Here

      }
      throw new EC2ServiceException(ClientError.Unsupported, "Unsupported - only instanceType supported");
  }
 
    public ModifyInstanceAttributeResponse modifyInstanceAttribute(ModifyInstanceAttribute modifyInstanceAttribute) {
        EC2ModifyInstanceAttribute request = new EC2ModifyInstanceAttribute();
        ModifyInstanceAttributeType modifyInstanceAttribute2 = modifyInstanceAttribute.getModifyInstanceAttribute();
        ModifyInstanceAttributeTypeChoice_type0 miatc_type0 = modifyInstanceAttribute2.getModifyInstanceAttributeTypeChoice_type0();

        // not going to mess with blockDeviceMappingTypes
        /*
        InstanceBlockDeviceMappingType blockDeviceMapping = miatc_type0.getBlockDeviceMapping();
        InstanceBlockDeviceMappingItemType[] mappingItemTypes = blockDeviceMapping.getItem();
         */
        // we only support instanceType and userData
        request.setInstanceId(modifyInstanceAttribute2.getInstanceId());
//        request.setDisableApiTermination(miatc_type0.getDisableApiTermination().getValue());
//        request.setInstanceInitiatedShutdownBehavior(miatc_type0.getInstanceInitiatedShutdownBehavior().toString());
        if (miatc_type0.getInstanceType() != null) {
            request.setInstanceType(miatc_type0.getInstanceType().getValue());
        }
//        request.setKernel(miatc_type0.getKernel().toString());
//        request.setRamdisk(miatc_type0.getRamdisk().toString());
        if (miatc_type0.getUserData() != null) {
            request.setUserData(miatc_type0.getUserData().getValue());
        }
        return toModifyInstanceAttributeResponse(engine.modifyInstanceAttribute(request));
    }
View Full Code Here

     * @throws Exception
     */
    private void modifyInstanceAttribute(HttpServletRequest request,
            HttpServletResponse response) throws Exception {
       
        EC2ModifyInstanceAttribute ec2request = new EC2ModifyInstanceAttribute();
        String[] instanceIds = request.getParameterValues("InstanceId");
        if (instanceIds != null && instanceIds.length > 0) {
            ec2request.setInstanceId(instanceIds[0]);
        } else {
            response.sendError(530, "Missing InstanceId parameter");
            return;
        }
        boolean supported = false;
        String[] instanceTypes = request.getParameterValues("InstanceType.Value");
        if (instanceTypes != null && instanceTypes.length > 0) {
            ec2request.setInstanceType(instanceTypes[0]);
            supported = true;
        }
        String[] userDatas = request.getParameterValues("UserData.Value");
        if (userDatas != null && userDatas.length > 0) {
            ec2request.setUserData(userDatas[0]);
            supported = true;
        }
        if (supported != true) {
            response.sendError(530, "Unsupported parameter passed to modifyInstanceAttribute!");
            return;
View Full Code Here

        }
        throw new EC2ServiceException(ClientError.Unsupported, "Unsupported - can only modify image description or launchPermission");
    }

    public ModifyInstanceAttributeResponse modifyInstanceAttribute(ModifyInstanceAttribute modifyInstanceAttribute) {
        EC2ModifyInstanceAttribute request = new EC2ModifyInstanceAttribute();

        ModifyInstanceAttributeType modifyInstanceAttribute2 = modifyInstanceAttribute.getModifyInstanceAttribute();
        ModifyInstanceAttributeTypeChoice_type0 mia = modifyInstanceAttribute2.getModifyInstanceAttributeTypeChoice_type0();

        request.setInstanceId(modifyInstanceAttribute2.getInstanceId());

        // we only support instanceType and userData
        if (mia.getInstanceType() != null) {
            request.setInstanceType(mia.getInstanceType().getValue());
        } else if (mia.getUserData() != null) {
            request.setUserData(mia.getUserData().getValue());
        } else {
            throw new EC2ServiceException(ClientError.MissingParamter, "Missing required parameter - InstanceType/UserData should be provided");
        }
        return toModifyInstanceAttributeResponse(engine.modifyInstanceAttribute(request));
    }
View Full Code Here

TOP

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

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.