コード例 #1
0
    public User GetUserByEmail(DfpUser user, string email) {
      UserService userService = (UserService) user.GetService(DfpService.v201505.UserService);

      // Create a Statement to get all users sorted by name.
      Statement statement = new Statement();
      statement.query = string.Format("where email = '{0}' LIMIT 1", email);

      UserPage page = userService.getUsersByStatement(statement);

      if (page.results != null && page.results.Length > 0) {
        return page.results[0];
      } else {
        return null;
      }
    }
コード例 #2
0
 private static bool StatementsAreEqual(Statement s1, Statement s2) {
   // Assumes both Statements are non-null and have non-null properties
   if (String.Compare(s1.query, s2.query, true) != 0) {
     return false;
   }
   if (s1.values.Length != s2.values.Length) {
     return false;
   }
   // Assumes Statement values are in the same order
   for (int i = 0; i < s1.values.Length; i++) {
     if (!StringValueMapEntriesAreEqual(s1.values[i], s2.values[i])) {
       return false;
     }
   }
   return true;
 }
コード例 #3
0
    public void TestGetPlacementsByStatement() {
      // Create a Statement to only select active placements.
      Statement statement = new Statement();
      statement.query = string.Format("WHERE id = '{0}'", placement.id);

      PlacementPage page = null;

      Assert.DoesNotThrow(delegate() {
        page = placementService.getPlacementsByStatement(statement);
      });

      Assert.NotNull(page);
      Assert.NotNull(page.results);
      Assert.AreEqual(page.results.Length, 1);

      Assert.AreEqual(page.results[0].id, placement.id);
      Assert.AreEqual(page.results[0].name, placement.name);
      Assert.AreEqual(page.results[0].description, placement.description);
      Assert.Contains(adUnit1.id, page.results[0].targetedAdUnitIds);
      Assert.Contains(adUnit2.id, page.results[0].targetedAdUnitIds);
    }
コード例 #4
0
 public virtual ContentMetadataKeyHierarchyPage getContentMetadataKeyHierarchiesByStatement(Statement filterStatement) {
   object[] results = this.Invoke("getContentMetadataKeyHierarchiesByStatement", new object[] { filterStatement });
   return ((ContentMetadataKeyHierarchyPage) (results[0]));
 }
コード例 #5
0
 public virtual CreativeSetPage getCreativeSetsByStatement(Statement statement) {
   object[] results = this.Invoke("getCreativeSetsByStatement", new object[] { statement });
   return ((CreativeSetPage) (results[0]));
 }
コード例 #6
0
 public virtual WorkflowRequestPage getWorkflowRequestsByStatement(Statement filterStatement) {
   object[] results = this.Invoke("getWorkflowRequestsByStatement", new object[] { filterStatement });
   return ((WorkflowRequestPage) (results[0]));
 }
コード例 #7
0
        public void TestPerformUserAction()
        {
            Statement statement = new Statement();
              statement.query = string.Format("WHERE id = {0}", salespersonId);

              DeactivateUsers action = new DeactivateUsers();

              UpdateResult result = null;

              Assert.DoesNotThrow(delegate() {
            result = userService.performUserAction(action, statement);
              });

              Assert.NotNull(result);
              Assert.AreEqual(result.numChanges, 1);

              // Activate the user again.

              Assert.DoesNotThrow(delegate() {
            result = userService.performUserAction(new ActivateUsers(), statement);
              });

              Assert.NotNull(result);
              Assert.AreEqual(result.numChanges, 1);
        }
コード例 #8
0
    public void TestStatementBuilderBasicStatement() {
      StatementBuilder statementBuilder = new StatementBuilder()
          .Where("ID = 1");

      Statement expectedStatement = new Statement();
      expectedStatement.query = "WHERE ID = 1";
      expectedStatement.values = new String_ValueMapEntry[0];

      Assert.True(StatementsAreEqual(expectedStatement,
                                     statementBuilder.ToStatement()));
    }
コード例 #9
0
    public void TestAllStatementBuilderPartialFunctions() {
      StatementBuilder statementBuilder = new StatementBuilder()
          .Select("Name, Id")
          .From("Geo_Target")
          .Where("Targetable = :targetable")
          .OrderBy("Id DESC")
          .Limit(StatementBuilder.SUGGESTED_PAGE_LIMIT)
          .Offset(0)
          .AddValue("targetable", true)
          .IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT)
          .RemoveLimitAndOffset();
      Assert.AreEqual(null, statementBuilder.GetOffset());

      Statement expectedStatement = new Statement();
      expectedStatement.query = "SELECT Name, Id FROM Geo_Target"
          + " WHERE Targetable = :targetable ORDER BY Id DESC";
      String_ValueMapEntry targetableEntry = new String_ValueMapEntry();
      targetableEntry.key = "targetable";
      BooleanValue targetableValue = new BooleanValue();
      targetableValue.value = true;
      targetableEntry.value = targetableValue;
      expectedStatement.values = new String_ValueMapEntry[] {targetableEntry};
      Assert.True(StatementsAreEqual(expectedStatement, statementBuilder.ToStatement()));
    }
コード例 #10
0
 public virtual UpdateResult performAdExclusionRuleAction(AdExclusionRuleAction adExclusionRuleAction, Statement filterStatement) {
   object[] results = this.Invoke("performAdExclusionRuleAction", new object[] { adExclusionRuleAction, filterStatement });
   return ((UpdateResult) (results[0]));
 }
コード例 #11
0
 public virtual SharedAdUnitPage getSharedAdUnitsByStatement(Statement filterStatement) {
   object[] results = this.Invoke("getSharedAdUnitsByStatement", new object[] { filterStatement });
   return ((SharedAdUnitPage) (results[0]));
 }
コード例 #12
0
 public virtual CreativeTemplatePage getCreativeTemplatesByStatement(Statement filterStatement) {
   object[] results = this.Invoke("getCreativeTemplatesByStatement", new object[] { filterStatement });
   return ((CreativeTemplatePage) (results[0]));
 }
コード例 #13
0
 public virtual AdExclusionRulePage getAdExclusionRulesByStatement(Statement filterStatement) {
   object[] results = this.Invoke("getAdExclusionRulesByStatement", new object[] { filterStatement });
   return ((AdExclusionRulePage) (results[0]));
 }
コード例 #14
0
 public virtual AdRulePage getAdRulesByStatement(Statement statement) {
   object[] results = this.Invoke("getAdRulesByStatement", new object[] { statement });
   return ((AdRulePage) (results[0]));
 }
コード例 #15
0
 public virtual TeamPage getTeamsByStatement(Statement filterStatement) {
   object[] results = this.Invoke("getTeamsByStatement", new object[] { filterStatement });
   return ((TeamPage) (results[0]));
 }
コード例 #16
0
 public virtual UpdateResult performWorkflowRequestAction(WorkflowRequestAction action, Statement filterStatement) {
   object[] results = this.Invoke("performWorkflowRequestAction", new object[] { action, filterStatement });
   return ((UpdateResult) (results[0]));
 }
コード例 #17
0
    public void TestPerformPlacementAction() {
      Statement statement = new Statement();
      statement.query = string.Format("WHERE status = '{0}'", InventoryStatus.ACTIVE);

      DeactivatePlacements action = new DeactivatePlacements();

      UpdateResult result = null;

      Assert.DoesNotThrow(delegate() {
        result = placementService.performPlacementAction(action, statement);
      });

      Assert.NotNull(result);
      Assert.GreaterOrEqual(result.numChanges, 0);
    }
コード例 #18
0
 public virtual UpdateResult performSharedAdUnitAction(SharedAdUnitAction sharedAdUnitAction, Statement filterStatement) {
   object[] results = this.Invoke("performSharedAdUnitAction", new object[] { sharedAdUnitAction, filterStatement });
   return ((UpdateResult) (results[0]));
 }
コード例 #19
0
    public void TestStatementBuilderBlankStatement() {
      StatementBuilder statementBuilder = new StatementBuilder();

      Statement expectedStatement = new Statement();
      expectedStatement.query = "";
      expectedStatement.values = new String_ValueMapEntry[0];

      Assert.True(StatementsAreEqual(expectedStatement,
                                     statementBuilder.ToStatement()));
    }
コード例 #20
0
    public void TestGetCompaniesByStatement() {
      Statement statement = new Statement();
      statement.query = string.Format("WHERE id = {0} ORDER BY name LIMIT 1", testCompany1.id);
      CompanyPage page = null;

      Assert.DoesNotThrow(delegate() {
        page = companyService.getCompaniesByStatement(statement);
      });

      Assert.NotNull(page);
      Assert.NotNull(page.results);
      Assert.AreEqual(page.results.Length, 1);
      Assert.NotNull(page.results[0]);
      Assert.AreEqual(page.results[0].id, testCompany1.id);
      Assert.AreEqual(page.results[0].name, testCompany1.name);
    }
コード例 #21
0
    public void TestStatementBuilderIncludesKeywordPrefix() {
      StatementBuilder statementBuilder = new StatementBuilder()
          .Where("WHEREWITHALL = 1");

      Statement expectedStatement = new Statement();
      expectedStatement.query = "WHERE WHEREWITHALL = 1";
      expectedStatement.values = new String_ValueMapEntry[0];

      Assert.True(StatementsAreEqual(expectedStatement,
        statementBuilder.ToStatement()));
    }
コード例 #22
0
    public void TestPerformAdUnitAction() {
      Statement statement = new Statement();
      statement.query = string.Format("WHERE id = '{0}' LIMIT 1", adUnit1.id);

      UpdateResult result = null;
      Assert.DoesNotThrow(delegate() {
        result = inventoryService.performAdUnitAction(new DeactivateAdUnits(), statement);
      });

      Assert.NotNull(result);
      Assert.AreEqual(result.numChanges, 1);
    }
コード例 #23
0
 public virtual LineItemCreativeAssociationPage getLineItemCreativeAssociationsByStatement(Statement filterStatement) {
   object[] results = this.Invoke("getLineItemCreativeAssociationsByStatement", new object[] { filterStatement });
   return ((LineItemCreativeAssociationPage) (results[0]));
 }
コード例 #24
0
 public virtual UpdateResult performContentMetadataKeyHierarchyAction(ContentMetadataKeyHierarchyAction contentMetadataKeyHierarchyAction, Statement filterStatement) {
   object[] results = this.Invoke("performContentMetadataKeyHierarchyAction", new object[] { contentMetadataKeyHierarchyAction, filterStatement });
   return ((UpdateResult) (results[0]));
 }
コード例 #25
0
    public void TestGetAdUnitsByStatement() {
      Statement statement = new Statement();
      statement.query = string.Format("WHERE id = '{0}' LIMIT 1", adUnit1.id);

      AdUnitPage page = null;

      Assert.DoesNotThrow(delegate() {
        page = inventoryService.getAdUnitsByStatement(statement);
      });

      Assert.NotNull(page);
      Assert.NotNull(page.results);
      Assert.AreEqual(page.totalResultSetSize, 1);
      Assert.NotNull(page.results[0]);

      Assert.AreEqual(page.results[0].name, adUnit1.name);
      Assert.AreEqual(page.results[0].parentId, adUnit1.parentId);
      Assert.AreEqual(page.results[0].id, adUnit1.id);
      Assert.AreEqual(page.results[0].status, adUnit1.status);
      Assert.AreEqual(page.results[0].targetWindow, adUnit1.targetWindow);
    }
コード例 #26
0
 public virtual UpdateResult performLineItemCreativeAssociationAction(LineItemCreativeAssociationAction lineItemCreativeAssociationAction, Statement filterStatement) {
   object[] results = this.Invoke("performLineItemCreativeAssociationAction", new object[] { lineItemCreativeAssociationAction, filterStatement });
   return ((UpdateResult) (results[0]));
 }
コード例 #27
0
        public void TestGetUsersByStatement()
        {
            Statement statement = new Statement();
              statement.query = "ORDER BY name LIMIT 500";

              UserPage page = null;

              Assert.DoesNotThrow(delegate() {
            page = userService.getUsersByStatement(statement);
              });

              Assert.NotNull(page);
              Assert.NotNull(page.results);

              List<long> salesPersonIds = new List<long>();
              List<long> traffickerIds = new List<long>();

              foreach(User tempUser in page.results) {
            if (tempUser.roleName == "Salesperson") {
              salesPersonIds.Add(tempUser.id);
            } else if (tempUser.roleName == "Trafficker") {
              traffickerIds.Add(tempUser.id);
            }
              }
              Assert.Contains(salespersonId, salesPersonIds);
              Assert.Contains(traffickerId, traffickerIds);
        }
コード例 #28
0
 public virtual ProposalLineItemPage getProposalLineItemsByStatement(Statement filterStatement) {
   object[] results = this.Invoke("getProposalLineItemsByStatement", new object[] { filterStatement });
   return ((ProposalLineItemPage) (results[0]));
 }
コード例 #29
0
        public void TestUpdateUsers()
        {
            Statement statement = new Statement();
              statement.query = String.Format("WHERE id = {0} LIMIT 1", salespersonId);
              User user = userService.getUsersByStatement(statement).results[0];
              user.preferredLocale = (user.preferredLocale == "fr_FR")? "en_US" : "fr_FR";

              User[] newUsers = null;

              Assert.DoesNotThrow(delegate() {
            newUsers = userService.updateUsers(new User[] {user});
              });

              Assert.NotNull(newUsers);
              Assert.AreEqual(newUsers.Length, 1);
              Assert.AreEqual(newUsers[0].id, user.id);
              Assert.AreEqual(newUsers[0].preferredLocale, user.preferredLocale);
        }
コード例 #30
0
 public virtual UpdateResult performProposalLineItemAction(ProposalLineItemAction proposalLineItemAction, Statement filterStatement) {
   object[] results = this.Invoke("performProposalLineItemAction", new object[] { proposalLineItemAction, filterStatement });
   return ((UpdateResult) (results[0]));
 }