Example usage for com.amazonaws.services.route53.model DelegationSet DelegationSet

List of usage examples for com.amazonaws.services.route53.model DelegationSet DelegationSet

Introduction

In this page you can find the example usage for com.amazonaws.services.route53.model DelegationSet DelegationSet.

Prototype

public DelegationSet() 

Source Link

Document

Default constructor for DelegationSet object.

Usage

From source file:com.msi.dns53.client.DNS53Client.java

License:Apache License

public CreateHostedZoneResult createHostedZone(CreateHostedZoneRequest req)
        throws AmazonServiceException, AmazonClientException {
    Client c = Client.create();/* ww  w.j  a  v a2 s . c o m*/
    WebResource r = c.resource(this.serverURL);

    String entity = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
            + "<CreateHostedZoneRequest xmlns=\"https://route53.amazonaws.com/doc/2012-02-29/\">" + "<Name>"
            + req.getName() + "</Name>" + "<CallerReference>" + req.getCallerReference() + "</CallerReference>";
    if (req.getHostedZoneConfig() != null && req.getHostedZoneConfig().getComment() != null) {
        entity += "<HostedZoneConfig>" + "<Comment>" + req.getHostedZoneConfig().getComment() + "</Comment>"
                + "</HostedZoneConfig>";
    }
    entity += "</CreateHostedZoneRequest>";

    ClientResponse response = r
            .header("X-Amzn-Authorization",
                    "AWS3 AWSAccessKeyId=" + this.accessKey + "," + "Algorithm=HmacSHA256,"
                            + "SignedHeaders=Host;X-Amz-Date," + "Signature=THISISANEXAMPLESIGNATURE=")
            .type(MediaType.APPLICATION_XML_TYPE).accept(MediaType.TEXT_XML).entity(entity)
            .post(ClientResponse.class);

    String resultXml = response.getEntity(String.class);
    if (response.getStatus() > 299 || response.getStatus() < 200) {
        exceptionMapper(response, resultXml);
    }

    CreateHostedZoneResponsePOJO interResult = null;
    try {
        StringReader reader = new StringReader(resultXml);
        JAXBContext context = JAXBContext.newInstance(CreateHostedZoneResponsePOJO.class);
        Unmarshaller unmarshaller = context.createUnmarshaller();
        interResult = (CreateHostedZoneResponsePOJO) unmarshaller.unmarshal(reader);
    } catch (JAXBException e) {
        e.printStackTrace();
        return null;
    }
    if (interResult == null) {
        return null;
    }

    CreateHostedZoneResult result = new CreateHostedZoneResult();
    if (interResult.getHostedZone() != null) {
        HostedZone hostedZone = new HostedZone();
        hostedZone.setId(interResult.getHostedZone().getId());
        hostedZone.setName(interResult.getHostedZone().getName());
        hostedZone.setCallerReference(interResult.getHostedZone().getCallerReference());
        if (interResult.getHostedZone().getConfig() != null) {
            HostedZoneConfig config = new HostedZoneConfig();
            config.setComment(interResult.getHostedZone().getConfig().getComment());
            hostedZone.setConfig(config);
        }
        result.setHostedZone(hostedZone);
    }
    if (interResult.getChangeInfo() != null) {
        ChangeInfo changeInfo = new ChangeInfo();
        changeInfo.setId(interResult.getChangeInfo().getId());
        changeInfo.setStatus(interResult.getChangeInfo().getStatus());
        changeInfo.setSubmittedAt(interResult.getChangeInfo().getSubmittedAt());
        changeInfo.setComment(interResult.getChangeInfo().getComment());
        result.setChangeInfo(changeInfo);
    }
    if (interResult.getDelegationSet() != null) {
        DelegationSet dSet = new DelegationSet();
        dSet.setNameServers(interResult.getDelegationSet().getNameServers());
        result.setDelegationSet(dSet);
    }
    return result;
}

From source file:com.msi.dns53.client.DNS53Client.java

License:Apache License

public GetHostedZoneResult getHostedZone(GetHostedZoneRequest req)
        throws AmazonServiceException, AmazonClientException {
    Client c = Client.create();/*from   w ww.  j  a v  a 2  s .c  o m*/
    WebResource r = c.resource(this.serverURL);
    ClientResponse response = r.path(req.getId()).type(MediaType.APPLICATION_XML_TYPE)
            .accept(MediaType.TEXT_XML)
            .header("X-Amzn-Authorization",
                    "AWS3 AWSAccessKeyId=" + this.accessKey + "," + "Algorithm=HmacSHA256,"
                            + "SignedHeaders=Host;X-Amz-Date," + "Signature=THISISANEXAMPLESIGNATURE=")
            .get(ClientResponse.class);

    String resultXml = response.getEntity(String.class);
    if (response.getStatus() != 200) {
        exceptionMapper(response, resultXml);
    }

    GetHostedZoneResponsePOJO interResult = null;
    try {
        StringReader reader = new StringReader(resultXml);
        JAXBContext context = JAXBContext.newInstance(GetHostedZoneResponsePOJO.class);
        Unmarshaller unmarshaller = context.createUnmarshaller();
        interResult = (GetHostedZoneResponsePOJO) unmarshaller.unmarshal(reader);
    } catch (JAXBException e) {
        e.printStackTrace();
        return null;
    }
    if (interResult == null) {
        return null;
    }

    GetHostedZoneResult result = new GetHostedZoneResult();
    if (interResult.getHostedZone() != null) {
        HostedZone hz = new HostedZone();
        hz.setCallerReference(interResult.getHostedZone().getCallerReference());
        hz.setId(interResult.getHostedZone().getId());
        hz.setName(interResult.getHostedZone().getName());
        hz.setResourceRecordSetCount(interResult.getHostedZone().getResourceRecordSetCount());
        if (interResult.getHostedZone().getConfig() != null) {
            HostedZoneConfig config = new HostedZoneConfig();
            config.setComment(interResult.getHostedZone().getConfig().getComment());
            hz.setConfig(config);
        }
        result.setHostedZone(hz);
    }
    if (interResult.getDelegationSet() != null) {
        DelegationSetPOJO ds = interResult.getDelegationSet();
        DelegationSet ds_ = new DelegationSet();
        if (ds.getNameServers() != null) {
            ds_.setNameServers(ds.getNameServers());
        }
        result.setDelegationSet(ds_);
    }
    return result;
}

From source file:com.msi.dns53.server.query.GetHostedZone.java

License:Apache License

private GetHostedZoneResult getHostedZone(Session sess, GetHostedZoneRequest request) throws ErrorResponse {
    String zoneId = request.getId();
    logger.debug("GetHosteZone target: " + zoneId);
    GetHostedZoneResult result = new GetHostedZoneResult();
    AccessMySQL sqlaccess = AccessMySQL.getInstance();
    String[] responseCont = sqlaccess.getHostedZone(zoneId);
    if (responseCont[1] == null) {
        throw DNS53Faults.NoSuchHostedZone(zoneId);
    }//from  ww  w  .ja  v  a  2 s. c  om
    HostedZone hz = new HostedZone();
    hz.setId(responseCont[0]);
    hz.setName(responseCont[1]);
    hz.setCallerReference(responseCont[2]);
    HostedZoneConfig config = new HostedZoneConfig();
    config.setComment(responseCont[3]);
    hz.setConfig(config);
    result.setHostedZone(hz);

    DelegationSet delegationSet = new DelegationSet();
    Collection<String> nameServers = new LinkedList<String>();
    List<DNS53ResourceRecord> nsRecords = sqlaccess.listResourceRecords(sess, request.getId(), null, null, "NS",
            null, -1, -1);
    for (DNS53ResourceRecord ns : nsRecords) {
        String nameserver = ns.getRdata();
        nameserver = nameserver.substring(0, nameserver.length() - 1);
        nameServers.add(nameserver);
    }
    delegationSet.setNameServers(nameServers);
    result.setDelegationSet(delegationSet);
    logger.debug("Returning the result: " + result.toString());
    return result;
}